.kirin-follow{translate:var(--kirin-x, 0px) var(--kirin-y, 0px);transition:translate .19s cubic-bezier(.2,.7,.28,1)}.kirin-pose,.kirin-breathe{display:block}.kirin-breathe{transform-origin:50% 91%;animation:kirin-breathe 4.9s ease-in-out infinite}.kirin-follow [data-part]{transform-box:fill-box}.kirin-follow [data-part=head]{rotate:var(--kirin-look, 0deg);transform-origin:50% 80%;transition:rotate .2s ease-out}.kirin-follow [data-part=pupils]{translate:var(--kirin-eye-x, 0px) var(--kirin-eye-y, 0px);transition:translate .12s ease-out}.kirin-follow [data-part=eyes]{transform-origin:center;animation:kirin-blink 7.6s 1s linear infinite}.kirin-follow [data-part=tail]{transform-origin:14% 85%;animation:kirin-tail 5.7s ease-in-out infinite}.kirin-follow [data-part=ear-left]{transform-origin:83% 76%;animation:kirin-ear 9.3s ease-in-out infinite}.kirin-follow [data-part=ear-right]{transform-origin:17% 76%;animation:kirin-ear 9.3s 3.1s ease-in-out infinite reverse}.kirin-follow [data-part=cloud]{animation:kirin-cloud 6.8s ease-in-out infinite}.greeting{opacity:0;translate:0 3px;transition:opacity .16s ease,translate .16s ease}.kirin-follow[data-greeting] .greeting{opacity:1;translate:0}.kirin-follow[data-pose=glance] [data-part=head]{animation:kirin-glance 1.55s ease-in-out both}.kirin-follow[data-pose=glance] [data-part=pupils]{animation:kirin-glance-eyes 1.55s ease-in-out both}.kirin-follow[data-pose=paw] [data-part=foreleg]{transform-origin:50% 16%;animation:kirin-paw 1.25s ease-in-out both}.kirin-follow[data-pose=stretch] .kirin-pose{transform-origin:60% 90%;animation:kirin-stretch 1.6s ease-in-out both}.kirin-follow[data-pose=nod] [data-part=head]{animation:kirin-nod .87s ease-in-out both}.kirin-follow[data-pose=hop] .kirin-pose{transform-origin:50% 93%;animation:kirin-hop 1.08s ease-in-out both}@keyframes kirin-breathe{0%,to{scale:1}50%{scale:1.012 1.02}}@keyframes kirin-blink{0%,42%,45%,78%,81%,to{scale:1}43.5%,79.5%{scale:1 .1}}@keyframes kirin-tail{0%,to{rotate:-2deg}46%{rotate:7deg}75%{rotate:1deg}}@keyframes kirin-ear{0%,71%,82%,to{rotate:0deg}75%{rotate:-6deg}78%{rotate:2deg}}@keyframes kirin-cloud{0%,to{translate:0 1px}50%{translate:7px -7px}}@keyframes kirin-glance{0%,to{rotate:var(--kirin-look, 0deg)}30%,64%{rotate:-8deg}}@keyframes kirin-glance-eyes{0%,to{translate:var(--kirin-eye-x, 0px) var(--kirin-eye-y, 0px)}23%,67%{translate:-11px -2px}}@keyframes kirin-paw{0%,to{rotate:0deg;translate:0 0}36%,70%{rotate:13deg;translate:-5px -10px}}@keyframes kirin-stretch{0%,to{scale:1}39%,62%{scale:1.075 .91;rotate:-3deg}}@keyframes kirin-nod{0%,to{rotate:var(--kirin-look, 0deg);translate:0 0}45%{rotate:6deg;translate:0 13px}}@keyframes kirin-hop{0%,to{translate:0 0;scale:1}20%,78%{translate:0 0;scale:1.055 .93}46%{translate:0 -13px;scale:.98 1.03}}.kirin-follow[data-paused] *,.kirin-follow[data-paused] .kirin-breathe{animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.kirin-follow,.kirin-follow *,.kirin-follow .kirin-breathe,.kirin-follow[data-pose] *{animation:none!important;transition:none!important}}.q-chat{--q-accent: var(--accent, #23433a);--q-paper: var(--surface, #fffefa);--q-ink: var(--ink, #202522);--q-muted: var(--muted, #626963);--q-line: var(--line, #dedfd7);color:var(--q-ink)}.q-chat [hidden]{display:none}.q-chat button,.q-chat textarea{font:inherit}.q-chat button{cursor:pointer}.q-chat button:disabled{cursor:wait}.q-chat :focus-visible{outline:2px solid var(--q-accent);outline-offset:3px}.q-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.q-composer{display:flex;align-items:flex-end;gap:.75rem;padding:.85rem .95rem;border:1px solid var(--q-line);border-radius:1.15rem;background:var(--q-paper);box-shadow:0 7px 28px #2d382a12;transition:border-color .16s,box-shadow .16s}.q-composer:focus-within{border-color:#718775;box-shadow:0 0 0 3px #4d70531a,0 7px 28px #2d382a12}.q-composer textarea{flex:1;min-width:0;min-height:3.3rem;padding:.25rem .3rem;border:0;background:none;resize:vertical;max-height:9rem;color:inherit;font-size:max(16px,1rem);line-height:1.55}.q-composer textarea:focus-visible{outline:none}.q-composer textarea::placeholder{color:var(--q-muted)}.q-send{flex:0 0 auto;display:grid;place-items:center;min-width:2.75rem;min-height:2.75rem;padding:0;border:1px solid transparent;border-radius:50%;background:var(--q-accent);color:#fff}.q-send:hover:not(:disabled){background:#30584c}.q-send:disabled{opacity:.55}.q-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem;margin:1.1rem 0 0;padding:0;list-style:none}.q-suggestions button{min-height:2.5rem;padding:.45rem .8rem;border:1px solid var(--q-line);border-radius:2rem;background:var(--q-paper);color:var(--q-accent);font-size:.83rem;line-height:1.35;text-align:left}.q-suggestions button:hover:not(:disabled){border-color:#b5c2b3;background:#eff3ea}.q-knowledge,.q-quota,.q-error,.q-local{margin:.75rem 0 0;color:var(--q-muted);font-size:.78rem;line-height:1.5}.q-knowledge{display:flex;align-items:center;justify-content:center;gap:.35rem;margin-top:1rem}.q-knowledge svg{flex:none}.q-quota{text-align:right}.q-error{color:#8d382d}.q-local{margin:0}.q-preferences{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:.25rem .7rem;margin-top:.45rem}.q-preference{display:flex;align-items:center;gap:.35rem;color:var(--q-muted);font-size:.78rem;line-height:1.5}.q-preference input{margin:0;accent-color:var(--q-accent)}.q-log{display:flex;flex-direction:column;gap:.95rem;max-height:min(48svh,30rem);margin:0 0 1rem;padding:.3rem .3rem .5rem;overflow-y:auto;overscroll-behavior:contain}.q-turn{width:fit-content;max-width:94%;padding:.75rem 1rem;border:1px solid var(--q-line);border-radius:.9rem;background:var(--q-paper);overflow-wrap:anywhere}.q-turn--user{align-self:flex-end;max-width:82%;background:#e9eee5}.q-turn-label{margin:0 0 .2rem;color:var(--q-accent);font-size:.74rem;font-weight:650}.q-turn-text{margin:0;font-size:.91rem;line-height:1.65;white-space:pre-wrap}.q-sources{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .7rem;margin:.6rem 0 0;padding-top:.5rem;border-top:1px solid var(--q-line);font-size:.76rem}.q-sources a,.q-tip a,.q-contact-link a{color:var(--q-accent);text-decoration:underline;text-underline-offset:.19em}.q-contact-link{margin:.6rem 0 0;font-size:.8rem}.q-thinking{display:flex;align-items:center;gap:.55rem;margin:0 0 .7rem .3rem;color:var(--q-muted);font-size:.8rem}.q-thought{display:flex;gap:3px}.q-thought i{width:4px;height:4px;border-radius:50%;background:currentColor;animation:q-thought 1.25s ease-in-out infinite}.q-thought i:nth-child(2){animation-delay:.13s}.q-thought i:nth-child(3){animation-delay:.26s}@keyframes q-thought{0%,65%,to{opacity:.55;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.q-chat--widget{position:fixed;z-index:20;right:max(1rem,env(safe-area-inset-right));bottom:calc(max(1rem,env(safe-area-inset-bottom)) + var(--q-keyboard-inset, 0px));--kirin-size: 7.5rem}.q-launcher{width:var(--kirin-size)}.q-chat--widget[data-open] .q-launcher{display:none}.q-toggle{display:block;width:100%;padding:0;border:0;border-radius:.8rem;background:transparent;touch-action:manipulation}.q-toggle svg{display:block;width:100%;height:auto;pointer-events:none}.q-launcher .kirin-follow[data-blink] [data-part=eyes]{animation:none;scale:1 .1}.q-greeting,.q-tip{position:absolute;right:0;width:max-content;max-width:min(17rem,calc(100vw - 2rem));padding:.7rem .9rem;border:1px solid var(--q-line);border-radius:.8rem;background:var(--q-paper);box-shadow:0 8px 24px #2d382a17;font-size:.83rem;line-height:1.55}.q-greeting{bottom:calc(100% + .55rem);display:none;pointer-events:none}.q-chat--widget[data-kirin-greeting]:not([data-open],[data-tip-visible]) .q-greeting,.q-chat--widget:not([data-open],[data-tip-visible]) .q-launcher:has(.q-toggle:focus-visible) .q-greeting{display:block}.q-chat--widget .q-panel{position:absolute;right:0;bottom:0;width:min(24rem,calc(100vw - max(1rem,env(safe-area-inset-right)) - max(1rem,env(safe-area-inset-left))));max-height:min(35rem,calc(var(--q-visible-height, 100dvh) - 6rem));display:flex;flex-direction:column;overflow:auto;overscroll-behavior:contain;padding:1rem;border:1px solid var(--q-line);border-radius:1.1rem;background:var(--q-paper);box-shadow:0 16px 55px #26342c2e}.q-chat--widget .q-panel[hidden]{display:none}.q-chat--widget .q-composer{box-shadow:none;padding:.5rem}.q-chat--widget .q-composer:focus-within{box-shadow:0 0 0 2px #4d70531f}.q-chat--widget .q-log{min-height:4rem}.q-chat--widget .q-panel>:not(.q-log){flex-shrink:0}.q-chat--widget .q-suggestions{justify-content:flex-start;gap:.35rem}.q-chat--widget .q-suggestions button{min-height:2.1rem;font-size:.76rem}.q-panel-head{display:flex;gap:.6rem;align-items:center;margin:0 0 .85rem;padding-bottom:.6rem;border-bottom:1px solid var(--q-line)}.q-panel-head h2{flex:1;margin:0;font-size:1rem;font-weight:650}.q-close{display:grid;place-items:center;width:2.25rem;height:2.25rem;padding:0;border:0;border-radius:.6rem;background:transparent;color:var(--q-muted)}.q-close:hover{background:#eff3ea;color:var(--q-accent)}.q-tip{bottom:calc(100% + .75rem)}.q-tip h2{margin:0;font-size:.9rem;font-weight:650;color:var(--q-accent)}.q-tip p{margin:.35rem 0 .5rem}.q-tip-actions{display:flex;flex-wrap:wrap;gap:.3rem .7rem;margin-top:.55rem}.q-tip-actions button{padding:.2rem 0;border:0;background:transparent;color:var(--q-muted);text-decoration:underline;text-underline-offset:.18em;font-size:.76rem}@media(max-width:38rem){.q-chat--home .q-suggestions{justify-content:flex-start}.q-chat--widget{--kirin-size: 5.25rem}.q-chat--widget .q-panel{max-height:min(33rem,calc(var(--q-visible-height, 100dvh) - 4.75rem))}}@media(prefers-reduced-motion:reduce){.q-chat .q-thought i,.q-chat .q-composer{transition:none;transform:none;animation:none}}:root{color-scheme:light;--paper: #f8f7f3;--surface: #fffefa;--ink: #202522;--muted: #626963;--accent: #23433a;--pine: var(--accent);--line: #dedfd7;--serif: "Noto Serif SC", "Songti SC", "STSong", Georgia, serif;--sans: Inter, "Segoe UI", "Microsoft YaHei", system-ui, sans-serif;--header-height: 72px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 28px)}body{margin:0;min-height:100dvh;display:flex;flex-direction:column;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.6}main{flex:1;min-width:0}main:focus{outline:none}a{color:var(--accent);text-underline-offset:.2em}button,textarea,input{font:inherit}button:not(:disabled){cursor:pointer}:focus-visible{outline:2px solid #3e7564;outline-offset:4px}img{display:block;max-width:100%}[hidden]{display:none!important}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:50;padding:.5rem 1rem;background:var(--surface);transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);background:var(--paper)}.site-header-inner{width:min(100% - 3rem,80rem);margin:auto;min-height:calc(var(--header-height) - 1px);display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:1.5rem}.site-name{color:var(--ink);text-decoration:none;font-family:var(--serif);font-weight:700;font-size:1.17rem;justify-self:start;white-space:nowrap}.site-name span{margin-left:.8rem;font:.77rem var(--sans);color:var(--muted)}.site-header nav{display:flex;align-self:stretch;gap:clamp(1rem,3vw,2.5rem)}.site-header nav a{display:grid;align-content:center;position:relative;white-space:nowrap;color:var(--muted);font-size:.91rem;text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--accent)}.site-header nav a[aria-current]:after{content:"";position:absolute;height:2px;bottom:-1px;inset-inline:0;background:var(--accent)}.locale-switch{justify-self:end;font-size:.82rem;white-space:nowrap}.locale-switch a,.locale-switch span{display:block;padding:.38rem .65rem;border:1px solid var(--line);border-radius:5px;text-decoration:none}.locale-switch span{color:var(--muted)}.site-footer{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;padding:1.3rem max(1.5rem,calc((100% - 80rem)/2));border-top:1px solid var(--line);color:var(--muted);font-size:.79rem}.site-footer a{color:inherit}.content-shell{width:min(100% - 3rem,72rem);margin-inline:auto;padding-block:clamp(3rem,7vw,6rem)}.page-heading{margin:0;font:600 clamp(2.4rem,6vw,4.1rem)/1.12 var(--serif);letter-spacing:-.035em}.secondary{color:var(--muted)}h1,h2,h3{text-wrap:balance}@media(max-width:640px){:root{--header-height: 60px}.site-header-inner{width:calc(100% - 1.5rem);gap:.65rem;grid-template-columns:minmax(0,1fr) auto auto}.site-name{font-size:.98rem}.site-name span{display:none}.site-header nav{gap:clamp(.63rem,3vw,1rem)}.site-header nav a,.locale-switch{font-size:.8rem}.locale-switch a,.locale-switch span{padding-inline:.42rem}.content-shell{width:calc(100% - 2rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
