:root{--bg:#f5f7f3;--ink:#17231f;--muted:#66736d;--accent:#17795b;--accent-deep:#105e46;--soft:#dff2e9;--line:#dbe4df;--surface:#fbfcfa;--warn:#8b561d;--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--bg);font-family:"Noto Sans SC","Microsoft YaHei",system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,textarea{font:inherit}button{color:inherit}.ambient{position:fixed;border-radius:50%;pointer-events:none;z-index:-1;opacity:.62}.ambient-a{width:38rem;height:38rem;right:-18rem;top:-16rem;background:radial-gradient(circle,#d8eee2 0,rgba(216,238,226,0) 68%);animation:drift 14s ease-in-out infinite alternate}.ambient-b{width:30rem;height:30rem;left:-16rem;top:32rem;background:radial-gradient(circle,#e6ead7 0,rgba(230,234,215,0) 70%);animation:drift 18s ease-in-out infinite alternate-reverse}@keyframes drift{to{transform:translate3d(20px,26px,0) scale(1.05)}}
.site-header{height:76px;max-width:1120px;margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(219,228,223,.68)}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink)}.brand-mark{width:38px;height:38px;border-radius:13px;background:var(--ink);display:grid;place-items:center;box-shadow:0 10px 24px rgba(23,35,31,.12)}.brand-mark svg{width:23px;fill:none;stroke:#ecf8f1;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.brand>span:last-child{display:flex;flex-direction:column}.brand strong{font-size:15px;letter-spacing:.04em}.brand small{font-size:10px;color:var(--muted);letter-spacing:.12em;margin-top:1px}.header-actions,.live-status{display:flex;align-items:center}.header-actions{gap:12px}.tools-entry{display:inline-flex;align-items:center;text-decoration:none;color:var(--accent-deep);background:var(--soft);border:1px solid #c8e1d5;border-radius:12px;padding:9px 13px;font-size:11px;font-weight:700;transition:transform .25s var(--ease),background .25s,border-color .25s}.tools-entry:hover{transform:translateY(-2px);background:#d4ebdf;border-color:#a9cdbb}.live-status{gap:8px;font-size:12px;color:var(--muted)}.live-status i{width:7px;height:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 0 rgba(23,121,91,.3);animation:pulse 2.2s infinite}@keyframes pulse{50%{box-shadow:0 0 0 7px rgba(23,121,91,0)}}.header-new-chat{border:1px solid var(--line);background:rgba(251,252,250,.7);border-radius:11px;padding:8px 12px;font-size:11px;cursor:pointer;transition:.25s}.header-new-chat:hover{border-color:#9ab8aa;background:#fff}
.chat-main{max-width:1040px;margin:auto;padding:48px 28px 100px}.chat-start{max-width:960px;margin:auto}.reveal{opacity:0;transform:translateY(20px);animation:reveal .75s var(--ease) forwards}@keyframes reveal{to{opacity:1;transform:none}}.section-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.section-heading span{font-size:14px;font-weight:700}.section-heading small{font-size:11px;color:var(--muted)}.quick-list{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.quick-list button{border:1px solid var(--line);background:rgba(248,250,247,.78);min-width:0;border-radius:18px;padding:17px 14px;text-align:left;cursor:pointer;transition:transform .35s var(--ease),background .35s,border-color .35s,box-shadow .35s}.quick-list button:hover{transform:translateY(-4px);background:#fff;border-color:#a9c5b8;box-shadow:0 14px 30px -22px rgba(23,67,50,.4)}.quick-list button:active{transform:scale(.98)}.quick-list b,.quick-list small{display:block}.quick-list b{font-size:13px;margin-top:12px}.quick-list small{font-size:10px;color:var(--muted);margin-top:4px;white-space:nowrap}.quick-icon{width:30px;height:30px;display:block;border-radius:10px;background:var(--soft);position:relative}.quick-icon:after,.quick-icon:before{content:"";position:absolute;border:1.5px solid var(--accent)}.bed:after{width:19px;height:10px;left:6px;top:11px;border-radius:3px}.bed:before{height:17px;left:6px;top:7px}.route:after{width:15px;height:15px;border-radius:50%;left:7px;top:7px;border-style:dashed}.food:after{height:17px;left:10px;top:6px}.food:before{height:17px;right:9px;top:6px}.wifi:after{width:18px;height:12px;left:6px;top:7px;border-left:0;border-right:0;border-bottom:0;border-radius:50%}.wifi:before{width:5px;height:5px;background:var(--accent);border-radius:50%;left:12px;bottom:6px}.door:after{width:14px;height:20px;left:8px;top:5px;border-radius:7px 7px 2px 2px}
.ask-shell{position:relative;background:rgba(251,252,250,.9);border:1px solid rgba(210,221,215,.95);border-radius:26px;padding:24px;box-shadow:0 30px 80px -45px rgba(28,59,47,.34),inset 0 1px rgba(255,255,255,.8);backdrop-filter:blur(14px);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}.ask-shell-wide{margin-top:22px}.ask-shell:focus-within{transform:translateY(-3px);box-shadow:0 38px 90px -42px rgba(28,59,47,.38)}.school-field{position:relative}.school-field label{display:block;font-size:11px;color:var(--muted);font-weight:600;margin:0 0 9px 3px}.school-input-wrap{height:52px;border:1px solid var(--line);background:#f3f6f2;border-radius:15px;display:flex;align-items:center;padding:0 13px;transition:border-color .25s,background .25s}.school-input-wrap:focus-within{border-color:#89b6a4;background:#f9fbf8}.school-input-wrap svg{width:21px;fill:none;stroke:var(--accent);stroke-width:1.7}.school-input-wrap input{border:0;outline:0;background:transparent;flex:1;min-width:0;padding:0 11px;color:var(--ink);font-size:15px}.school-input-wrap input::placeholder,.question-field textarea::placeholder,.chat-composer textarea::placeholder{color:#99a49e}.school-input-wrap button{border:0;background:none;cursor:pointer;opacity:0;color:var(--muted);font-size:20px;transition:opacity .2s}.school-input-wrap button.visible{opacity:1}.suggestions{position:absolute;left:0;right:0;top:77px;background:#fdfefc;border:1px solid var(--line);border-radius:16px;padding:6px;z-index:8;box-shadow:0 18px 50px rgba(25,47,39,.14);opacity:0;transform:translateY(-8px);pointer-events:none;transition:.25s var(--ease)}.suggestions.open{opacity:1;transform:none;pointer-events:auto}.suggestions button{width:100%;border:0;background:none;text-align:left;padding:11px 12px;border-radius:11px;cursor:pointer;display:flex;justify-content:space-between}.suggestions button:hover{background:var(--soft)}.suggestions small{color:var(--muted)}.question-field{margin-top:14px;border:1px solid var(--line);border-radius:19px;background:#f8faf7;padding:17px;transition:border-color .25s}.question-field:focus-within{border-color:#89b6a4}.question-field-wide textarea{display:block;width:100%;min-height:150px;resize:vertical;border:0;outline:0;background:transparent;color:var(--ink);line-height:1.75;font-size:15px}.composer-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:10px}.send-button{border:0;border-radius:13px;background:var(--accent);color:#f5fbf8;padding:12px 17px;display:flex;align-items:center;gap:9px;font-size:13px;font-weight:700;cursor:pointer;transition:transform .3s var(--ease),background .3s,opacity .3s;box-shadow:0 8px 20px rgba(23,121,91,.2)}.send-button svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.8}.send-button:hover:not(:disabled){transform:translateY(-2px);background:var(--accent-deep)}.send-button:active:not(:disabled){transform:scale(.97)}.send-button:disabled{opacity:.38;cursor:not-allowed}.privacy-note{font-size:10px;color:#849089;display:flex;align-items:center;gap:6px}.privacy-note svg{width:14px;fill:none;stroke:currentColor;stroke-width:1.7}
.answer-section{display:none;max-width:900px;margin:18px auto 0;opacity:0;transform:translateY(18px)}.answer-section.active{display:block;animation:answerIn .55s var(--ease) forwards}@keyframes answerIn{to{opacity:1;transform:none}}.conversation-header{position:sticky;top:0;z-index:5;background:rgba(245,247,243,.88);backdrop-filter:blur(14px);display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding:15px 0 14px}.answer-kicker{font-size:10px;color:var(--accent);font-weight:700;letter-spacing:.1em}.answer-header h2{font-size:18px;margin:4px 0 0;letter-spacing:-.02em}.answer-header button{border:0;background:none;color:var(--muted);font-size:11px;cursor:pointer}.chat-thread{display:grid;gap:18px;padding:30px 0 12px;min-height:260px}.chat-message{max-width:82%;padding:16px 18px;border-radius:19px;font-size:14px;line-height:1.85;white-space:pre-wrap;animation:messageIn .42s var(--ease) both}.chat-message.user{justify-self:end;background:var(--ink);color:#f5f8f6;border-bottom-right-radius:5px}.chat-message.assistant{justify-self:start;background:#e7efea;color:#293630;border-bottom-left-radius:5px}.chat-message small{display:block;margin-top:8px;font-size:9px;opacity:.62}.thinking{min-height:180px;display:flex;align-items:center;justify-content:center;gap:22px}.thinking-orbit{width:48px;height:48px;position:relative;animation:rotate 2.8s linear infinite}.thinking-orbit i{position:absolute;width:8px;height:8px;background:var(--accent);border-radius:50%}.thinking-orbit i:nth-child(1){top:0;left:20px}.thinking-orbit i:nth-child(2){right:2px;bottom:8px;opacity:.65}.thinking-orbit i:nth-child(3){left:2px;bottom:8px;opacity:.3}@keyframes rotate{to{transform:rotate(360deg)}}.thinking p{display:flex;flex-direction:column}.thinking strong{font-size:14px}.thinking span{font-size:11px;color:var(--muted);margin-top:5px}.answer-card{display:none}.evidence-wrap{display:none;border-top:1px solid var(--line)}.evidence-wrap.visible{display:block}.evidence-toggle{width:100%;border:0;background:none;padding:16px 0;display:flex;align-items:center;gap:10px;cursor:pointer;text-align:left}.evidence-toggle span{font-size:12px;font-weight:600}.evidence-toggle b{font-size:10px;background:#e6ebe8;padding:3px 7px;border-radius:99px}.evidence-toggle svg{width:17px;margin-left:auto;fill:none;stroke:var(--muted);stroke-width:1.8;transition:transform .3s}.evidence-wrap.open .evidence-toggle svg{transform:rotate(180deg)}.evidence-list{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}.evidence-list>div{overflow:hidden}.evidence-wrap.open .evidence-list{grid-template-rows:1fr}.evidence-inner{display:grid;gap:10px;padding-bottom:18px}.evidence-item{padding:14px 16px;background:#edf2ee;border-radius:14px;font-size:12px;line-height:1.7;color:#4d5b54}.evidence-item header{display:flex;justify-content:space-between;margin-bottom:4px;color:var(--accent-deep);font-size:10px;font-weight:700}.evidence-item.verified{background:#dff2e9;border:1px solid #b9dccc}.evidence-item.verified header span:first-child{display:inline-flex;background:#17795b;color:#fff;border-radius:99px;padding:3px 7px}.chat-composer{display:none;align-items:end;gap:10px;position:sticky;bottom:14px;z-index:6;margin:20px 0 8px;padding:10px 10px 10px 16px;background:rgba(251,252,250,.94);border:1px solid var(--line);border-radius:20px;box-shadow:0 18px 45px rgba(25,47,39,.15);backdrop-filter:blur(16px)}.chat-composer.visible{display:flex;animation:messageIn .38s var(--ease)}.chat-composer textarea{flex:1;min-height:42px;max-height:160px;resize:none;border:0;outline:0;background:transparent;padding:10px 0;line-height:1.55;color:var(--ink);font-size:14px}.chat-composer button{width:43px;height:43px;border:0;border-radius:13px;background:var(--accent);color:white;display:grid;place-items:center;cursor:pointer;transition:transform .25s var(--ease),opacity .25s}.chat-composer button:active{transform:scale(.93)}.chat-composer button:disabled{opacity:.4}.chat-composer svg{width:18px;fill:none;stroke:currentColor;stroke-width:1.8}@keyframes messageIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:var(--ink);color:#f1f6f3;border-radius:12px;padding:11px 16px;font-size:12px;opacity:0;pointer-events:none;transition:.35s var(--ease);z-index:10}.toast.show{opacity:1;transform:translate(-50%,0)}footer{border-top:1px solid var(--line);padding:28px 24px 38px;text-align:center;color:var(--muted);font-size:11px}footer p{margin:0 0 5px;color:#4e5d56}
.public-source-card{display:none;margin:18px 0 6px;padding:15px 17px;border:1px solid #cfe0d6;border-radius:15px;background:#f8fcf9}.public-source-card.visible{display:block}.public-source-card.checking{color:rgba(23,35,31,.43);font-size:12px}.public-search-process{display:inline-block;letter-spacing:.015em}.public-source-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.public-source-head span{font-size:12px;font-weight:700;color:var(--accent-deep)}.public-source-head small{font-size:10px;color:var(--muted)}.public-source-list{display:grid;gap:8px}.public-source-list a{font-size:12px;line-height:1.55;color:var(--accent-deep);text-decoration:none}.public-source-list a:hover{text-decoration:underline}
body.in-conversation .chat-start{display:none}.header-new-chat{display:none}body.in-conversation .header-new-chat{display:block}
@media(max-width:760px){.site-header{height:66px;padding:0 17px}.live-status span{display:none}.chat-main{padding:28px 16px 75px}.quick-heading{align-items:flex-start;flex-direction:column;gap:3px}.quick-list{display:flex;overflow-x:auto;margin:0 -16px;padding:0 16px 12px;scrollbar-width:none}.quick-list::-webkit-scrollbar{display:none}.quick-list button{min-width:145px}.ask-shell{padding:16px;border-radius:21px;margin-top:15px}.question-field-wide textarea{min-height:180px}.composer-footer{align-items:flex-end}.privacy-note{max-width:170px}.answer-section{margin-top:0}.conversation-header{top:0}.chat-message{max-width:91%;font-size:13px}.chat-thread{padding-top:22px}.brand small{display:none}}
@media(max-width:420px){.header-actions{gap:8px}.header-new-chat{padding:7px 9px}.question-field-wide textarea{min-height:210px}.send-button span{display:none}.send-button{width:43px;height:43px;padding:0;justify-content:center}.privacy-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}
