.chat-widget{position:fixed;right:22px;bottom:22px;z-index:75;font-family:Arial,sans-serif}.chat-launcher{position:relative;margin-left:auto;width:52px;height:52px;display:grid;place-items:center;border:2px solid #20271f;border-radius:0;background:var(--forest,#0a5c36);color:#fff;box-shadow:4px 4px 0 var(--gold,#d4ad4f);cursor:pointer}.chat-launcher>span{position:absolute;top:-9px;right:-9px;min-width:22px;height:22px;padding:0 5px;display:grid;place-items:center;border:2px solid #20271f;background:var(--coral,#c95e43);color:#fff;font:700 11px/1 Arial,sans-serif}.chat-panel{width:min(380px,calc(100vw - 24px));height:min(600px,calc(100vh - 104px));margin-bottom:14px;display:flex;flex-direction:column;overflow:hidden;border:2px solid #20271f;background:#fffaf0;color:#20271f;box-shadow:7px 7px 0 rgba(15,41,27,.35)}.chat-header{display:flex;justify-content:space-between;gap:12px;padding:14px 14px 12px;background:var(--forest,#0a5c36);color:#fff}.chat-header>div{flex:1 1 auto;min-width:0}.chat-header h2{margin:0;font:700 16px/1.25 var(--tr-ui-font,"Noto Sans",Arial,sans-serif);letter-spacing:.02em}.chat-header p{margin:4px 0 0;color:#d9e8dc;font:12px/1.35 Arial,sans-serif}.chat-header button{width:32px;height:32px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;cursor:pointer}.chat-empty,.chat-state{flex:1;min-height:180px;display:grid;place-content:center;justify-items:center;gap:10px;padding:24px;text-align:center;color:#69776d;font-size:13px}.chat-empty strong,.chat-login-state strong{color:#20271f;font-size:15px}.chat-empty p,.chat-state p{max-width:270px;margin:0;line-height:1.45}.chat-primary{min-height:38px;padding:0 16px;border:2px solid #20271f;background:var(--gold,#d4ad4f);color:#20271f;font-weight:700;cursor:pointer}.chat-messages{flex:1;min-height:0;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.chat-message{max-width:84%;align-self:flex-start}.chat-message.is-user{align-self:flex-end}.chat-message>span{display:block;margin-bottom:3px;color:#69776d;font-size:10px}.chat-message.is-user>span{text-align:right}.chat-bubble{display:inline-block;max-width:100%;margin:0;padding:8px 10px 6px;border:1px solid #c9d5c8;background:#fff;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.45}.chat-message.is-user .chat-bubble{border-color:#6f9f7e;background:#e8f1e8}.chat-meta{float:right;clear:both;margin:2px 0 0 10px;color:#69776d;font-size:10px;line-height:1.2;white-space:nowrap}.chat-meta,.chat-meta button{display:inline-flex;align-items:center;gap:3px}.chat-meta button{border:0;padding:0;background:transparent;color:#9b2c21;font:700 10px Arial,sans-serif;cursor:pointer}.chat-error,.chat-maintenance{margin:0;padding:8px 12px;border-top:1px solid #e3b4aa;background:#fff0ed;color:#8f2d22;font:12px/1.4 Arial,sans-serif}.chat-compose{display:grid;grid-template-columns:1fr 42px;gap:8px;padding:10px;border-top:1px solid #d9d5c8;background:#fff}.chat-compose textarea{min-width:0;resize:none;padding:8px 9px;border:1px solid #9daa9d;border-radius:0;background:#fffaf0;color:#20271f;font:13px/1.4 Arial,sans-serif}.chat-compose button{display:grid;place-items:center;border:2px solid #20271f;background:var(--forest,#0a5c36);color:#fff;cursor:pointer}.chat-compose button:disabled{opacity:.45;cursor:not-allowed}.chat-retention{margin:0;padding:0 10px 8px;color:#69776d;font:10px/1.35 Arial,sans-serif}.chat-end{margin:0 10px 10px;border:0;background:transparent;color:#69776d;font:600 11px Arial,sans-serif;text-decoration:underline;cursor:pointer}.spin{animation:chat-spin .9s linear infinite}@keyframes chat-spin{to{transform:rotate(1turn)}}@media (max-width:700px){.chat-widget{right:16px;bottom:max(16px,env(safe-area-inset-bottom))}body:has(.reading-dock) .chat-widget{bottom:max(68px,calc(env(safe-area-inset-bottom) + 58px))}.chat-panel{width:calc(100vw - 24px);height:min(560px,calc(100dvh - 148px))}}@media (prefers-reduced-motion:reduce){.spin{animation-duration:1.8s}}html.tr-focus-mode .chat-widget{display:none}.report-backdrop{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:16px;background:rgba(17,27,20,.52)}.report-dialog{width:min(500px,100%);max-height:min(720px,calc(100vh - 32px));overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;border:2px solid #20271f;background:#fffaf0;color:#20271f;box-shadow:7px 7px 0 rgba(15,41,27,.35);font-family:Arial,sans-serif}.report-dialog>header{display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:start;gap:16px;padding:16px;background:var(--forest,#0a5c36);color:white}.report-dialog>header>div{min-width:0;width:100%}.report-dialog h2{width:100%;margin:0;font:700 18px/1.3 var(--tr-ui-font,"Noto Sans",Arial,sans-serif);letter-spacing:.02em}.report-dialog header p{margin:5px 0 0;color:#d9e8dc;font-size:13px}.report-dialog header button{width:32px;height:32px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.4);background:transparent;color:white;cursor:pointer}.report-dialog form,.report-success{padding:18px}.report-dialog label{display:grid;gap:6px;margin-top:14px;font-size:13px;font-weight:700}.report-dialog input,.report-dialog select,.report-dialog textarea{width:100%;border:1px solid #879487;border-radius:0;background:white;color:#20271f;font:14px/1.45 Arial,sans-serif}.report-dialog input,.report-dialog select{min-height:40px;padding:0 10px}.report-dialog textarea{resize:vertical;padding:10px}.report-context{margin:0;color:#627066;font-size:12px}.report-counter{margin-top:4px;color:#6f796f;font-size:11px;text-align:right}.report-error{color:#a33b2b;font-size:13px}.report-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.report-actions button,.report-success button{min-height:38px;padding:0 14px;border:1px solid #29332b;background:white;color:#29332b;cursor:pointer}.report-actions button.primary{background:var(--forest,#0a5c36);color:white}.report-actions button:disabled{opacity:.55;cursor:not-allowed}.report-success p{margin:0 0 16px;line-height:1.5}.contact-dialog{display:flex;flex-direction:column;max-height:min(820px,calc(100dvh - 32px));overflow:hidden;font-family:var(--tr-ui-font,"Noto Sans",Arial,sans-serif)}.contact-dialog>header{flex:0 0 auto}.contact-dialog-body{min-height:0;overflow-y:auto;overscroll-behavior:contain}.contact-guidance{display:grid;gap:12px;padding:18px 18px 0}.contact-guidance p{margin:0;font-size:13px;line-height:1.5}.contact-guidance strong{display:block;color:#0a5c36}.contact-helper,.contact-privacy{margin:8px 0 0;font-size:12px;line-height:1.5;color:#46534a}.contact-privacy a{color:#0a5c36;text-decoration:underline;text-underline-offset:3px}.contact-dialog :is(input,select,textarea){font-family:inherit}.contact-dialog :is(a,button,input,select,textarea):focus-visible{outline:3px solid #a65b00;outline-offset:3px}.contact-dialog>header button:focus-visible{outline-color:#ffe194}@media (max-width:700px){.report-backdrop{align-items:end;padding:0}.report-dialog{width:100%;max-height:88vh;border-width:2px 0 0;box-shadow:none}.contact-backdrop{padding:12px 12px 0}.contact-dialog{max-height:calc(100dvh - 76px);display:flex;flex-direction:column;overflow:hidden;border-width:2px 2px 0}.contact-dialog>header{flex:0 0 auto;gap:12px;padding:14px 16px}.contact-dialog h2{font-size:17px}.contact-dialog header p{font-size:12px;line-height:1.45}.contact-dialog .report-success,.contact-dialog form{padding:16px}.contact-guidance{padding:16px 16px 0}.contact-dialog label{margin-top:12px}.contact-dialog textarea{min-height:112px;max-height:28dvh}.contact-dialog .report-actions{position:sticky;bottom:0;margin:14px -16px -16px;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid #d9d5c8;background:#fffaf0}}.share-sheet-backdrop{position:fixed;inset:0;z-index:var(--layer-modal,10010);display:flex;align-items:flex-end;justify-content:center;padding:16px;background:rgba(22,41,29,.55);touch-action:none;overscroll-behavior:contain}.share-sheet{width:min(440px,100%);max-height:min(85vh,640px);overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;padding:24px;background:var(--white,#fbfaf5);border:2px solid var(--ink,#16291d);box-shadow:8px 8px 0 var(--coral,#c45b3a);color:var(--ink,#16291d)}.share-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.share-sheet-head h2{margin:0;font:700 20px/1.25 var(--tr-ui-font,"Noto Sans",Arial,sans-serif);letter-spacing:.02em;color:var(--ink,#16291d)}.share-sheet-close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:2px solid var(--ink,#16291d);background:var(--white,#fbfaf5);color:var(--ink,#16291d);cursor:pointer}.share-sheet-close:hover{background:var(--paper,#f7f4eb)}.share-sheet-lead{margin:10px 0 16px;color:#53645b;font:14px/1.55 Arial,sans-serif}.share-sheet-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.share-sheet-item{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--ink,#16291d);background:var(--paper,#f7f4eb);box-shadow:2px 2px 0 var(--gold,#d4ad4f);color:var(--ink,#16291d);font:inherit;text-align:left;cursor:pointer}.share-sheet-item:hover{background:var(--white,#fbfaf5)}.share-sheet-item-label{font-size:.92rem;font-weight:600}.share-sheet-note{margin:14px 0 0;font:13px/1.5 Arial,sans-serif}@media (min-width:640px){.share-sheet-backdrop{align-items:center}.share-sheet-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}