:root{--primary:#1e6f5c;--primary-dark:#155446;--accent:#e8a317;--bg:#f4f6f8;--card:#fff;--line:#e1e6ea;--text:#243137;--muted:#6b7b85;--ok:#2e8b57;--warn:#c9831a;--danger:#c0392b;--info:#2980b9;--purple:#7d5ba6}*{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{background:var(--bg);min-height:100%;color:var(--text);-webkit-font-smoothing:antialiased;font-family:Segoe UI,Arial Hebrew,Arial,sans-serif}a{color:inherit;text-decoration:none}h1{font-size:21px;font-weight:700}.topbar{background:var(--primary);color:#fff;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 22px;display:flex}.topbar .brand{font-size:20px;font-weight:700}.topbar .who{opacity:.9;font-size:13px}.nav{border-bottom:1px solid var(--line);z-index:5;background:#fff;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 18px;display:flex;position:sticky;top:0}.nav a,.nav button{border:1px solid var(--line);color:var(--text);cursor:pointer;background:#fff;border-radius:8px;padding:8px 13px;font-family:inherit;font-size:12.5px}.nav a.active{background:var(--primary);color:#fff;border-color:var(--primary)}.nav .logout{color:var(--danger);border-color:var(--danger);margin-inline-start:auto}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px;box-shadow:0 1px 3px #0000000a}.btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:9px;padding:12px 22px;font-family:inherit;font-size:15px}.btn:hover{background:var(--primary-dark)}.sub{color:var(--muted);margin:0 0 22px;font-size:14px}.center-box{max-width:420px;margin:40px auto}.field{flex:1;min-width:180px;margin-bottom:14px}.field label{margin-bottom:5px;font-size:13px;font-weight:600;display:block}.field input,.field select{border:1px solid var(--line);background:#fff;border-radius:8px;width:100%;padding:10px;font-family:inherit;font-size:14px}.otp{direction:ltr;justify-content:center;gap:10px;margin:18px 0;display:flex}.otp input{text-align:center;border:1px solid var(--line);border-radius:10px;width:48px;height:56px;font-size:24px}.error-msg{color:var(--danger);text-align:center;margin:8px 0;font-size:13px}.btn.sm{padding:7px 13px;font-size:13px}.btn.accent{background:var(--accent);color:#3a2c00}.btn.accent:hover{background:#d59310}.btn.ghost{color:var(--primary);border:1px solid var(--primary);background:#fff}.btn.ghost:hover{background:#f0f6f4}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.toolbar input,.toolbar select{border:1px solid var(--line);border-radius:8px;padding:9px;font-family:inherit;font-size:13px}.row{flex-wrap:wrap;gap:16px;display:flex}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:right;border-bottom:1px solid var(--line);padding:10px 9px}th{color:var(--muted);background:#f7f9fa;font-size:12px;font-weight:700}tr:hover td{background:#fafcfb}.link{color:var(--primary);cursor:pointer;font-size:13px;text-decoration:underline}.pill{color:var(--ok);background:#e6f4ec;border-radius:20px;padding:3px 9px;font-size:11px;font-weight:700}.pill.no{color:var(--muted);background:#eef2f4}.note{color:#7a5e12;background:#fdf6e6;border:1px solid #f0dcae;border-radius:8px;padding:12px;font-size:13px}.actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.upload{border:2px dashed var(--line);text-align:center;color:var(--muted);cursor:pointer;border-radius:10px;padding:16px;font-size:13px}.upload:hover{border-color:var(--primary);color:var(--primary)}.upload.filled{border-style:solid;border-color:var(--ok);color:var(--ok)}.field .req{color:var(--danger)}.prefill{color:var(--info);background:#eaf2fb;border-radius:5px;margin-right:6px;padding:2px 7px;font-size:11px}fieldset{border:1px solid var(--line);border-radius:12px;margin:0 0 18px;padding:18px}legend{color:var(--primary-dark);padding:0 8px;font-size:14px;font-weight:700}.info{color:#1c5a96;background:#eaf2fb;border:1px solid #c5dbf3;border-radius:8px;padding:12px;font-size:13px}.switch{align-items:center;gap:8px;margin-bottom:12px;font-size:14px;display:flex}.exp-row{border:1px solid var(--line);background:#f9fbfa;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px;padding:12px;display:flex}.exp-row .grow{flex:1;min-width:120px}.exp-row input,.exp-row select{border:1px solid var(--line);border-radius:7px;width:100%;padding:8px;font-family:inherit;font-size:13px}.miniup{color:var(--info);cursor:pointer;white-space:nowrap;font-size:12px}.miniup.filled{color:var(--ok)}.rm{color:var(--danger);cursor:pointer;font-size:16px;font-weight:700}.total{border-top:2px solid var(--line);justify-content:space-between;margin-top:6px;padding:12px 4px;font-size:16px;font-weight:700;display:flex}.popup-bg{z-index:20;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.popup{background:#fff;border-radius:14px;width:100%;max-width:520px;max-height:88vh;margin:18px;padding:26px;overflow:auto}.popup h3{color:var(--primary-dark);margin:0 0 10px}.page-wrap{max-width:1000px;margin:24px auto;padding:0 18px}.stats{flex-wrap:wrap;gap:14px;margin-bottom:20px;display:flex}.stat{border:1px solid var(--line);background:#fff;border-radius:12px;flex:1;min-width:130px;padding:16px}.stat .n{color:var(--primary);font-size:24px;font-weight:800}.stat .l{color:var(--muted);font-size:12.5px}.timeline{margin:18px 0;padding:0;list-style:none}.timeline li{border-right:2px solid var(--primary);padding:9px 18px 9px 0;font-size:14px;position:relative}.timeline li:before{content:"";background:var(--primary);border-radius:50%;width:11px;height:11px;position:absolute;top:13px;right:-6px}.timeline li.muted{border-color:var(--line);color:var(--muted)}.timeline li.muted:before{background:var(--line)}.tag{color:var(--muted);background:#eef2f4;border-radius:6px;padding:3px 8px;font-size:11px}.kv{border-bottom:1px dashed var(--line);gap:8px;padding:7px 0;font-size:14px;display:flex}.kv .k{color:var(--muted);min-width:130px}.badge{border-radius:20px;padding:4px 11px;font-size:12px;font-weight:700;display:inline-block}.b-new{color:var(--info);background:#eaf2fb}.b-check{color:var(--warn);background:#fdf2e0}.b-clar{color:var(--purple);background:#f1eaf7}.b-miss{color:#b5651d;background:#fbeee0}.b-ok{color:var(--ok);background:#e6f4ec}.b-paid{color:#34495e;background:#e7eef4}.b-rej{color:var(--danger);background:#fbeae8}@media (max-width:640px){.card table{white-space:nowrap;-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}}
