:root{--navy:#115160;--teal:#2fa9af;--teal-dark:#17767c;--coral:#ef6955;--pale:#e6f4f4;--ink:#1c3b45;--muted:#5d6f75;--line:#e3e4df;--bg:#fbf7f2;--white:#fff;--green:#168a68;--green-bg:#e3f6ee;--red:#b04a43;--red-bg:#fbe9e7;--amber:#9c6a14;--amber-bg:#fff3dc;--radius:14px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:Nunito,system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px}a{color:var(--teal-dark)}h1{color:var(--navy);margin:0 0 16px;font-size:24px;font-weight:900}h2{color:var(--navy);margin:24px 0 10px;font-size:18px;font-weight:800}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:18px}.btn{font:inherit;cursor:pointer;background:var(--teal);color:#fff;border:0;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;font-weight:800;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{background:var(--white);color:var(--navy);border:1.5px solid var(--line)}.btn.danger{background:var(--red)}.field{flex-direction:column;gap:4px;margin-bottom:12px;display:flex}.field label,.field .label{color:var(--navy);font-size:13px;font-weight:800}.field input,.field select,.field textarea{font:inherit;border:1.5px solid var(--line);color:var(--ink);background:#fff;border-radius:10px;padding:9px 11px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--teal);border-color:#0000}.field .error{color:var(--red);font-size:13px;font-weight:700}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.grid2{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}@media (max-width:720px){.grid2{grid-template-columns:1fr}}.pill{border-radius:999px;padding:2px 9px;font-size:12px;font-weight:800;display:inline-block}.pill.ok{background:var(--green-bg);color:var(--green)}.pill.off{color:var(--muted);background:#eef1f2}.pill.warn{background:var(--amber-bg);color:var(--amber)}.banner{border-radius:12px;margin-bottom:14px;padding:12px 14px;font-weight:700}.banner.warn{background:var(--amber-bg);color:var(--amber)}.banner.error{background:var(--red-bg);color:var(--red)}.banner.ok{background:var(--green-bg);color:var(--green)}.muted{color:var(--muted)}table{border-collapse:collapse;background:#fff;width:100%}th{text-align:left;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);border-bottom:1px solid var(--line);padding:10px;font-size:12px}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:10px}tr.click{cursor:pointer}tr.click:hover td{background:var(--pale)}.shell{min-height:100vh;display:flex}.topbar{display:none}.sidebar{background:var(--white);border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;gap:4px;width:220px;padding:18px 12px;display:flex}.sidebar-logo{width:130px;margin:0 8px 6px}.sidebar-title{margin:0 8px 14px;font-size:12px;font-weight:800}.sidebar-user{word-break:break-all;margin-top:auto;padding:0 8px;font-size:13px}.nav-link{color:var(--navy);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-weight:800;text-decoration:none;display:flex}.nav-link.active{color:var(--white);background:var(--teal)}.nav-badge{color:#fff;text-align:center;background:#e5484d;border-radius:999px;min-width:22px;margin-left:auto;padding:1px 7px;font-size:12px}.main{flex:1;min-width:0;padding:24px 28px}@media (max-width:820px){.shell{flex-direction:column}.topbar{z-index:20;background:var(--white);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:8px 14px;display:flex;position:sticky;top:0}.sidebar{border-right:0;border-bottom:1px solid var(--line);width:auto;padding:8px 12px 14px;display:none}.sidebar.open{z-index:19;display:flex;position:sticky;top:55px;box-shadow:0 10px 20px #15324b22}.sidebar-logo,.sidebar-title{display:none}.sidebar-user{margin-top:8px}.nav-link{padding:12px}.main{padding:16px 14px 40px}h1{font-size:21px}body{font-size:16px}.btn{padding:10px 14px}.card{padding:14px}table.cards thead{display:none}table.cards,table.cards tbody,table.cards tr,table.cards td{width:100%;display:block}table.cards tr{border-bottom:1px solid var(--line);padding:10px 12px}table.cards td{border:0;padding:3px 0}table.cards td[data-label]:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:800;display:block}}.link{color:var(--teal-dark);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn.small{padding:6px 10px;font-size:13px}.thumb{background:var(--pale);border-radius:10px;flex:none;place-items:center;width:52px;height:52px;display:grid;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%}.switch{cursor:pointer;align-items:center;gap:8px;display:inline-flex}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch .track{background:#cfd6d8;border-radius:99px;flex:none;width:42px;height:24px;transition:background .15s;position:relative}.switch .track:after{content:"";background:var(--white);border-radius:50%;width:18px;height:18px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch input:checked+.track{background:var(--green)}.switch input:checked+.track:after{transform:translate(18px)}.switch input:focus-visible+.track{outline:2px solid var(--teal);outline-offset:2px}.switch input:disabled+.track{opacity:.6}.chips{gap:8px;margin-bottom:12px;padding-bottom:4px;display:flex;overflow-x:auto}.chip{font:inherit;border:1.5px solid var(--line);background:var(--white);color:var(--ink);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:6px;padding:7px 12px;font-size:14px;font-weight:700;display:inline-flex}.chip.on{background:var(--navy);border-color:var(--navy);color:var(--white)}.chip .n{opacity:.75;font-size:12px}
