:root{
  --bg:#0b0f0e; --card:#111816; --muted:#9fb0a9; --text:#e9f0ed; --accent:#2bb673;
  --danger:#e05d5d; --warn:#f3c969; --ok:#31d07f; --border:#20302a;
  --shadow: 0 8px 25px rgba(0,0,0,.35); --radius:16px; --pad2:18px; --max: 980px;
}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,"Noto Sans",sans-serif;color:var(--text);
  background:linear-gradient(180deg,#070a09 0%,#0b0f0e 55%,#0a0d0c 100%)}
a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}
.container{max-width:var(--max);margin:0 auto;padding:18px 14px 64px;}
.topbar{position:sticky;top:0;z-index:10;background:rgba(10,14,13,.88);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--border)}
.topbar-inner{max-width:var(--max);margin:0 auto;display:flex;align-items:center;gap:10px;padding:12px 14px}
.brand{font-weight:800;letter-spacing:.2px}
.nav{display:flex;flex-wrap:wrap;gap:10px;margin-left:auto}
.nav a{padding:8px 10px;border:1px solid transparent;border-radius:12px}
.nav a:hover{border-color:var(--border);text-decoration:none;background:rgba(255,255,255,.02)}
.nav .muted{color:var(--muted)}
.userchip{display:none}
@media(min-width:860px){.userchip{display:block;margin-left:10px;color:var(--muted);font-size:13px}}

.card{background:radial-gradient(1200px 400px at 0% 0%, rgba(43,182,115,.10), transparent 60%),
            radial-gradient(700px 280px at 100% 0%, rgba(243,201,105,.08), transparent 60%), var(--card);
  border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:var(--pad2);margin:14px 0}
.card h1,.card h2,.card h3{margin:0 0 10px}.sub{color:var(--muted);margin-top:-6px;margin-bottom:10px}
.grid{display:grid;gap:12px}.grid-2{grid-template-columns:1fr}@media(min-width:860px){.grid-2{grid-template-columns:1fr 1fr}}
.table{width:100%;border-collapse:collapse;overflow:hidden;border-radius:12px;border:1px solid var(--border)}
.table th,.table td{padding:10px 10px;border-bottom:1px solid var(--border);vertical-align:top;font-size:14px}
.table th{text-align:left;color:var(--muted);font-weight:700;background:rgba(255,255,255,.02)}
.table tr:hover td{background:rgba(255,255,255,.02)}.table tr:last-child td{border-bottom:none}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 14px;background:rgba(43,182,115,.14);
  border:1px solid rgba(43,182,115,.35);color:var(--text);border-radius:14px;font-weight:700;cursor:pointer}
.btn:hover{background:rgba(43,182,115,.20)}.btn.secondary{background:rgba(255,255,255,.05);border-color:var(--border)}
.btn.danger{background:rgba(224,93,93,.12);border-color:rgba(224,93,93,.35)}
.btn.small{padding:8px 10px;border-radius:12px;font-size:13px}.btn.block{width:100%}
.input,select,textarea{width:100%;padding:12px 12px;background:rgba(255,255,255,.03);border:1px solid var(--border);
  border-radius:14px;color:var(--text);outline:none;font-size:15px}
textarea{min-height:92px;resize:vertical}
label{display:block;color:var(--muted);font-weight:700;font-size:13px;margin:8px 0 6px}
.row{display:flex;gap:10px;flex-wrap:wrap}.row>*{flex:1}
.badge{display:inline-block;padding:4px 9px;border-radius:999px;border:1px solid var(--border);color:var(--muted);font-size:12px}
.badge.ok{color:var(--ok);border-color:rgba(49,208,127,.35)}
.badge.warn{color:var(--warn);border-color:rgba(243,201,105,.35)}
.badge.danger{color:var(--danger);border-color:rgba(224,93,93,.35)}
.alert{padding:10px 12px;border-radius:14px;border:1px solid var(--border);margin:10px 0;background:rgba(255,255,255,.03)}
.alert.success{border-color:rgba(49,208,127,.35);background:rgba(49,208,127,.08)}
.alert.error{border-color:rgba(224,93,93,.35);background:rgba(224,93,93,.08)}
.alert.info{border-color:rgba(243,201,105,.35);background:rgba(243,201,105,.06)}
.kv{display:flex;gap:10px;flex-wrap:wrap;align-items:center;color:var(--muted)}.kv strong{color:var(--text)}
hr.sep{border:none;border-top:1px solid var(--border);margin:14px 0}
.photo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media(min-width:860px){.photo-grid{grid-template-columns:repeat(4,1fr)}}
.photo{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:rgba(0,0,0,.25)}
.photo img{width:100%;height:150px;object-fit:cover;display:block}.photo .cap{padding:8px 10px;color:var(--muted);font-size:12px}
.print-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
@media print{
  body{background:#fff;color:#000}
  .topbar,.print-actions,.btn,.alert,.nav{display:none!important}
  .card{box-shadow:none;border:1px solid #ddd;background:#fff}
  a{color:#000;text-decoration:none}
}
