
:root{ --accent:#1e3553; --accent-700:#1e3553; --bg:#f6f7fb; --text:#1f1f1f; --muted:#6b7280; --card:#ffffff; --chip:#eef2ff; --chip-text:#1e3553; }
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Roboto,system-ui,-apple-system,Segoe UI,Arial,sans-serif}
.header{ background:linear-gradient(135deg,var(--accent),var(--accent-700)); color:white;padding:22px 20px; box-shadow:0 6px 24px rgba(0,0,0,.18); border-bottom:4px solid rgba(255,255,255,.2); }
.container{max-width:1200px;margin:0 auto;padding:16px}
.title{font-size:24px;font-weight:700;margin:0;letter-spacing:.3px;display:flex;align-items:center;gap:12px;line-height:1.2}
.logo{height:42px;width:auto;display:block;filter:drop-shadow(0 1px 1px rgba(0,0,0,.25))}
.subtitle{opacity:.95;margin:4px 0 0 0;font-weight:500}
.toolbar{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0;align-items:center}
select,input[type="search"]{padding:10px 12px;border-radius:12px;border:1px solid #e5e7eb;background:#fff;min-width:220px}
#searchResults{display:flex;gap:8px;flex-wrap:wrap;align-items:center;background:rgba(255,255,255,.15);padding:6px;border-radius:12px}
.navlink{color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.4);padding:8px 10px;border-radius:10px;font-weight:600}
.card{background:var(--card);border-radius:18px;padding:18px 18px;box-shadow:0 8px 24px rgba(0,0,0,.08);margin:16px 0;border:1px solid #eef;page-break-inside:avoid}
.badge{display:inline-block;background:var(--chip);color:var(--chip-text);padding:4px 10px;border-radius:999px;font-size:12px}
.h1{font-size:18px;font-weight:700;margin:0 0 12px 0}
.section-title{font-size:14px;font-weight:700;color:#4b5563;margin:0 0 6px 0;text-transform:uppercase;letter-spacing:.6px}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(max-width:900px){.grid{grid-template-columns:1fr}}
.kv{display:flex;justify-content:space-between;background:#f7f7fb;padding:10px 12px;border-radius:12px;font-size:14px;border:1px solid #eef}
.kv strong{font-weight:700}
.table{width:100%;border-collapse:separate;border-spacing:0 10px}
.table th{font-size:11px;text-transform:uppercase;color:#4b5563;text-align:left;padding:6px 8px}
.table td{background:#fff;padding:10px 8px;border-top:1px solid #eee;border-bottom:1px solid #eee;border-left:1px solid #f5f5f5;border-right:1px solid #f5f5f5}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.chip{background:var(--chip);color:var(--chip-text);padding:6px 10px;border-radius:999px;font-size:12px}
.btn{display:inline-block;background:var(--accent);color:white;text-decoration:none;padding:10px 14px;border-radius:10px;font-weight:600;cursor:pointer;border:none}
.btn:hover{filter:brightness(.95)}
.btn.suggest{background:#ffffff;color:var(--accent);border:1px solid rgba(0,0,0,.08)}
.actions{display:flex;gap:10px;justify-content:flex-end;margin:8px 0 0 0}
.footer{color:#888;font-size:12px;margin:18px 0 8px 0;text-align:center}
.hint{color:#374151;font-size:14px}
.marker{display:inline-flex;align-items:center;gap:8px}
.marker i{width:10px;height:10px;border-radius:50%}
.i-pass{background:#4caf50}.i-enavant{background:#e53935}.i-plaq{background:#1e88e5}
.pies{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:12px}
.pieCard{border:1px solid #eef;background:#fff;border-radius:16px;padding:12px;box-shadow:0 6px 18px rgba(0,0,0,.06)}
.pieWrap{display:flex;gap:12px;align-items:center}
.pieCanvas{width:120px;height:120px;border-radius:50%;}
.legend{font-size:13px;color:#374151}
.legend div{display:flex;align-items:center;gap:8px;margin:4px 0}
.legend i{display:inline-block;width:12px;height:12px;border-radius:3px}
.legend strong{margin-left:auto}
.grid-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:10px}
.card-mini{border:1px solid #eef;background:#fff;border-radius:16px;padding:14px;box-shadow:0 6px 18px rgba(0,0,0,.06)}
.card-mini h3{margin:0 0 8px 0;font-size:16px}
.card-mini .meta{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0}
.card-mini .meta .chip{padding:4px 8px;font-size:12px}
.card-mini .go{margin-top:8px;text-align:right}
.card-mini a{ text-decoration:none }

.match_block{margin:12px 0}
.match_header{display:flex;align-items:center;gap:8px}
.match_header .badge{background:#fff;color:var(--accent);border:1px solid rgba(0,0,0,.06)}

@media print{
  @page{ size:A4; margin:12mm }
  body{ background:#fff }
  .header, .toolbar, #searchResults, .footer { display:none !important }
  .card{ box-shadow:none; border:1px solid #ddd; border-radius:10px }
  .actions{ display:none !important }
}
