*{
    box-sizing:border-box
}

body{
    margin:0;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif
}

.bg-slate-50{
    background:#f9fafb
}

.text-slate-900{
    color:#111827
}

.min-h-screen{
    min-height:100vh}.flex{display:flex}.gap-2{gap:.5rem}.sidebar{width:280px;background:#0f3f2e;color:white;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;transition:transform .2s ease}.brand{display:flex;gap:12px;align-items:center;padding:24px 20px;border-bottom:1px solid rgba(255,255,255,.12)}.brand img{width:52px;height:52px;border-radius:50%;object-fit:cover;background:white}.brand b{font-size:21px;display:block}.brand small{font-size:12px;color:#d1fae5}.sidebar-toggle{position:absolute;right:-44px;top:18px;width:38px;height:38px;border:0;border-radius:10px;background:#0f3f2e;color:white;font-size:18px;font-weight:900;cursor:pointer;box-shadow:0 8px 18px rgba(15,63,46,.22)}.nav{padding:18px 14px;display:grid;gap:7px;overflow:auto}.nav a{color:white;text-decoration:none;padding:13px 14px;border-radius:8px;font-weight:700;font-size:14px}.nav a:hover,.nav a.active{background:white;color:#0f3f2e}.side-user{margin-top:auto;padding:18px;border-top:1px solid rgba(255,255,255,.12);font-size:12px;color:#d1fae5}.main{margin-left:280px;width:calc(100% - 280px);transition:margin .2s ease,width .2s ease}.sidebar-collapsed .sidebar{transform:translateX(-280px)}.sidebar-collapsed .main{margin-left:0;width:100%}.topbar{min-height:88px;background:white;border-bottom:1px solid #e5e7eb;padding:18px 28px;display:flex;justify-content:space-between;align-items:center}.topbar h1{margin:0;color:#0f3f2e;font-size:28px}.topbar p{margin:6px 0 0;color:#64748b;font-size:14px}.active-event{display:inline-flex;margin-top:8px;padding:7px 10px;border-radius:8px;background:#dcfce7;color:#166534;font-size:13px;font-weight:800}.active-event.none{background:#fee2e2;color:#991b1b}.content{padding:28px}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:white;border:1px solid #d7dee8;border-radius:8px;padding:22px;box-shadow:0 8px 20px rgba(15,63,46,.05)}.card h2,.card h3{margin-top:0;color:#0f3f2e}.stat{border-left:5px solid #16a34a}.stat strong{font-size:34px;color:#111827}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;padding:11px 17px;font-weight:800;text-decoration:none;cursor:pointer}.btn-sm{padding:7px 10px;font-size:12px;border-radius:8px}.btn-primary{background:#0f3f2e;color:white}.btn-green{background:#16a34a;color:white}.btn-light{background:#ecfdf5;color:#0f3f2e}.btn-danger{background:#fee2e2;color:#991b1b}.btn-outline{border:1px solid #cbd5e1;background:white;color:#0f3f2e}.table{width:100%;border-collapse:collapse;background:white;border-radius:8px;overflow:hidden}.table th{background:#f1f5f9;text-align:left;color:#334155;font-size:13px}.table th,.table td{padding:13px;border-bottom:1px solid #e5e7eb}.table tr.unit-row td{background:linear-gradient(90deg,color-mix(in srgb,var(--unit-color) 14%,white),white 48%);border-left:4px solid var(--unit-color)}.input,.select,.textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:12px;background:white}.label{display:block;font-weight:800;font-size:13px;margin:12px 0 6px}.modal{display:none;position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:20;align-items:center;justify-content:center;padding:20px}.modal.open{display:flex}.modal-box{background:white;border-radius:8px;padding:24px;max-width:760px;width:100%;max-height:90vh;overflow:auto}.wide-modal{max-width:1120px}.close{float:right;font-size:24px;cursor:pointer}.hero{min-height:100vh;background:linear-gradient(135deg,#0f3f2e,#16a34a);display:flex;align-items:center;justify-content:center;padding:40px}.hero-card{background:white;border-radius:8px;max-width:1100px;width:100%;padding:48px;display:grid;grid-template-columns:1.1fr .9fr;gap:30px;box-shadow:0 25px 70px rgba(0,0,0,.25)}.hero h1{font-size:52px;line-height:1.05;color:#0f3f2e;margin:0}.hero p{color:#475569;font-size:18px}.logo-large{width:170px;height:170px;border-radius:50%;object-fit:cover}.pill{display:inline-block;padding:8px 12px;border-radius:999px;background:#dcfce7;color:#166534;font-weight:800}.actions{display:flex;gap:10px;flex-wrap:wrap}.searchbar{display:flex;gap:10px;margin-bottom:18px}.w-full{width:100%}.text-right{text-align:right}.muted{color:#64748b}.print-only{display:none}.unit-badge{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:#111827}.unit-badge span{width:12px;height:12px;border-radius:50%;background:var(--unit-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--unit-color) 18%,transparent)}.unit-card{border-left:6px solid var(--unit-color);background:linear-gradient(90deg,color-mix(in srgb,var(--unit-color) 16%,white),white 46%)}.unit-card strong{display:block;font-size:20px}.rank-badge{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-width:36px;height:30px;border-radius:999px;background:#e2e8f0;color:#334155;font-weight:900}.rank-badge svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.rank-badge.top-1{background:#fef3c7;color:#92400e}.rank-badge.top-2{background:#e5e7eb;color:#374151}.rank-badge.top-3{background:#ffedd5;color:#9a3412}.pagination{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px}.pagination a{padding:8px 12px;border:1px solid #cbd5e1;border-radius:8px;text-decoration:none;color:#0f3f2e;font-weight:800;background:white}.pagination a.active{background:#0f3f2e;color:white;border-color:#0f3f2e}.score-grid{display:grid;grid-template-columns:1fr 150px;gap:10px;align-items:end}.criteria-page-grid{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:20px}@media(max-width:900px){.sidebar{position:relative;width:100%;height:auto;transform:none!important}.sidebar-toggle{display:none}.main,.sidebar-collapsed .main{margin-left:0;width:100%}.min-h-screen{display:block}.grid-2,.grid-3,.grid-4,.hero-card,.criteria-page-grid{grid-template-columns:1fr}.topbar{height:auto;gap:10px;align-items:flex-start;flex-direction:column}}@media print{.sidebar,.topbar,.btn,.searchbar,.pagination{display:none!important}.main{margin:0;width:100%}.content{padding:0}.card{box-shadow:none;border:none}.print-only{display:block}}
