.chat-launcher{position:fixed;right:28px;bottom:25px;z-index:15;display:flex;align-items:center;gap:10px;padding:14px 21px;border:0;border-radius:50px;background:var(--orange);color:white;box-shadow:0 7px 24px #bd570936;font-size:15px;font-weight:600}.chat-launcher svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.chat-launcher:hover{background:#d95e0b}.chat-open{overflow:hidden}.chat-dialog{position:fixed;inset:auto 26px 22px auto;width:420px;max-width:calc(100vw - 32px);height:min(760px,calc(100dvh - 44px));max-height:none;padding:0;margin:0;border:1px solid #efdfd3;border-radius:24px;background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #47331a30;overflow:hidden}.chat-dialog::backdrop{background:#32281f30;backdrop-filter:blur(2px)}.chat-shell{height:100%;display:flex;flex-direction:column}.chat-header{padding:22px 21px 18px;display:flex;align-items:center;gap:12px;background:#fff1e6;border-bottom:1px solid #f0ddcf;flex-shrink:0}.chat-avatar{width:42px;height:42px;background:var(--orange);color:white;border-radius:15px;display:grid;place-items:center}.chat-avatar svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.chat-heading{flex:1}.chat-heading h2{font-size:19px;font-weight:600}.chat-heading p{font-size:11px;color:#92755f;margin-top:5px}.chat-close{border:0;background:transparent;font-size:26px;font-weight:300;color:#937b6a;padding:5px 8px;border-radius:9px;line-height:1}.chat-context{padding:12px 21px;font-size:11px;color:#937b6a;border-bottom:1px solid #f2e7df;flex-shrink:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chat-scroll{flex:1;min-height:0;overflow:auto;padding:22px 20px 10px;overscroll-behavior:contain;scrollbar-width:thin}.chat-intro{margin:6px 0 22px}.chat-intro>span{font-size:30px;color:var(--orange);display:block;line-height:1;margin-bottom:19px}.chat-intro h3{font-size:23px;line-height:1.55;font-weight:600;margin-bottom:10px}.chat-intro p{color:var(--muted);font-size:14px;line-height:1.9}.chat-suggestions{display:flex;flex-direction:column;gap:9px;margin-bottom:24px}.chat-suggestions button{text-align:left;border:1px solid var(--line);border-radius:12px;background:white;padding:13px 16px;font-size:14px;line-height:1.5}.chat-suggestions button:after{content:'↗';float:right;color:var(--orange)}.chat-notice{background:var(--orange-soft);padding:12px 14px;font-size:12px;line-height:1.8;color:var(--orange-dark);border-radius:12px;margin-bottom:15px}.chat-messages{display:contents}.chat-user-message{display:flex;justify-content:flex-end;margin:0 0 22px 28px}.chat-user-message p{background:#fce7d5;color:#784725;border-radius:17px 17px 4px 17px;padding:12px 16px;line-height:1.8;font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere}.chat-assistant-message{margin-bottom:28px;min-width:0}.chat-speaker{display:block;font-size:10px;font-weight:600;color:var(--orange-dark);letter-spacing:.5px;margin-bottom:10px}.chat-answer{font-size:15px;line-height:1.95;white-space:pre-wrap;overflow-wrap:anywhere}.chat-turn-state{font-size:10px;color:#9c8d80;line-height:1.8;margin-top:12px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}.chat-turn-state button{border:1px solid var(--line);border-radius:7px;background:white;color:var(--orange-dark);padding:4px 8px;font-size:11px}.chat-compose{padding:12px 18px max(17px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffdfa;flex-shrink:0}.chat-tools{display:flex;justify-content:space-between;align-items:center;margin:0 0 9px;font-size:10px;color:#a09287}.chat-tools button{border:0;background:transparent;color:#9a8678;font-size:11px;padding:3px 0}.chat-tools button:disabled{opacity:.45}.chat-input-row{display:flex;align-items:flex-end;gap:8px;background:#fff;border:1px solid #e5d2c3;border-radius:15px;padding:9px 9px 9px 13px}.chat-input-row:focus-within{border-color:var(--orange);box-shadow:0 0 0 2px #f9b98722}.chat-input-row textarea{flex:1;min-width:0;resize:none;border:0;outline:0;background:transparent;font:inherit;font-size:14px;line-height:1.65;color:var(--ink);max-height:116px;min-height:27px;padding:3px 0}.chat-input-row textarea::placeholder{color:#b1a297}.chat-input-row button{width:36px;height:36px;flex-shrink:0;border:0;border-radius:11px;background:var(--orange);color:white;display:grid;place-items:center}.chat-input-row button:disabled{opacity:.35;cursor:default}.chat-input-row svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.chat-stop-icon{width:12px;height:12px;border-radius:2px;background:white}.chat-footnote{font-size:10px;line-height:1.6;color:#a09287;margin-top:10px;text-align:center}.knowledge-entry{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 21px;border:1px solid var(--line);border-radius:15px;background:#fff9f2;font-size:14px;color:var(--orange-dark)}.knowledge-entry small{display:block;margin-top:4px;font-size:11px;color:var(--muted)}.directory{max-width:850px;padding:26px 36px 45px;margin:auto}.directory-heading{padding:18px 0 26px}.directory-heading h1{font-size:30px;line-height:1.6;margin-bottom:10px}.directory-heading>p{font-size:14px;color:var(--muted);line-height:1.8}.directory-summary{display:flex;gap:10px;align-items:center;margin-top:19px;font-size:11px;color:#9b7d67}.directory-summary span{background:var(--orange-soft);padding:6px 11px;border-radius:20px}.tree-groups{display:grid;gap:14px}.tree-group{background:white;border:1px solid var(--line);border-radius:18px;overflow:hidden}.tree-group summary{list-style:none;display:flex;align-items:center;gap:15px;padding:23px;cursor:pointer}.tree-group summary::-webkit-details-marker{display:none}.tree-number{font-size:12px;letter-spacing:1px;color:var(--orange);background:var(--orange-soft);height:37px;width:37px;flex-shrink:0;display:grid;place-items:center;border-radius:11px}.tree-title{flex:1}.tree-title strong{font-size:18px;line-height:1.6;font-weight:600}.tree-title small{display:block;font-size:11px;color:var(--muted);margin-top:4px;line-height:1.7}.tree-chevron{color:var(--orange);font-size:18px;transition:transform .2s}.tree-group[open] .tree-chevron{transform:rotate(180deg)}.tree-items{padding:0 23px 8px 75px}.tree-item{display:flex;width:100%;text-align:left;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;background:transparent;border:0;border-top:1px solid #f3e9e1;font-size:15px;line-height:1.8}.tree-item span:first-child{flex:1}.tree-item .tree-badge{flex-shrink:0;color:var(--orange-dark);font-size:10px;white-space:nowrap}.tree-item.planned .tree-badge{color:#aaa096}.tree-item.planned{color:#8c7c70}.tree-item:hover span:first-child{color:var(--orange-dark)}.tree-item:hover .tree-badge{color:var(--orange-dark)}.directory-note{font-size:11px;line-height:1.8;color:#9b8b7d;text-align:center;margin-top:23px}.directory-inline-link{display:block;width:fit-content;margin:8px auto 0;color:var(--orange-dark);font-size:12px;padding:7px}.site-footer{padding-bottom:95px}
.chat-availability{font-size:11px;color:var(--orange-dark);line-height:1.6;padding:0 0 9px}
@media(max-width:600px){.chat-launcher{right:18px;bottom:calc(17px + env(safe-area-inset-bottom));padding:13px 19px;font-size:14px}.chat-dialog{inset:var(--chat-top,0px) 0 0;width:100%;height:var(--chat-height,100dvh);max-width:none;max-height:none;border:0;border-radius:0}.chat-header{padding:18px 20px 16px}.chat-context{padding:11px 20px}.chat-scroll{padding:21px 20px 10px}.chat-compose{padding-left:16px;padding-right:16px}.chat-intro h3{font-size:24px}.chat-answer{font-size:16px;line-height:1.95}.chat-user-message p{font-size:16px}.directory{padding:17px 20px 34px}.directory-heading{padding-top:18px}.directory-heading h1{font-size:27px}.directory-heading>p{font-size:13px}.tree-group summary{padding:20px 17px;gap:12px}.tree-number{width:32px;height:32px;font-size:11px;border-radius:9px}.tree-title strong{font-size:17px}.tree-title small{font-size:10px}.tree-items{padding:0 18px 7px 18px}.tree-item{font-size:15px;padding:15px 0}.knowledge-entry{padding:17px 19px;font-size:14px}.site-footer{padding-bottom:92px}}
