:root { color-scheme: light; --ink:#15202b; --muted:#5b6874; --line:#dce3e8; --paper:#f7f9fa; --accent:#146b75; --accent-dark:#0d4d55; --danger:#9a2f35; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif; line-height:1.55; }
a { color:var(--accent-dark); }
.site-header { min-height:68px; padding:1rem clamp(1rem,4vw,4rem); display:flex; gap:1.5rem; align-items:center; border-bottom:1px solid var(--line); background:#fff; }
.site-header nav { display:flex; gap:1rem; margin-left:auto; flex-wrap:wrap; }
.brand { color:var(--ink); font-weight:800; text-decoration:none; letter-spacing:.08em; }
main { width:min(1180px,calc(100% - 2rem)); margin:0 auto; padding:clamp(2rem,6vw,5rem) 0; }
footer { padding:2rem clamp(1rem,4vw,4rem); border-top:1px solid var(--line); color:var(--muted); }
.hero { max-width:820px; padding:3rem 0 4rem; }
.hero h1,.page-head h1 { font-size:clamp(2.1rem,6vw,4.7rem); line-height:1.05; letter-spacing:-.04em; margin:.25rem 0 1.25rem; }
.eyebrow { color:var(--accent); font-weight:750; text-transform:uppercase; letter-spacing:.14em; }
.work-grid { display:grid; grid-template-columns:minmax(0,2fr) minmax(260px,1fr); gap:1rem; }
.panel,.auth-card,.document,.metric-grid article { background:#fff; border:1px solid var(--line); border-radius:16px; padding:clamp(1.25rem,3vw,2rem); margin-bottom:1rem; }
.chat-log { min-height:160px; max-height:420px; overflow:auto; padding:1rem; background:#f2f5f6; border-radius:12px; margin:1rem 0; }
.chat-visitor { margin-left:12%; background:#dfeff0; padding:.75rem; border-radius:12px; }
.chat-agent { margin-right:12%; background:#fff; padding:.75rem; border:1px solid var(--line); border-radius:12px; }
label,legend { font-weight:650; display:block; margin:.7rem 0 .3rem; }
fieldset { border:1px solid var(--line); border-radius:12px; margin:1rem 0; }
fieldset label { font-weight:400; }
input,textarea,select { width:100%; font:inherit; padding:.7rem .8rem; border:1px solid #aeb9c1; border-radius:8px; background:#fff; }
input[type=checkbox] { width:auto; }
button { border:0; border-radius:9px; padding:.72rem 1rem; background:var(--accent); color:#fff; font-weight:700; cursor:pointer; }
button:hover { background:var(--accent-dark); }
button:disabled { opacity:.5; cursor:not-allowed; }
.secondary { background:#596873; }.danger { background:var(--danger); }.link-button { background:transparent; color:var(--accent-dark); padding:0; }
.button-row { display:flex; gap:.7rem; flex-wrap:wrap; align-items:center; }
.button-row form { margin:0; }
.status { color:var(--muted); min-height:1.5em; }.error { color:var(--danger); font-weight:700; }
.private-entry,.documents-preview,.page-head { margin-top:2rem; }
.card-list { list-style:none; padding:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:.75rem; }.card-list a { display:block; padding:1rem; background:#fff; border:1px solid var(--line); border-radius:10px; }
.document { max-width:900px; }.document pre,.panel pre,.metric-grid pre { white-space:pre-wrap; overflow-wrap:anywhere; font:inherit; }
.auth-card { max-width:560px; margin:4rem auto; }
.metric-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:1rem; }.metric-grid article { margin:0; }
.table-wrap { overflow:auto; background:#fff; border:1px solid var(--line); border-radius:12px; } table { width:100%; border-collapse:collapse; } th,td { padding:.75rem; text-align:left; vertical-align:top; border-bottom:1px solid var(--line); } td form { min-width:220px; }
code { overflow-wrap:anywhere; }
@media (max-width:760px) { .work-grid { grid-template-columns:1fr; }.agent-panel { order:-1; }.site-header { align-items:flex-start; flex-wrap:wrap; }.site-header nav { width:100%; margin:0; }.hero { padding-top:1rem; } }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; } }
