:root { color-scheme: light; --ink:#182b2f; --muted:#68797d; --paper:#fbfaf7; --surface:#fff; --line:#dfe5e2; --green:#17695d; --green-dark:#104d45; --mint:#e6f2ed; --orange:#e8673e; --orange-soft:#fff0e9; --shadow:0 18px 60px rgba(28,54,51,.10); }
* { box-sizing:border-box; }
[hidden] { display:none !important; }
html { scroll-behavior:smooth; overflow-x:hidden; }
body { margin:0; min-width:0; min-height:100vh; overflow-x:hidden; color:var(--ink); background:radial-gradient(circle at 50% -15%,rgba(185,225,208,.33),transparent 34rem),var(--paper); font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif; }
button,textarea { font:inherit; } button,a,summary { -webkit-tap-highlight-color:transparent; } a { color:inherit; }
.page-shell { width:min(1120px,calc(100% - 40px)); margin:0 auto; }
.topbar { height:70px; display:flex; align-items:center; justify-content:space-between; position:relative; z-index:5; }
.brand { display:inline-flex; align-items:center; gap:10px; color:var(--ink); font-weight:850; text-decoration:none; letter-spacing:-.02em; }
.brand-mark,.hero-symbol,.assistant-avatar { display:grid; place-items:center; color:white; background:var(--ink); font-family:Georgia,serif; }
.brand-mark { width:32px; height:32px; border-radius:10px; }
.tools-drawer > summary { list-style:none; cursor:pointer; color:var(--green-dark); font-size:13px; font-weight:800; border:1px solid var(--line); background:rgba(255,255,255,.82); padding:9px 13px; border-radius:999px; }
.tools-drawer > summary::-webkit-details-marker { display:none; }
.drawer-panel { position:absolute; right:0; top:60px; width:min(620px,calc(100vw - 40px)); padding:22px; border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.98); box-shadow:var(--shadow); }
.drawer-heading { display:flex; justify-content:space-between; gap:20px; align-items:start; }
.drawer-heading small,.drawer-heading > span { color:var(--muted); font-size:11px; }.drawer-heading h2 { margin:4px 0 16px; font-size:20px; }
.create-kb-form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; margin-bottom:10px; }.create-kb-form input,#kb-picker { min-width:0; border:1px solid var(--line); border-radius:10px; padding:9px 11px; color:var(--ink); background:white; font:inherit; font-size:12px; }
.import-actions { display:flex; flex-wrap:wrap; gap:8px; }
.secondary-button,.file-button { cursor:pointer; border:1px solid var(--green); border-radius:10px; padding:9px 12px; color:var(--green-dark); background:white; font-weight:800; font-size:12px; }
.file-button { color:white; background:var(--green); } .secondary-button:disabled { opacity:.6; cursor:wait; }
#package-file { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
.pipeline { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-top:14px; color:var(--muted); font-size:11px; font-weight:800; }
.pipeline span { padding:5px 8px; border:1px solid var(--line); border-radius:999px; }.pipeline span.complete { color:var(--green-dark); background:var(--mint); border-color:transparent; }.pipeline span.failed { color:#9b3c27; background:var(--orange-soft); }
#import-status,.sample-disclosure { margin:9px 0 0; color:var(--muted); font-size:11px; line-height:1.55; overflow-wrap:anywhere; }#import-status.success { color:var(--green-dark); font-weight:700; }#import-status.error { color:#9b3c27; font-weight:700; }
.kb-file-list { display:flex; flex-wrap:wrap; gap:6px; margin:9px 0 0; padding:0; list-style:none; }.kb-file-list li { max-width:100%; padding:5px 8px; border-radius:8px; background:#f0f4f2; color:var(--muted); font-size:10px; overflow-wrap:anywhere; }
.principles { margin-top:14px; border-top:1px solid var(--line); }.principles summary { padding-top:14px; cursor:pointer; color:var(--green-dark); font-size:12px; font-weight:800; }.principle-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:12px; }.principle-grid div { padding:12px; border-radius:11px; background:#f5f8f6; }.principle-grid b,.principle-grid span { display:block; }.principle-grid span { margin-top:4px; color:var(--muted); font-size:11px; line-height:1.45; }
.chat-workspace { max-width:900px; margin:0 auto; }
.search-hero { min-height:calc(100vh - 150px); display:flex; flex-direction:column; align-items:center; justify-content:center; padding:38px 0 70px; text-align:center; }
.hero-symbol { width:66px; height:66px; border-radius:20px; font-size:35px; box-shadow:0 16px 32px rgba(24,43,47,.18); }
.search-hero h1 { margin:18px 0 0; font-family:Georgia,"Songti SC",serif; font-size:clamp(42px,6vw,62px); font-weight:600; letter-spacing:-.04em; }.search-hero > p { margin:10px 0 0; color:var(--muted); font-size:16px; }
.compact-controls { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:12px; margin-top:28px; }
.kb-picker-label { color:var(--muted); font-size:11px; font-weight:800; }#kb-picker { max-width:260px; font-weight:750; }
.version-selector { display:flex; gap:4px; padding:4px; background:#edf2ef; border-radius:12px; }.version-selector button { min-width:58px; cursor:pointer; border:0; border-radius:9px; padding:8px 10px; color:var(--muted); background:transparent; font-size:12px; font-weight:800; }.version-selector button.active { color:white; background:var(--green); box-shadow:0 5px 14px rgba(23,105,93,.2); }
.readiness-status { display:flex; align-items:center; gap:7px; margin:0!important; padding:8px 11px; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.8); color:var(--muted)!important; font-size:11px!important; font-weight:700; }.readiness-status span { width:7px; height:7px; border-radius:50%; background:#d49336; }.readiness-status.ready span { background:#37a36f; box-shadow:0 0 0 4px rgba(55,163,111,.12); }.readiness-status.not-ready { color:#943c29!important; }
.composer { width:100%; display:grid; grid-template-columns:1fr auto; gap:10px; align-items:end; margin-top:18px; padding:8px; border:1px solid #cad5d1; border-radius:22px; background:white; box-shadow:0 14px 40px rgba(28,54,51,.12); text-align:left; }.composer:focus-within { border-color:var(--green); box-shadow:0 0 0 4px rgba(23,105,93,.08),0 14px 40px rgba(28,54,51,.12); }
textarea { width:100%; min-height:66px; max-height:180px; resize:vertical; border:0; outline:0; padding:13px 14px; background:transparent; color:var(--ink); line-height:1.5; font-size:16px; }
.submit-button { height:48px; min-width:94px; display:flex; align-items:center; justify-content:center; gap:10px; cursor:pointer; border:0; border-radius:15px; padding:0 18px; color:white; background:var(--orange); font-weight:850; box-shadow:0 8px 20px rgba(232,103,62,.22); }.submit-button:hover { background:#d85530; }.submit-button:disabled { opacity:.58; cursor:wait; }
.selection-note { margin:10px 0 0!important; color:var(--muted)!important; font-size:11px!important; }
.cloud-disclosure { margin:8px 0 0; color:#765b3d; font-size:11px; line-height:1.45; }
.example-list { display:flex; flex-wrap:wrap; justify-content:center; gap:7px; margin-top:14px; }.example-chip { cursor:pointer; border:1px solid var(--line); border-radius:999px; padding:7px 11px; color:var(--green-dark); background:rgba(255,255,255,.75); font-size:11px; font-weight:750; }.example-chip:hover { border-color:var(--green); background:var(--mint); }
.example-chip:disabled,.example-chip[aria-disabled="true"] { cursor:wait; opacity:.45; border-color:var(--line); background:#f1f2ef; }
.conversation { display:grid; gap:22px; padding:12px 0 70px; }.hidden { display:none!important; }
.message { min-width:0; }.user-message { justify-self:end; max-width:min(74%,670px); padding:14px 17px; border-radius:18px 18px 5px 18px; background:var(--green); color:white; }.message-label { margin-bottom:6px; color:var(--muted); font-size:10px; font-weight:850; letter-spacing:.03em; }.user-message .message-label { color:#c9e6dd; }.user-message p { margin:0; line-height:1.55; overflow-wrap:anywhere; }
.assistant-message { width:100%; display:grid; grid-template-columns:34px minmax(0,1fr); gap:12px; }.assistant-avatar { width:34px; height:34px; border-radius:10px; }.assistant-body,.pending-message > div:last-child { min-width:0; padding:20px; border:1px solid var(--line); border-radius:5px 20px 20px 20px; background:rgba(255,255,255,.9); box-shadow:0 10px 32px rgba(28,54,51,.06); }.assistant-body h2 { margin:0; font-family:Georgia,"Songti SC",serif; font-size:clamp(24px,3.4vw,34px); font-weight:500; line-height:1.35; overflow-wrap:anywhere; }.version-note { margin:10px 0 0; color:var(--muted); line-height:1.65; }.generation-meta { margin:9px 0 0; color:var(--green-dark); font-size:11px; font-weight:800; }.refused .assistant-body { border-color:#f1cfc2; background:#fffaf7; }
.typing-dots { display:inline-flex; gap:3px; }.typing-dots i { width:5px; height:5px; border-radius:50%; background:var(--green); animation:pulse 1s infinite alternate; }.typing-dots i:nth-child(2){animation-delay:.2s}.typing-dots i:nth-child(3){animation-delay:.4s}@keyframes pulse{to{opacity:.2;transform:translateY(-3px)}}
.conflict-box { display:grid; gap:3px; margin-top:14px; padding:13px; border-radius:12px; color:#853b28; background:var(--orange-soft); font-size:12px; line-height:1.5; }
.evidence-details { margin-top:14px; border-top:1px solid var(--line); }.evidence-details summary { cursor:pointer; padding:13px 0 5px; color:var(--green-dark); font-size:12px; font-weight:850; }.evidence-details summary span { color:var(--muted); font-weight:600; }.evidence-grid { display:grid; gap:8px; margin-top:8px; }.evidence-card { min-width:0; padding:14px; border:1px solid var(--line); border-radius:13px; background:white; }.evidence-meta { display:flex; justify-content:space-between; gap:8px; color:var(--green); font-size:10px; font-weight:850; }.evidence-card h3 { margin:8px 0; font-size:14px; }.evidence-chain { display:grid; gap:7px; margin:0; }.evidence-chain div { display:grid; grid-template-columns:76px minmax(0,1fr); gap:8px; padding-top:7px; border-top:1px solid #edf0ee; }.evidence-chain dt { color:var(--green-dark); font-size:11px; font-weight:850; }.evidence-chain dd { min-width:0; margin:0; color:var(--muted); font-size:12px; line-height:1.5; overflow-wrap:anywhere; }.source-links { display:flex; flex-wrap:wrap; gap:12px; margin-top:11px; }.source-links a { color:var(--green); font-size:11px; font-weight:850; }.feedback-actions { display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;color:var(--muted);font-size:11px }.feedback-actions button,.lifecycle-action { cursor:pointer;border:1px solid var(--line);border-radius:8px;padding:6px 8px;background:white;color:var(--green-dark);font-size:11px;font-weight:750 }.feedback-actions button:disabled { opacity:.5 }
footer { display:flex; justify-content:space-between; gap:20px; padding:28px 0 36px; color:var(--muted); font-size:11px; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.operations-view { padding:42px 0 80px; }.operations-heading { display:flex;justify-content:space-between;align-items:start;gap:20px }.operations-heading h1 { margin:4px 0 8px;font-family:Georgia,"Songti SC",serif;font-size:42px }.operations-heading small,.operations-view>p { color:var(--muted) }.operations-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:28px 0 }.operations-grid article,.operation-card,.operations-columns>section { padding:18px;border:1px solid var(--line);border-radius:16px;background:white }.operations-grid strong,.operations-grid span { display:block }.operations-grid strong { margin:8px 0;font-size:24px }.operations-grid span,.operation-card p,.issue-item,.empty-state { color:var(--muted);font-size:12px }.operations-columns { display:grid;grid-template-columns:1.1fr .9fr 1.1fr;gap:14px }.operations-columns h2 { margin-top:0;font-size:17px }.operation-card { margin-top:8px;padding:13px }.issue-item { padding:10px;border-radius:10px;background:var(--orange-soft) }
.managed-draft-form { display:grid;grid-template-columns:1.2fr 1fr 1.2fr 1fr 1.2fr auto;gap:10px;align-items:end;margin:20px 0;padding:16px;border:1px solid var(--line);border-radius:16px;background:white }.managed-draft-form label { display:grid;gap:5px;color:var(--muted);font-size:11px;font-weight:750 }.managed-draft-form input,.managed-draft-form select { min-width:0;padding:9px;border:1px solid var(--line);border-radius:9px;background:white;font:inherit }.managed-draft-form p { grid-column:1/-1;margin:0;color:var(--muted);font-size:11px }.managed-draft-form p.success { color:var(--green-dark);font-weight:750 }.switch-suggestion { margin-top:12px;padding:11px;border-radius:10px;background:var(--mint);color:var(--green-dark);font-size:12px;font-weight:750 }

@media (max-width:780px) {
  .page-shell { width:calc(100% - 24px); max-width:620px; min-width:0; }
  main,.chat-workspace,.search-hero,.composer,.conversation,.message,.assistant-body,.evidence-grid,.evidence-card { min-width:0; max-width:100%; }
  .topbar { height:62px; }.brand > span:last-child { display:none; }.drawer-panel { right:0; top:54px; width:calc(100vw - 24px); max-height:calc(100vh - 72px); overflow:auto; }.drawer-heading { display:block; }.drawer-heading > span { display:block; margin-bottom:12px; }
  .search-hero { min-height:calc(100vh - 118px); padding:30px 0 42px; }.hero-symbol { width:54px;height:54px;border-radius:17px;font-size:29px; }.search-hero h1 { margin-top:13px; font-size:40px; }.search-hero > p { max-width:290px; font-size:14px; }.compact-controls { margin-top:22px; gap:8px; }.readiness-status { max-width:100%; overflow-wrap:anywhere; }
  .composer { grid-template-columns:minmax(0,1fr) auto; border-radius:18px; }.submit-button { min-width:70px; padding:0 14px; }.submit-button span:last-child { display:none; } textarea { min-height:74px; padding:10px; font-size:16px; }
  .example-list { gap:6px; }.example-chip { padding:7px 9px; }
  .conversation { gap:18px; padding-bottom:45px; }.user-message { max-width:88%; }.assistant-message { grid-template-columns:28px minmax(0,1fr); gap:8px; }.assistant-avatar { width:28px;height:28px;border-radius:8px;font-size:12px; }.assistant-body,.pending-message > div:last-child { padding:15px; border-radius:4px 16px 16px 16px; }.evidence-chain div { grid-template-columns:1fr;gap:3px; }.evidence-meta { flex-direction:column; }.source-links { gap:8px 12px; }
  .principle-grid { grid-template-columns:1fr; }.import-actions { flex-direction:column; }.secondary-button,.file-button { width:100%; text-align:center; } footer { flex-direction:column; }
  .create-kb-form { grid-template-columns:1fr; }.compact-controls { width:100%; }#kb-picker { max-width:100%; flex:1; }
  .operations-heading { display:block }.operations-heading button { margin-top:12px }.operations-grid,.operations-columns,.managed-draft-form { grid-template-columns:1fr }.managed-draft-form p { grid-column:1 }.operations-heading h1 { font-size:34px }
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
