/* Shared styles for tracking.html and admin.html */
:root{--red:#D8141C;--red-dark:#B30F16;--black:#0E0E10;--ink:#1B1B1F;--grey-50:#F5F5F6;--grey-200:#E3E3E6;--grey-500:#6B6B73;--green:#17803d;--amber:#b45309;--font-head:'Barlow Condensed',Impact,sans-serif;--font-body:'Barlow',system-ui,sans-serif;--radius:6px;--shadow:0 10px 30px rgba(0,0,0,.08)}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--font-body);font-size:1.0625rem;line-height:1.6;color:var(--ink);background:var(--grey-50);overflow-x:hidden}
h1,h2,h3{font-family:var(--font-head);text-transform:uppercase;line-height:1.05;margin:0;letter-spacing:.01em}
a{color:inherit;text-decoration:none}
:focus-visible{outline:3px solid var(--red);outline-offset:2px}
.container{width:100%;max-width:1100px;margin-inline:auto;padding-inline:1.25rem}
[hidden]{display:none!important}

/* Top bar */
.topbar{background:var(--black);border-bottom:3px solid var(--red);height:68px}
.topbar .container{height:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.logo{display:flex;align-items:center;gap:.6rem;font-family:var(--font-head);font-weight:800;font-size:1.6rem;color:#fff;text-transform:uppercase}
.logo i{display:grid;place-items:center;width:36px;height:36px;background:var(--red);border-radius:var(--radius);font-size:.95rem}
.logo span span{color:var(--red)}
.back{color:#d6d6da;font-weight:500;font-size:.95rem}.back:hover{color:#fff}

/* Buttons & fields */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;padding:.6rem 1.3rem;border:2px solid transparent;border-radius:var(--radius);font-family:var(--font-head);font-weight:700;font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.btn:hover{transform:translateY(-1px)}
.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:var(--red-dark)}
.btn-dark{background:var(--black);color:#fff}.btn-dark:hover{background:var(--red)}
.btn-line{background:#fff;border-color:var(--grey-200);color:var(--ink)}.btn-line:hover{border-color:var(--red);color:var(--red)}
.btn-sm{min-height:36px;padding:.25rem .8rem;font-size:.95rem}
label{display:block;font-weight:600;font-size:.95rem;margin-bottom:.35rem}
input,select,textarea{width:100%;font:inherit;padding:.75rem .95rem;border:1.5px solid var(--grey-200);border-radius:var(--radius);background:#fff}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--red)}
textarea{min-height:90px;resize:vertical}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.full{grid-column:1/-1}

/* Cards, badges */
.card{background:#fff;border:1px solid var(--grey-200);border-top:4px solid var(--red);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(1.2rem,3vw,2rem);margin-bottom:1.5rem}
.card h2{font-size:1.9rem;margin-bottom:1rem}
.badge{display:inline-block;padding:.3rem .8rem;border-radius:99px;background:var(--red);color:#fff;font-weight:600;font-size:.9rem;white-space:nowrap}
.badge.done{background:var(--green)}.badge.held{background:var(--amber)}
.notice{padding:1rem 1.2rem;border-radius:var(--radius);font-weight:500;margin-top:1rem}
.notice.bad{background:#fdecec;color:#9b1118;border:1px solid #f4b8bb}
.notice.ok{background:#e8f6ec;color:#17623a;border:1px solid #b6e1c4}
.toast{position:fixed;left:50%;bottom:1.5rem;transform:translateX(-50%);background:var(--black);color:#fff;padding:.7rem 1.2rem;border-radius:var(--radius);z-index:50;box-shadow:var(--shadow)}

@media (max-width:640px){.grid2{grid-template-columns:1fr}.logo{font-size:1.3rem}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
