:root { --ink:#1c2430; --muted:#5f6b7a; --line:#e3e8ee; --bg:#f6f8fa; --card:#fff; --accent:#0b5fff; --accent-ink:#fff; --hit:#eef6ff; --bar:#8fb3ff; }
* { box-sizing: border-box; }
body { margin:0; font: 15px/1.5 -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color:var(--ink); background:var(--bg); }
header.top { display:flex; justify-content:space-between; align-items:center; padding:12px 24px; background:#fff; border-bottom:1px solid var(--line); }
.brand { font-weight:700; text-decoration:none; color:var(--ink); }
nav a { color:var(--muted); text-decoration:none; }
main { max-width:1200px; margin:0 auto; padding:24px 16px 48px; }
footer { max-width:1200px; margin:0 auto; padding:16px; color:var(--muted); font-size:13px; }
h1 { font-size:26px; margin:0 0 8px; } h2 { font-size:19px; margin:24px 0 8px; } h3 { font-size:16px; margin:20px 0 6px; }
.muted { color:var(--muted); } .r { text-align:right; }
a { color:var(--accent); }
.hero p { max-width:760px; }
.forms { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin:16px 0; }
.card { background:var(--card); border:1px solid var(--line); border-radius:10px; padding:20px; }
.card h2 { margin-top:0; }
label { display:block; margin:10px 0; font-size:14px; color:var(--muted); }
input { display:block; width:100%; margin-top:4px; padding:10px 12px; font-size:15px; border:1px solid var(--line); border-radius:8px; color:var(--ink); }
button, .btn { display:inline-block; padding:9px 14px; border:0; border-radius:8px; background:var(--accent); color:var(--accent-ink); font-size:14px; text-decoration:none; cursor:pointer; white-space:nowrap; }
table.list { width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--line); border-radius:10px; overflow:hidden; }
table.list th, table.list td { padding:10px 12px; border-top:1px solid var(--line); vertical-align:top; text-align:left; }
table.list th { background:#f1f4f8; font-size:13px; color:var(--muted); border-top:0; }
table.list th.r, table.list td.r { text-align:right; }
table.compact td, table.compact th { padding:7px 10px; font-size:14px; }
tr.hit { background:var(--hit); }
.kpis { display:flex; flex-wrap:wrap; gap:10px; margin:12px 0; }
.kpis div { background:#fff; border:1px solid var(--line); border-radius:10px; padding:10px 14px; min-width:140px; }
.kpis b { display:block; font-size:20px; } .kpis span { font-size:12px; color:var(--muted); }
.cols { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
ul.works { padding-left:18px; margin:6px 0; font-size:14px; }
h3.role { margin-top:22px; padding:6px 10px; background:#e9efff; border-radius:6px; display:inline-block; }
.why { color:#2c3e50; font-size:13px; }
.bar { width:70px; height:6px; background:#e3e8ee; border-radius:3px; display:inline-block; margin-right:6px; vertical-align:middle; }
.bar i { display:block; height:100%; background:var(--bar); border-radius:3px; }
table.opps td { font-size:14px; }
@media (max-width: 800px) { .forms, .cols { grid-template-columns:1fr; } table.opps td:nth-child(4), table.opps th:nth-child(4) { display:none; } }
.tag { display:inline-block; font-size:11px; padding:1px 6px; border-radius:4px; background:#e9efff; color:#2c4a8a; margin-left:4px; }
.suggest-wrap { position:relative; display:block; }
ul.suggest { position:absolute; left:0; right:0; top:100%; z-index:20; margin:2px 0 0; padding:4px 0; list-style:none; background:#fff; border:1px solid var(--line); border-radius:8px; box-shadow:0 6px 20px rgba(0,0,0,.08); max-height:320px; overflow:auto; }
ul.suggest li { padding:8px 12px; cursor:pointer; font-size:14px; }
ul.suggest li:hover, ul.suggest li.active { background:var(--hit); }
ul.suggest li strong { display:block; }
.small { font-size:13px; margin:4px 0 10px; }
.downloads { margin:24px 0 8px; display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.btn.secondary { background:#e9efff; color:#2c4a8a; }
