/* Generated by tools/staff_chat_css.py from frontend/app/client.css. Do not edit: change the client chat styles and run the tool. */
#staff-assistant .plain { min-height: 40px; padding: 8px 12px; border: 0; border-radius: 8px; background: none; color: var(--green); font-size: 15px; font-weight: 600; transition: background .15s; }
#staff-assistant .plain:hover { background: var(--green-tint); }
#staff-assistant .side-tool, #staff-assistant .side-opener { flex: none; display: inline-grid; place-items: center; width: 38px; height: 38px; padding: 0; border: 0; border-radius: 10px; background: none; color: var(--muted); font-size: 24px; line-height: 1; transition: background .15s, color .15s; }
#staff-assistant .side-tool:hover, #staff-assistant .side-opener:hover { background: var(--background); color: var(--ink); }
#staff-assistant .side-new { flex: none; display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; margin: 2px 0 10px; border: 1px solid var(--green); border-radius: 10px; background: #fff; color: var(--green-dark); font-size: 15px; font-weight: 600; transition: background .15s; }
#staff-assistant .side-new:hover { background: var(--green-tint); }
#staff-assistant .side-recent { flex: 1; min-height: 0; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); overflow-y: auto; scrollbar-width: thin; }
#staff-assistant .side-recent h2 { flex: none; padding: 0 12px 6px; color: var(--muted); font: 700 11.5px var(--sans); letter-spacing: .09em; text-transform: uppercase; }
#staff-assistant .side-month { padding: 12px 12px 4px; color: var(--muted); font-size: 12px; font-weight: 600; }
#staff-assistant .side-chat { display: block; width: 100%; min-height: 36px; padding: 7px 12px; border: 0; border-radius: 9px; background: none; color: var(--body); font-size: 14.5px; text-align: left; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; transition: background .15s; }
#staff-assistant .side-chat:hover { background: var(--background); color: var(--ink); }
#staff-assistant .side-chat[aria-current="true"] { background: #eaeff5; color: var(--ink); font-weight: 600; }
#staff-assistant .side-recent .empty { padding: 4px 12px; font-size: 13.5px; text-align: left; }
#staff-assistant .side-recent .small { flex: none; padding: 10px 12px 0; font-size: 12px; line-height: 1.45; }
#staff-assistant .side-status { flex: none; padding: 6px 12px 0; color: var(--green-dark); font-size: 12.5px; font-weight: 600; }
#staff-assistant .side-status:empty { display: none; }
#staff-assistant .side-status.problem { color: var(--red); }
#staff-assistant .side-all { flex: none; padding: 4px 4px 0; color: var(--ink); font-size: 13px; }
#staff-assistant .side-all:empty { display: none; }
#staff-assistant .side-all span { display: block; padding: 4px 8px; }
#staff-assistant .side-all .plain { min-height: 32px; padding: 4px 8px; font-size: 13px; }
#staff-assistant .side-all .risky { color: var(--red); }
#staff-assistant .side-all .risky:hover { background: var(--red-tint); }
#staff-assistant .status { flex: none; display: inline-flex; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 20px; background: #eef1f5; color: #54637a; font-size: 12.5px; font-weight: 600; white-space: nowrap; }
#staff-assistant .status::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
#staff-assistant .status.ok { background: var(--green-tint); color: var(--green-dark); }
#staff-assistant .status.warn { background: var(--amber-tint); color: var(--amber); }
#staff-assistant .status.bad { background: var(--red-tint); color: var(--red); }
#staff-assistant .status.info { background: var(--blue-tint); color: var(--blue); }
#staff-assistant .as-shell { position: relative; flex: 1; min-width: 0; min-height: 0; display: flex; flex-direction: column; background: #fff; overflow: hidden; }
#staff-assistant .as-shell.dragging::after { content: "Drop a PNG or JPEG picture to attach it"; position: absolute; inset: 8px; z-index: 6; display: grid; place-items: center; border: 2px dashed var(--green); border-radius: 12px; background: #e6f4f0e6; color: var(--green-dark); font-weight: 600; pointer-events: none; }
#staff-assistant .as-bar { position: relative; flex: none; display: flex; align-items: center; gap: 10px; min-height: 57px; padding: 8px 14px 8px 18px; border-bottom: 1px solid var(--line); }
#staff-assistant .as-title { position: relative; flex: 1; display: flex; align-items: center; gap: 2px; min-width: 0; }
#staff-assistant .as-title h2 { min-width: 0; outline: 0; font-size: 16.5px; font-weight: 650; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#staff-assistant .as-title .as-icon { width: 36px; height: 36px; }
#staff-assistant .as-mark { flex: none; display: inline-grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: var(--navy); color: #fff; font: 700 12px var(--display); letter-spacing: -.02em; }
#staff-assistant .as-bar-actions { flex: none; display: flex; align-items: center; gap: 2px; }
#staff-assistant .as-bar-actions .plain { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 6px 10px; font-size: 14px; white-space: nowrap; }
#staff-assistant .as-off { margin: 16px; }
#staff-assistant .as-scroll { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 22px 18px 18px; }
#staff-assistant .as-col, #staff-assistant .as-composer, #staff-assistant .as-consent, #staff-assistant .as-notice, #staff-assistant .as-hint, #staff-assistant .as-legal { width: 100%; max-width: 760px; margin-left: auto; margin-right: auto; }
#staff-assistant .as-empty { padding: min(4vh, 36px) 0 8px; }
#staff-assistant .as-empty h3 { font-size: 24px; font-weight: 650; letter-spacing: -.02em; }
#staff-assistant .as-empty > p { max-width: 62ch; margin-top: 8px; font-size: 15.5px; }
#staff-assistant .as-starters { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 22px; }
#staff-assistant .as-starter { padding: 13px 15px; border: 1px solid var(--line); border-radius: 12px; background: #fff; text-align: left; transition: border-color .15s, background .15s, transform .1s; }
#staff-assistant .as-starter:hover { border-color: var(--green); background: var(--green-tint); }
#staff-assistant .as-starter:active { transform: translateY(1px); }
#staff-assistant .as-starter strong { display: block; color: var(--ink); font-size: 15px; font-weight: 600; line-height: 1.4; }
#staff-assistant .as-starter small { margin-top: 4px; font-size: 12.5px; }
#staff-assistant .as-log { display: flex; flex-direction: column; gap: 24px; }
#staff-assistant .as-msg.fresh { animation: rise .2s ease-out; }
#staff-assistant .as-msg.user { align-self: flex-end; max-width: min(84%, 560px); }
#staff-assistant .as-said { padding: 10px 15px; border-radius: 18px 18px 4px 18px; background: #eaeff5; overflow-wrap: anywhere; }
#staff-assistant .as-said p { color: var(--ink); font-size: 15.5px; line-height: 1.55; }
#staff-assistant .as-said img { display: block; width: 72px; height: 72px; margin-bottom: 8px; border-radius: 10px; object-fit: cover; border: 1px solid #cfd7e1; background: #fff; }
#staff-assistant .as-said small { margin-top: 6px; font-size: 12px; }
#staff-assistant .as-msg.assistant { min-width: 0; }
#staff-assistant .as-who { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; color: var(--muted); font-size: 13px; font-weight: 600; }
#staff-assistant .as-answer { color: var(--body); font-size: 16px; line-height: 1.68; overflow-wrap: anywhere; }
#staff-assistant .as-answer > :first-child { margin-top: 0; }
#staff-assistant .as-answer p { margin-top: 12px; color: var(--body); }
#staff-assistant .as-answer strong { color: var(--ink); font-weight: 650; }
#staff-assistant .as-answer em { font-style: italic; }
#staff-assistant .as-answer h3 { margin-top: 22px; font-size: 17.5px; font-weight: 650; }
#staff-assistant .as-answer h4 { margin: 18px 0 0; color: var(--ink); font: 650 15.5px var(--display); }
#staff-assistant .as-answer h3 + p, #staff-assistant .as-answer h4 + p { margin-top: 6px; }
#staff-assistant .as-answer ul, #staff-assistant .as-answer ol { margin: 10px 0 0; padding-left: 24px; }
#staff-assistant .as-answer li { margin-top: 6px; padding-left: 2px; }
#staff-assistant .as-answer li::marker { color: var(--muted); font-variant-numeric: tabular-nums; }
#staff-assistant .as-answer li > ul, #staff-assistant .as-answer li > ol { margin-top: 4px; }
#staff-assistant .as-answer hr { margin: 20px 0 0; border: 0; border-top: 1px solid var(--line); }
#staff-assistant .as-answer blockquote { margin: 12px 0 0; padding: 2px 0 2px 14px; border-left: 3px solid var(--line); color: var(--muted); }
#staff-assistant .as-general { margin-top: 16px; padding: 12px 16px 14px; border: 1px solid #ead9b0; border-left: 3px solid var(--gold); border-radius: 0 12px 12px 0; background: #fbf8f1; }
#staff-assistant .as-general + p, #staff-assistant .as-general + h3, #staff-assistant .as-general + h4, #staff-assistant .as-general + ul, #staff-assistant .as-general + ol, #staff-assistant .as-general + .as-table { margin-top: 16px; }
#staff-assistant .as-general > h4 { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--amber); font: 700 12.5px var(--sans, inherit); letter-spacing: .07em; text-transform: uppercase; }
#staff-assistant .as-general > h4 svg { flex: none; }
#staff-assistant .as-answer .as-general-note { margin-top: 6px; padding-bottom: 10px; border-bottom: 1px solid #ead9b0; color: var(--muted); font-size: 13.5px; line-height: 1.5; }
#staff-assistant .as-term { color: var(--ink); font-weight: 600; }
#staff-assistant .as-table { max-width: 100%; margin-top: 14px; border: 1px solid var(--line); border-radius: 12px; overflow-x: auto; -webkit-overflow-scrolling: touch; }
#staff-assistant .as-table table { width: 100%; border-collapse: collapse; font-size: 14.5px; line-height: 1.45; font-variant-numeric: tabular-nums; }
#staff-assistant .as-table th { padding: 9px 14px; border-bottom: 1px solid var(--line); background: #f8fafc; color: var(--muted); font-size: 12.5px; font-weight: 700; letter-spacing: .02em; text-align: left; white-space: nowrap; }
#staff-assistant .as-table td { min-width: 92px; padding: 10px 14px; border-bottom: 1px solid var(--line); color: var(--body); vertical-align: top; overflow-wrap: normal; }
#staff-assistant .as-table tr:last-child td { border-bottom: 0; }
#staff-assistant .as-table .right { text-align: right; white-space: nowrap; }
#staff-assistant .as-table .center { text-align: center; }
#staff-assistant .as-sources { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 16px; }
#staff-assistant .as-pill { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; min-height: 32px; padding: 4px 12px 4px 5px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: var(--body); font-size: 13px; font-weight: 600; line-height: 1.2; transition: border-color .15s, background .15s; }
#staff-assistant .as-pill:hover, #staff-assistant .as-pill[aria-expanded="true"] { border-color: #9fcfc2; background: var(--green-tint); color: var(--ink); }
#staff-assistant .as-pill > span:nth-child(2) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#staff-assistant .as-pill b { color: var(--muted); font-weight: 600; }
#staff-assistant .as-pill-icons { flex: none; display: inline-flex; }
#staff-assistant .as-pill-icons i, #staff-assistant .as-card-head > i { display: inline-grid; place-items: center; width: 22px; height: 22px; border: 1.5px solid #fff; border-radius: 50%; background: #eef1f5; color: #54637a; }
#staff-assistant .as-pill-icons i + i { margin-left: -7px; }
#staff-assistant i.k-document { background: var(--blue-tint); color: var(--blue); }
#staff-assistant i.k-estimate, #staff-assistant i.k-firm_record, #staff-assistant i.k-calendar, #staff-assistant i.k-requests { background: var(--green-tint); color: var(--green-dark); }
#staff-assistant i.k-engine, #staff-assistant i.k-general { background: var(--amber-tint); color: var(--amber); }
#staff-assistant i.k-rules { background: var(--green-tint); color: var(--green-dark); }
#staff-assistant .as-looked { min-height: 32px; padding: 4px 8px; border: 0; border-radius: 8px; background: none; color: var(--muted); font-size: 13px; font-weight: 600; text-decoration: underline dotted; text-underline-offset: 3px; }
#staff-assistant .as-looked:hover { background: var(--background); color: var(--ink); }
#staff-assistant .as-trail { margin: 10px 0 0; padding: 12px 14px; border-radius: 12px; background: var(--background); list-style: none; font-size: 13.5px; line-height: 1.5; }
#staff-assistant .as-trail li { display: flex; gap: 10px; color: var(--body); }
#staff-assistant .as-trail li + li { margin-top: 8px; }
#staff-assistant .as-step-icon { flex: none; display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #fff; color: var(--muted); }
#staff-assistant .as-found { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 5px; }
#staff-assistant .as-found em { display: inline-flex; align-items: baseline; gap: 6px; padding: 2px 9px; border-radius: 999px; background: #fff; color: var(--muted); font-style: normal; font-size: 12.5px; overflow-wrap: anywhere; }
#staff-assistant .as-found em.used { color: var(--green-dark); box-shadow: inset 0 0 0 1px #bfe0d6; }
#staff-assistant .as-found small { display: inline; font-size: 11.5px; color: inherit; opacity: .8; }
#staff-assistant .as-card { position: absolute; z-index: 5; width: 372px; max-width: calc(100% - 16px); max-height: calc(100% - 16px); overflow-y: auto; padding: 14px 16px 12px; border: 1px solid var(--line); border-radius: 14px; background: #fff; box-shadow: 0 14px 44px #0f1b2d29, 0 2px 6px #0f1b2d14; font-size: 14px; animation: pop .14s ease-out; }
#staff-assistant .as-card:focus { outline: 0; }
#staff-assistant .as-card.pinned { border-color: #9fcfc2; }
#staff-assistant .as-card-head { display: flex; align-items: flex-start; gap: 10px; }
#staff-assistant .as-card-head > i { flex: none; width: 28px; height: 28px; border: 0; }
#staff-assistant .as-card-head > div { flex: 1; min-width: 0; }
#staff-assistant .as-card-head strong { display: block; color: var(--ink); font-size: 14.5px; font-weight: 650; line-height: 1.35; overflow-wrap: anywhere; }
#staff-assistant .as-card-head small { font-size: 12.5px; }
#staff-assistant .as-card-period { flex: none; padding: 2px 8px; border-radius: 6px; background: var(--background); color: var(--body); font-size: 12px; font-weight: 600; white-space: nowrap; }
#staff-assistant .as-card-close { flex: none; width: 28px; height: 28px; margin: -4px -6px 0 0; border: 0; border-radius: 8px; background: none; color: var(--muted); font-size: 20px; line-height: 1; }
#staff-assistant .as-card-close:hover { background: var(--background); color: var(--ink); }
#staff-assistant .as-card-label { margin-top: 12px; color: var(--muted); font-size: 11.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
#staff-assistant .as-card blockquote { margin: 6px 0 0; padding: 9px 12px; border-left: 3px solid var(--gold); border-radius: 0 8px 8px 0; background: #fbf8f1; color: var(--ink); font-size: 14px; line-height: 1.55; overflow-wrap: anywhere; }
#staff-assistant .as-card blockquote cite { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; font-style: normal; }
#staff-assistant .as-card blockquote:only-of-type cite { display: none; }
#staff-assistant .as-card-none { margin-top: 12px; color: var(--body); font-size: 14px; line-height: 1.55; }
#staff-assistant .as-card-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; margin-top: 12px; color: var(--muted); font-size: 12.5px; }
#staff-assistant .as-card-meta .status { white-space: normal; }
#staff-assistant .as-card-open { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; margin-top: 10px; padding: 5px 12px; border: 1px solid #cfd7e1; border-radius: 9px; background: #fff; color: var(--green-dark); font-size: 13.5px; font-weight: 600; text-decoration: none; }
#staff-assistant .as-card-open:hover { border-color: var(--green); background: var(--green-tint); }
#staff-assistant .as-card-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 30px; margin-top: 12px; padding-top: 8px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12.5px; font-weight: 600; }
#staff-assistant .as-pager { display: inline-flex; align-items: center; gap: 4px; font-variant-numeric: tabular-nums; }
#staff-assistant .as-pager button { width: 30px; height: 30px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: var(--ink); font-size: 16px; line-height: 1; }
#staff-assistant .as-pager button:hover { border-color: var(--green); background: var(--green-tint); }
#staff-assistant .as-pager span { min-width: 40px; text-align: center; }
#staff-assistant .as-remember, #staff-assistant .as-next { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 14px; padding: 10px 14px; border: 1px solid #ead9b0; border-radius: 12px; background: #fffaf0; color: var(--amber); font-size: 14px; }
#staff-assistant .as-next { border-color: #cddcf2; background: var(--blue-tint); color: var(--blue); }
#staff-assistant .as-remember > svg, #staff-assistant .as-next > svg { flex: none; }
#staff-assistant .as-remember p, #staff-assistant .as-next p { flex: 1 1 220px; color: var(--ink); font-size: 14px; line-height: 1.5; }
#staff-assistant .as-remember span { display: inline-flex; gap: 8px; }
#staff-assistant .as-remember .primary, #staff-assistant .as-remember .secondary, #staff-assistant .as-next .secondary { min-height: 34px; padding: 5px 14px; font-size: 14px; }
#staff-assistant .as-remember-problem { flex-basis: 100%; color: var(--red) !important; }
#staff-assistant .as-actions { display: flex; gap: 2px; margin: 10px 0 0 -8px; }
#staff-assistant .as-actions button { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 4px 9px; border: 0; border-radius: 8px; background: none; color: var(--muted); font-size: 13px; font-weight: 600; }
#staff-assistant .as-actions button:hover { background: var(--background); color: var(--ink); }
#staff-assistant .as-steps { margin: 0 0 8px; padding: 0; list-style: none; color: var(--muted); font-size: 13.5px; }
#staff-assistant .as-steps li { display: flex; align-items: center; gap: 8px; padding: 2px 0; }
#staff-assistant .as-steps svg { flex: none; color: var(--green); }
#staff-assistant .as-activity { display: flex; align-items: center; gap: 10px; min-height: 28px; color: var(--ink); font-size: 15px; font-weight: 500; }
#staff-assistant .as-activity.writing { color: var(--green-dark); }
#staff-assistant .as-dots { flex: none; display: inline-flex; gap: 4px; }
#staff-assistant .as-dots i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); animation: blink 1.2s infinite; }
#staff-assistant .as-dots i:nth-child(2) { animation-delay: .2s; }
#staff-assistant .as-dots i:nth-child(3) { animation-delay: .4s; }
#staff-assistant .as-elapsed { color: var(--muted); font-size: 12.5px; font-weight: 400; font-variant-numeric: tabular-nums; }
#staff-assistant .as-foot { flex: none; padding: 10px 18px 12px; border-top: 1px solid var(--line); background: #fff; }
#staff-assistant .as-notice { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 10px; padding: 10px 14px; border: 1px solid #f1c9c3; border-radius: 12px; background: var(--red-tint); }
#staff-assistant .as-notice p { color: var(--red); font-size: 14.5px; line-height: 1.5; }
#staff-assistant .as-notice.limit { border-color: #f0d9a8; background: var(--amber-tint); }
#staff-assistant .as-notice.limit p { color: var(--amber); }
#staff-assistant .as-notice.info { border-color: #cddcf2; background: var(--blue-tint); }
#staff-assistant .as-notice.info p { color: var(--blue); }
#staff-assistant .as-link { flex: none; padding: 0; border: 0; background: none; color: var(--green-dark); font-size: inherit; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
#staff-assistant .as-consent { display: flex; align-items: center; gap: 14px; margin-bottom: 10px; padding: 12px 14px; border: 1px solid #bfe0d6; border-radius: 12px; background: var(--green-tint); }
#staff-assistant .as-consent p { flex: 1; color: var(--ink); font-size: 14px; line-height: 1.5; }
#staff-assistant .as-consent .primary { flex: none; min-height: 40px; padding: 8px 18px; }
#staff-assistant .as-consent.nudge { animation: nudge .5s ease-out; }
#staff-assistant .as-composer { padding: 6px; border: 1px solid #cfd7e1; border-radius: 22px; background: #fff; box-shadow: 0 1px 2px #0f1b2d0a; transition: border-color .15s, box-shadow .15s; }
#staff-assistant .as-composer:focus-within { border-color: var(--green); box-shadow: 0 0 0 3px #0b7a6326; }
#staff-assistant .as-input { display: flex; align-items: flex-end; gap: 4px; }
#staff-assistant .as-input textarea { flex: 1; min-width: 0; min-height: 40px; max-height: 200px; margin: 0; padding: 8px 6px; border: 0; border-radius: 8px; background: none; box-shadow: none; font-size: 16px; line-height: 1.5; resize: none; overflow-y: hidden; }
#staff-assistant .as-input textarea:focus { border: 0; box-shadow: none; }
#staff-assistant .as-icon { flex: none; display: inline-grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 12px; background: none; color: var(--muted); font-size: 20px; line-height: 1; }
#staff-assistant .as-icon:hover:not(:disabled) { background: var(--background); color: var(--ink); }
#staff-assistant .as-send { flex: none; display: inline-grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 50%; background: var(--green); color: #fff; transition: background .15s; }
#staff-assistant .as-send:hover:not(:disabled) { background: var(--green-dark); }
#staff-assistant .as-send:disabled { background: #cfd7e1; opacity: 1; }
#staff-assistant .as-send.stop { background: var(--navy); }
#staff-assistant .as-send.stop:hover { background: #1c3a57; }
#staff-assistant .as-attachment { display: flex; align-items: flex-start; gap: 12px; margin: 2px 2px 6px; padding: 8px; border-radius: 12px; background: var(--background); }
#staff-assistant .as-attachment img { flex: none; width: 56px; height: 56px; border-radius: 9px; object-fit: cover; border: 1px solid #cfd7e1; background: #fff; }
#staff-assistant .as-attachment > div { flex: 1; min-width: 0; }
#staff-assistant .as-attachment strong { display: block; color: var(--ink); font-size: 14px; font-weight: 600; overflow-wrap: anywhere; }
#staff-assistant .as-attachment small { font-size: 12.5px; }
#staff-assistant .as-attachment p { margin-top: 4px; color: var(--body); font-size: 13px; line-height: 1.45; }
#staff-assistant .as-attachment .as-icon { width: 32px; height: 32px; }
#staff-assistant .as-hint { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 2px 16px; margin-top: 7px; color: var(--muted); font-size: 12.5px; line-height: 1.45; }
#staff-assistant .as-hint:not(:has(#sa-hint:not(:empty), .as-lang:not([hidden]))) { display: none; }
#staff-assistant .as-legal { margin-top: 6px; color: var(--muted); font-size: 12px; line-height: 1.45; text-align: center; }
#staff-assistant .as-legal-inline { display: none; margin-top: 22px; padding-top: 12px; border-top: 1px solid var(--line); }
#staff-assistant .as-bar .side-opener { display: none; }
#staff-assistant .as-menu { position: absolute; top: calc(100% + 4px); left: 0; z-index: 8; min-width: 190px; padding: 6px; border: 1px solid var(--line); border-radius: 12px; background: #fff; box-shadow: 0 14px 44px #0f1b2d29, 0 2px 6px #0f1b2d14; animation: pop .14s ease-out; }
#staff-assistant .as-menu button { display: block; width: 100%; min-height: 38px; padding: 8px 12px; border: 0; border-radius: 8px; background: none; color: var(--ink); font-size: 14.5px; text-align: left; }
#staff-assistant .as-menu button:hover, #staff-assistant .as-menu button:focus-visible { background: var(--background); }
#staff-assistant .as-menu [data-menu=delete] { color: var(--red); }
#staff-assistant .as-rename { flex: 1; min-width: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 6px 8px; color: var(--ink); font-size: 14.5px; }
#staff-assistant .as-rename label { position: absolute; width: 1px; height: 1px; margin: 0; overflow: hidden; clip-path: inset(50%); }
#staff-assistant .as-rename input { flex: 1 1 160px; min-width: 0; min-height: 38px; margin: 0; padding: 6px 11px; font-size: 15px; }
#staff-assistant .as-rename span { flex: 1 1 200px; }
#staff-assistant .as-rename .primary, #staff-assistant .as-rename .plain, #staff-assistant .as-danger { flex: none; min-height: 36px; padding: 6px 14px; font-size: 14px; }
#staff-assistant .as-danger { border: 0; border-radius: 10px; background: var(--red); color: #fff; font-weight: 600; }
#staff-assistant .as-danger:hover { background: #972d22; }
#staff-assistant .as-bar-error { flex: none; margin: 8px 16px 0; }
#staff-assistant .as-bar-actions .secondary { gap: 7px; min-height: 36px; padding: 5px 12px; font-size: 14px; white-space: nowrap; }
#staff-assistant .as-bar-actions .secondary b { min-width: 22px; padding: 0 6px; border-radius: 999px; background: var(--navy); color: #fff; font-size: 12px; font-weight: 700; line-height: 20px; text-align: center; font-variant-numeric: tabular-nums; }
#staff-assistant .as-bar-actions .secondary[aria-expanded="true"] { border-color: var(--green); background: var(--green-tint); }
#staff-assistant .as-about { max-width: 68ch; margin-top: 22px; padding-top: 14px; border-top: 1px solid var(--line); font-size: 12.5px; }
#staff-assistant .as-more { margin-top: 22px; }
#staff-assistant .as-more h4 { margin-bottom: 4px; color: var(--ink); font: 650 15.5px var(--display); }
#staff-assistant .as-follow { display: flex; align-items: center; justify-content: space-between; gap: 14px; width: 100%; min-height: 48px; padding: 11px 6px; border: 0; border-top: 1px solid var(--line); border-radius: 0; background: none; color: var(--body); font-size: 15px; line-height: 1.45; text-align: left; transition: background .15s, color .15s; }
#staff-assistant .as-follow:last-child { border-bottom: 1px solid var(--line); }
#staff-assistant .as-follow:hover { background: var(--green-tint); color: var(--ink); }
#staff-assistant .as-follow svg { flex: none; color: var(--muted); }
#staff-assistant .as-follow:hover svg { color: var(--green-dark); }
#staff-assistant .as-panel { flex: none; display: flex; flex-direction: column; width: 348px; min-height: 0; border-left: 1px solid var(--line); background: #fff; outline: 0; }
#staff-assistant .as-panel-scrim { display: none; }
#staff-assistant .as-panel-head { flex: none; display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 57px; padding: 8px 10px 8px 18px; border-bottom: 1px solid var(--line); }
#staff-assistant .as-panel-head h2 { font-size: 16.5px; font-weight: 650; }
#staff-assistant .as-panel-head h2 span { margin-left: 4px; color: var(--muted); font-weight: 500; font-variant-numeric: tabular-nums; }
#staff-assistant .as-src-group h3 { display: flex; align-items: baseline; gap: 8px; margin-top: 18px; padding: 0 8px 4px; color: var(--muted); font: 700 11.5px var(--sans); letter-spacing: .08em; text-transform: uppercase; }
#staff-assistant .as-src-group h3 span { font-weight: 600; letter-spacing: 0; font-variant-numeric: tabular-nums; }
#staff-assistant .as-src { display: flex; align-items: flex-start; gap: 10px; width: 100%; padding: 9px 8px; border: 0; border-radius: 10px; background: none; text-align: left; transition: background .15s; }
#staff-assistant .as-src:hover, #staff-assistant .as-src[aria-expanded="true"] { background: var(--background); }
#staff-assistant .as-src > i { flex: none; display: inline-grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: #eef1f5; color: #54637a; }
#staff-assistant .as-src > span { flex: 1; min-width: 0; }
#staff-assistant .as-src strong { display: block; color: var(--ink); font-size: 14px; font-weight: 600; line-height: 1.35; overflow-wrap: anywhere; }
#staff-assistant .as-src small { margin-top: 1px; font-size: 12.5px; }
#staff-assistant .as-src .status { margin-top: 5px; white-space: normal; }
#staff-assistant .as-src-detail { margin: 0 8px 10px 48px; font-size: 13.5px; }
#staff-assistant .as-src-detail blockquote { margin: 6px 0 0; padding: 8px 11px; border-left: 3px solid var(--gold); border-radius: 0 8px 8px 0; background: #fbf8f1; color: var(--ink); font-size: 13.5px; line-height: 1.5; overflow-wrap: anywhere; }
#staff-assistant .as-src-detail blockquote cite { display: block; margin-top: 4px; color: var(--muted); font-size: 12px; font-style: normal; }
#staff-assistant .as-src-detail .as-card-label { margin-top: 4px; }
#staff-assistant .as-src-detail .as-card-none { margin-top: 4px; font-size: 13.5px; }
#staff-assistant .as-src-detail .as-card-meta .status { display: none; }
#staff-assistant .as-mic.listening { background: var(--red-tint); color: var(--red); animation: listening 1.4s ease-in-out infinite; }
#staff-assistant .as-voice { display: flex; align-items: center; gap: 8px; width: 100%; max-width: 760px; margin: 0 auto 8px; color: var(--red); font-size: 13.5px; font-weight: 600; }
#staff-assistant .as-voice::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 50%; background: var(--red); animation: blink 1.2s infinite; }
#staff-assistant .as-lang { flex: none; display: inline-flex; align-items: center; gap: 6px; margin: 0 0 0 auto; color: var(--muted); font-size: 12.5px; font-weight: 400; }
#staff-assistant .as-lang select { display: inline-block; width: auto; min-height: 28px; margin: 0; padding: 2px 6px; border-radius: 7px; font-size: 12.5px; }
#staff-assistant .as-consent .plain { flex: none; }
#staff-assistant .mem-switch { margin-top: 16px; padding: 12px 14px; border: 1px solid var(--line); border-radius: 12px; font-weight: 600; color: var(--ink); }
#staff-assistant .mem-list { margin-top: 14px; }
#staff-assistant .mem-note { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 0; border-top: 1px solid var(--line); }
#staff-assistant .mem-note p { flex: 1; min-width: 0; color: var(--ink); font-size: 15px; overflow-wrap: anywhere; }
#staff-assistant .mem-note.unused p { color: var(--muted); }
#staff-assistant .mem-note > span { flex: none; display: inline-flex; align-items: center; gap: 6px; color: var(--muted); font-size: 13.5px; }
#staff-assistant .mem-note .plain, #staff-assistant .mem-note .secondary, #staff-assistant .mem-note .primary { min-height: 34px; padding: 4px 10px; font-size: 14px; }
#staff-assistant .mem-note input { flex: 1; min-width: 0; min-height: 40px; margin: 0; }
#staff-assistant .mem-add { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }
#staff-assistant .mem-add label { margin-top: 0; }
#staff-assistant .mem-add > div { display: flex; gap: 8px; margin-top: 6px; }
#staff-assistant .mem-add input { flex: 1; min-width: 0; margin: 0; }
#staff-assistant .mem-add .primary { margin: 0; }
#staff-assistant .mem-list .empty { padding: 14px 0 4px; }
@media (max-width: 640px) {
#staff-assistant .as-bar { gap: 4px; padding: 8px 10px; }
#staff-assistant .as-bar-actions .plain { padding: 6px 8px; }
#staff-assistant .as-bar-actions .plain span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
#staff-assistant .as-bar-actions .secondary { padding: 5px 10px; }
#staff-assistant .as-legal { text-align: left; }
#staff-assistant .as-bar:has(> .as-rename:not([hidden])) .as-bar-actions { display: none; }
#staff-assistant .as-scroll { padding: 16px 12px 14px; }
#staff-assistant .as-foot { padding: 8px 10px 10px; }
#staff-assistant .as-empty { padding-top: 10px; }
#staff-assistant .as-empty h3 { font-size: 21px; }
#staff-assistant .as-starters { grid-template-columns: 1fr; margin-top: 16px; }
#staff-assistant .as-msg.user { max-width: 92%; }
#staff-assistant .as-answer { font-size: 15.5px; }
#staff-assistant .as-consent { flex-direction: column; align-items: stretch; }
#staff-assistant .as-legal { font-size: 11px; }
#staff-assistant .talking .as-foot > .as-legal { display: none; }
#staff-assistant .talking .as-legal-inline:not([hidden]) { display: block; }
#staff-assistant .as-card { position: fixed; left: 10px !important; right: 10px; top: auto !important; bottom: 10px; z-index: 30; width: auto; max-width: none; max-height: 72vh; }
#staff-assistant .mem-note { flex-wrap: wrap; }
#staff-assistant .mem-add > div { flex-direction: column; }
}
@media (max-width: 900px) {
#staff-assistant .as-bar .side-opener { display: inline-grid; margin-left: -6px; }
#staff-assistant .as-panel { position: fixed; inset: auto 0 0 0; z-index: 40; width: auto; max-height: 82vh; max-height: 82dvh; border: 0; border-radius: 18px 18px 0 0; box-shadow: 0 -14px 50px #0e223847; animation: rise .18s ease-out; }
#staff-assistant .as-panel-scrim:not([hidden]) { display: block; position: fixed; inset: 0; z-index: 39; background: #0e223866; }
}
#staff-assistant i.k-reference, #staff-assistant i.k-official_calendar { background: var(--blue-tint); color: var(--blue); }
#staff-assistant i.k-reference_secondary, #staff-assistant i.k-calculator { background: var(--amber-tint); color: var(--amber); }
#staff-assistant i.k-refund, #staff-assistant i.k-investments { background: var(--green-tint); color: var(--green-dark); }
#staff-assistant .as-calc { margin-top: 16px; padding: 14px 16px; border: 1px solid var(--line); border-left: 3px solid var(--green-dark); border-radius: 0 12px 12px 0; background: #fff; }
#staff-assistant .as-calc h4 { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin: 0 0 10px; color: var(--ink); font: 650 15.5px var(--display); }
#staff-assistant .as-calc h4 svg { flex: none; color: var(--green-dark); }
#staff-assistant .as-calc h4 small { margin-left: auto; color: var(--muted); font-family: inherit; font-size: 12px; font-weight: 600; }
#staff-assistant .as-example { margin-top: 16px; padding: 14px 16px; border: 1px solid var(--line); border-left: 3px solid var(--green-dark); border-radius: 0 12px 12px 0; background: #fff; }
#staff-assistant .as-example h4 { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin: 0 0 8px; color: var(--ink); font: 650 15.5px var(--display); }
#staff-assistant .as-example h4 svg { flex: none; color: var(--green-dark); }
#staff-assistant .as-example h4 small { margin-left: auto; color: var(--muted); font-family: inherit; font-size: 12px; font-weight: 600; }
#staff-assistant .as-example ol { margin: 0; padding-left: 22px; color: var(--ink); font-size: 14.5px; line-height: 1.6; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
#staff-assistant .as-example-note { margin: 8px 0 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
#staff-assistant .as-calc-figures { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px 16px; margin: 0 0 10px; }
#staff-assistant .as-calc-figures div { min-width: 0; }
#staff-assistant .as-calc-figures dt { color: var(--muted); font-size: 12.5px; line-height: 1.35; }
#staff-assistant .as-calc-figures dd { margin: 2px 0 0; color: var(--ink); font-size: 18px; font-weight: 700; overflow-wrap: anywhere; }
#staff-assistant .as-calc-figures div:first-child dd { font-size: 22px; }
#staff-assistant .as-calc-inputs, #staff-assistant .as-calc-ask, #staff-assistant .as-calc-note { margin: 6px 0 0; color: var(--body); font-size: 13.5px; line-height: 1.5; overflow-wrap: anywhere; }
#staff-assistant .as-calc-inputs span { color: var(--muted); }
#staff-assistant .as-calc-inputs em { color: var(--amber); font-style: normal; font-size: 12px; }
#staff-assistant .as-calc-note { color: var(--muted); font-size: 12.5px; }
#staff-assistant .as-calc-note.warn { color: var(--amber); }
#staff-assistant .as-calc-rules { margin: 8px 0 0; padding: 0; list-style: none; font-size: 13px; line-height: 1.5; }
#staff-assistant .as-calc-rules li { padding: 4px 0; border-top: 1px solid var(--line); }
#staff-assistant .as-calc-rules small { display: block; color: var(--muted); overflow-wrap: anywhere; }
#staff-assistant .as-calc-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
#staff-assistant .as-calc-actions button, #staff-assistant .as-calc-export, #staff-assistant .as-page { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 8px 14px; border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--ink); font-size: 14px; font-weight: 600; text-decoration: none; }
#staff-assistant .as-calc-actions button:hover, #staff-assistant .as-calc-export:hover, #staff-assistant .as-page:hover { border-color: #9fcfc2; background: var(--green-tint); }
#staff-assistant .as-calc-actions button:focus-visible, #staff-assistant .as-calc-export:focus-visible, #staff-assistant .as-page:focus-visible { outline: 2px solid var(--green-dark); outline-offset: 2px; }
#staff-assistant .as-pages { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
#staff-assistant .as-page svg { flex: none; color: var(--muted); }
@media (max-width: 420px) {
#staff-assistant .as-calc { padding: 12px; }
#staff-assistant .as-calc-actions button, #staff-assistant .as-calc-export, #staff-assistant .as-page { flex: 1 1 100%; justify-content: center; }
#staff-assistant .as-calc h4 small { margin-left: 0; flex-basis: 100%; }
}
#staff-assistant .as-act { margin-top: 16px; padding: 14px 16px; border: 1px solid var(--line); border-left: 3px solid var(--amber); border-radius: 0 12px 12px 0; background: #fff; }
#staff-assistant .as-act h4 { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; margin: 0 0 10px; color: var(--ink); font: 650 15.5px var(--display); }
#staff-assistant .as-act h4 svg { flex: none; color: var(--amber); }
#staff-assistant .as-act h4 small { margin-left: auto; font-family: inherit; font-size: 12px; font-weight: 600; }
#staff-assistant .as-act-list { margin: 0 0 8px; padding: 0; list-style: none; }
#staff-assistant .as-act-list li { padding: 8px 0; border-top: 1px solid var(--line); }
#staff-assistant .as-act-list li:first-child { border-top: 0; padding-top: 0; }
#staff-assistant .as-act-row { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 4px 10px; }
#staff-assistant .as-act-row strong { display: block; color: var(--ink); font-size: 14.5px; overflow-wrap: anywhere; }
#staff-assistant .as-act-row small { display: block; color: var(--muted); font-size: 12.5px; overflow-wrap: anywhere; }
#staff-assistant .as-act-list p { margin: 4px 0 0; color: var(--body); font-size: 13.5px; line-height: 1.5; overflow-wrap: anywhere; }
#staff-assistant .as-act-list .as-act-note, #staff-assistant .as-act > .as-act-note { color: var(--muted); font-size: 12.5px; }
#staff-assistant .as-act-other { margin-top: 10px; }
#staff-assistant .as-act-other ul { margin: 4px 0 0; padding-left: 18px; color: var(--body); font-size: 13px; line-height: 1.5; }
#staff-assistant .as-act-other li { margin: 3px 0; overflow-wrap: anywhere; }
#staff-assistant .as-act-other small { display: block; color: var(--muted); }
#staff-assistant .as-act-label { margin: 10px 0 4px; color: var(--muted); font-size: 12px; font-weight: 700; letter-spacing: .02em; text-transform: uppercase; }
#staff-assistant .as-act-small { margin: 8px 0 0; color: var(--muted); font-size: 12px; line-height: 1.45; }
#staff-assistant .as-act-results { margin-top: 2px; }
#staff-assistant .as-act-consent { margin: 12px 0 0; padding: 9px 11px; border-radius: 10px; background: var(--amber-tint); color: var(--ink); font-size: 13px; line-height: 1.5; }
#staff-assistant .as-act-problem { margin: 10px 0 0; padding: 9px 11px; border: 1px solid #f1c9c3; border-radius: 10px; background: var(--red-tint); color: var(--red); font-size: 13.5px; }
#staff-assistant .as-act-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; }
#staff-assistant .as-act-actions .primary, #staff-assistant .as-act-actions .secondary { min-height: 40px; padding: 8px 16px; font-size: 14px; }
#staff-assistant .as-act-actions button:disabled { opacity: .65; cursor: progress; }
#staff-assistant .as-act-actions small { color: var(--muted); font-size: 12px; }
@media (max-width: 420px) {
#staff-assistant .as-act { padding: 12px; }
#staff-assistant .as-act-actions .primary, #staff-assistant .as-act-actions .secondary, #staff-assistant .as-act-actions .as-page { flex: 1 1 100%; justify-content: center; }
#staff-assistant .as-act h4 small { margin-left: 0; flex-basis: 100%; }
}
#staff-assistant .as-web { margin: 0; }
#staff-assistant .as-web > * + * { margin-top: 12px; }
#staff-assistant .as-web + p, #staff-assistant .as-web + h3, #staff-assistant .as-web + h4, #staff-assistant .as-web + ul, #staff-assistant .as-web + ol, #staff-assistant .as-web + .as-table, #staff-assistant p + .as-web, #staff-assistant .as-general + .as-web { margin-top: 14px; }
#staff-assistant .as-answer .as-web-results { margin: 12px 0 0; padding-left: 26px; font-size: 14px; line-height: 1.45; }
#staff-assistant .as-web-results li { margin: 6px 0; overflow-wrap: anywhere; }
#staff-assistant .as-web-results small { display: block; color: var(--muted); font-size: 12.5px; }
#staff-assistant .as-answer .as-web-credit { margin-top: 8px; color: var(--muted); font-size: 12px; }
#staff-assistant i.k-web, #staff-assistant i.k-reference_web { background: var(--blue-tint); color: var(--blue); }
#staff-assistant i.k-news { background: var(--amber-tint); color: var(--amber); }
#staff-assistant .as-checked { margin-top: 14px; padding: 12px 16px 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
#staff-assistant .as-checked > h4 { display: flex; align-items: center; gap: 8px; margin: 0; color: var(--muted); font: 700 12.5px var(--sans, inherit); letter-spacing: .07em; text-transform: uppercase; }
#staff-assistant .as-checked > h4 svg { flex: none; }
#staff-assistant .as-checked-list { margin: 8px 0 0; padding-left: 26px; font-size: 14.5px; line-height: 1.45; }
#staff-assistant .as-checked-list > li { margin: 0; padding: 9px 0; border-top: 1px solid var(--line); overflow-wrap: anywhere; }
#staff-assistant .as-checked-list > li:first-child { border-top: 0; padding-top: 2px; }
#staff-assistant .as-checked-list > li::marker { color: var(--muted); font-weight: 700; font-size: 13px; }
#staff-assistant .as-checked-row { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
#staff-assistant .as-checked-site { color: var(--ink); font-weight: 700; }
#staff-assistant .as-checked-name { display: block; margin-top: 1px; color: var(--body, var(--ink)); }
#staff-assistant .as-tag { flex: none; display: inline-block; padding: 1px 8px; border: 1px solid var(--line); border-radius: 999px; background: #f4f6f9; color: #54637a; font-size: 11.5px; font-weight: 600; letter-spacing: .02em; white-space: nowrap; }
#staff-assistant .as-tag.firm { border-color: transparent; background: var(--green-tint); color: var(--green-dark); }
#staff-assistant .as-src .as-tag { margin-top: 5px; }
#staff-assistant .as-checked-name a { color: inherit; text-decoration: underline; text-decoration-color: #b9c4d2; text-underline-offset: 3px; }
#staff-assistant .as-checked-name a:hover { text-decoration-color: currentColor; }
#staff-assistant .as-checked-list small { display: block; margin-top: 2px; color: var(--muted); font-size: 13px; }
#staff-assistant .as-checked-more { margin-top: 3px; color: var(--body, var(--muted)); font-size: 13px; line-height: 1.45; }
#staff-assistant .as-checked-list details { margin-top: 5px; font-size: 13px; }
#staff-assistant .as-checked-list summary { width: fit-content; color: var(--muted); font-weight: 600; cursor: pointer; }
#staff-assistant .as-checked-list blockquote { margin: 6px 0 0; padding: 6px 10px; border-left: 3px solid var(--line); color: var(--body, var(--muted)); font-size: 13px; line-height: 1.5; }
#staff-assistant .as-answer sup.as-ref { margin-left: 1px; padding: 0 4px; border-radius: 6px; background: var(--blue-tint); color: var(--blue); font-size: 11px; font-weight: 700; line-height: 1; vertical-align: super; }
@media (max-width: 560px) {
#staff-assistant .as-checked { padding: 10px 12px; }
#staff-assistant .as-checked-list { padding-left: 22px; }
}
#staff-assistant .plain.pa-about { min-height: 30px; margin-top: 4px; padding: 2px 8px; font-size: 13px; }
#staff-assistant .plain.pa-delete { color: var(--red); }
#staff-assistant .plain.pa-delete:hover { background: var(--red-tint); }
@keyframes blink { 0%, 80%, 100% { opacity: .25; } 40% { opacity: 1; } }
@keyframes nudge { 0%, 100% { box-shadow: 0 0 0 0 #0b7a6300; } 40% { box-shadow: 0 0 0 5px #0b7a6340; } }
@keyframes listening { 0%, 100% { box-shadow: 0 0 0 0 #b3372a40; } 50% { box-shadow: 0 0 0 6px #b3372a14; } }
