:root{--bg:#f3f6f8;--panel:#fff;--ink:#13242d;--muted:#637984;--brand:#0a766e;--brand2:#13a594;--line:#dce6e9;--danger:#bd3b48;--warn:#a87008}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 Inter,Segoe UI,Arial,sans-serif}.app-shell{display:grid;grid-template-columns:238px 1fr;min-height:100vh}.sidebar{background:#0e252b;color:#fff;padding:24px 18px;position:sticky;top:0;height:100vh}.brand{display:block;color:#fff;text-decoration:none;font-size:20px;font-weight:800;margin:0 8px 28px}.brand span{color:#4bd4c2}.sidebar nav{display:grid;gap:4px}.sidebar nav a,.ghost{color:#c9d8dc;text-decoration:none;padding:10px 12px;border-radius:8px;border:0;background:transparent;text-align:left;width:100%;cursor:pointer}.sidebar nav a:hover,.ghost:hover{background:#173941;color:#fff}.sidebar form{position:absolute;bottom:18px;left:18px;right:18px}main{padding:22px 30px;min-width:0}.top{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.top h1{font-size:25px;margin:0}.live-dot{color:var(--brand);font-size:12px}.cards{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px;margin-bottom:20px}.metric,.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:0 3px 14px #1838400a}.metric span,.metric small{display:block;color:var(--muted)}.metric strong{display:block;font-size:25px;margin:7px 0}.panel{margin-bottom:18px}.panel h2{font-size:17px;margin:0 0 14px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}input,select,textarea{border:1px solid #cbdadd;border-radius:8px;padding:10px 11px;background:#fff;min-width:150px}button,.button{display:inline-block;border:0;border-radius:8px;background:var(--brand);color:#fff;padding:10px 15px;text-decoration:none;cursor:pointer}button:hover,.button:hover{background:var(--brand2)}.button.danger{background:var(--danger)}table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:11px 9px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:700}.badge.ok{background:#dff5ef;color:#08745f}.badge.warn{background:#fff0c9;color:#855b00}.badge.bad{background:#fde2e5;color:#a62c3a}.badge.neutral{background:#eaf0f2;color:#50646d}.auth-shell{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#0e252b,#0a766e)}.auth-shell main{width:min(460px,94vw);background:#fff;border-radius:16px;padding:28px}.auth-shell .top .live-dot{display:none}.auth-form{display:grid;gap:12px}.auth-form input{width:100%}.error{background:#fde2e5;color:#9f2634;padding:10px;border-radius:8px}.success{background:#dff5ef;color:#096e5c;padding:10px;border-radius:8px}.pagination{display:flex;gap:8px;margin-top:14px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.receipt-image{max-width:100%;max-height:680px;border-radius:10px}.muted{color:var(--muted)}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.sidebar nav{grid-template-columns:repeat(3,1fr)}.sidebar form{position:static}.cards{grid-template-columns:repeat(2,1fr)}main{padding:18px}.detail-grid{grid-template-columns:1fr}}@media(max-width:540px){.sidebar nav{grid-template-columns:1fr 1fr}.cards{grid-template-columns:1fr}}
