@font-face{font-family:Kufi;src:url('/font.woff2')}@font-face{font-family:Kufi;src:url('/font-bold.woff2');font-weight:700}
:root{font-family:Kufi,Tahoma,sans-serif;font-size:13px;color:#28353d;background:#f5f7f8;letter-spacing:0;--green:#17665f;--line:#e0e6e9;--muted:#78858e}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:var(--green)}button{border:1px solid var(--line);border-radius:5px;background:white;padding:9px 14px;color:inherit;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px}button:hover{background:#edf4f2}button.primary{background:var(--green);color:white;border-color:var(--green)}button.danger{color:#a63535;background:#fff5f5;border-color:#f1d6d6}.lucide{width:18px;height:18px;flex-shrink:0}button.icon{width:36px;min-height:36px;padding:7px}h1,h2,h3,p{margin:0}h1{font-size:24px}h2{font-size:17px}h3{font-size:14px}.muted{color:var(--muted)}small{font-size:11px}.mono{font-family:Arial,sans-serif;direction:ltr;display:inline-block;font-variant-numeric:tabular-nums}input,select,textarea{background:white;border:1px solid #cfd8dc;border-radius:5px;min-height:42px;padding:9px 11px;max-width:100%;width:100%;color:#25343c}textarea{min-height:85px}label{display:grid;gap:7px;font-size:12px}input[type=checkbox]{width:17px;min-height:17px;accent-color:var(--green)}.check{display:flex;align-items:center;gap:8px}.layout{display:grid;grid-template-columns:224px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-left:1px solid var(--line);padding:26px 16px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:24px}.brand{display:flex;gap:12px;align-items:center;padding:0 8px}.brand-symbol{width:43px;height:43px;background:var(--green);color:white;display:grid;place-items:center;border-radius:8px}.brand-symbol .lucide{width:26px;height:26px}.brand img{width:43px;height:43px;object-fit:contain}.brand strong{font-size:24px}.brand small{display:block;color:var(--muted)}.sidebar nav{display:grid;gap:5px}.sidebar nav button{border:0;justify-content:flex-start;background:transparent;padding:12px;color:#60727b;min-height:46px}.sidebar nav button.active{background:#eaf3ef;color:var(--green);font-weight:700;border-right:3px solid var(--green)}.account{margin-top:auto;border-top:1px solid var(--line);padding-top:18px;display:grid;gap:10px}.account strong{overflow-wrap:anywhere}.main{min-width:0}.topbar{height:75px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 32px;gap:15px}.period{display:flex;align-items:center;gap:12px}.period input{width:170px;min-height:36px}main{padding:30px 32px;max-width:1600px;margin:auto}.pagehead{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:26px;flex-wrap:wrap}.pagehead p{margin-top:7px;font-size:12px;color:var(--muted)}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);background:white;border-radius:7px;margin-bottom:28px}.stat{padding:22px;border-left:1px solid var(--line)}.stat:last-child{border:0}.stat label{color:var(--muted);font-size:12px;display:flex;justify-content:space-between}.stat strong{font:700 31px Arial;display:block;margin:16px 0 7px}.stat small{color:var(--muted)}.good{color:#177a58}.warn{color:#a66411}.bad{color:#b54444}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.toolbar input{width:270px}.toolbar select{width:170px}.sheet{background:white;border:1px solid var(--line);border-radius:6px;overflow:hidden}.sheet-header{display:flex;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line);align-items:center;gap:12px}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;text-align:right;white-space:nowrap;font-size:12px}th{font-size:11px;font-weight:400;color:#64757f;background:#f8fafb;padding:14px 16px;border-bottom:1px solid var(--line)}td{padding:15px 16px;border-bottom:1px solid #edf0f2}tr:last-child td{border-bottom:0}td .sub{display:block;color:var(--muted);font-size:10px;margin-top:3px}tbody tr:hover{background:#fafcfb}.badge{font-size:10px;border-radius:4px;padding:4px 9px;display:inline-block;background:#f0f2f4;color:#6a7781}.badge.paid,.badge.active{background:#eaf7ef;color:#1b8255}.badge.unpaid{background:#fff0ed;color:#bc5542}.badge.partial{background:#fff5df;color:#99701d}.empty{padding:55px 20px;text-align:center;color:#84939b;white-space:normal}.empty .lucide{width:34px;height:34px;margin-bottom:12px}.empty h3{color:#50636f;margin-bottom:8px}.split{display:grid;grid-template-columns:1.5fr 1fr;gap:24px}.summary-line{display:flex;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--line)}.progress{height:6px;background:#edf2f0;overflow:hidden;margin-top:14px}.progress progress{width:100%;height:6px;accent-color:var(--green)}.content-block{background:white;padding:24px;border-top:2px solid var(--green);margin-bottom:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:23px;border-top:1px solid var(--line);padding-top:18px}.note{padding:12px 15px;background:#f0f6f4;border-right:3px solid #7fb8a4;color:#466a5e;font-size:11px;line-height:2;margin:14px 0}.error{color:#ad3636;white-space:pre-wrap;font-size:12px;line-height:1.9;margin:12px 0}.hint{font-size:10px;color:var(--muted);line-height:1.8}.pillrow{display:flex;gap:8px;flex-wrap:wrap;margin:15px 0}.auth{min-height:100vh;display:grid;place-items:center;background:#eef3f2;padding:20px}.auth-box{background:white;border:1px solid var(--line);border-radius:8px;width:440px;max-width:100%;padding:34px}.auth-box .brand{margin-bottom:30px}.auth-box h1{font-size:21px;margin-bottom:10px}.auth-box form{display:grid;gap:18px;margin-top:24px}.auth-box p{color:var(--muted);font-size:12px}dialog{width:700px;max-width:calc(100% - 24px);max-height:92vh;border:1px solid var(--line);border-radius:8px;padding:0;color:inherit}dialog::backdrop{background:#1c2f3b77}.modal-head{padding:18px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:white;z-index:1}.modal-body{padding:24px}#toast{position:fixed;bottom:24px;left:24px;max-width:calc(100% - 48px);background:#163f37;color:white;padding:13px 23px;border-radius:6px;z-index:20;display:none}#toast.visible{display:block}.extras-row{display:grid;grid-template-columns:1fr 120px 36px;gap:8px;margin-top:8px}.pagination{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 18px;border-top:1px solid var(--line)}.logo-preview{height:65px;max-width:150px;object-fit:contain}.receipt{padding:25px;line-height:2.4}.receipt dl{display:grid;grid-template-columns:140px 1fr}.receipt dt{color:var(--muted)}.receipt dd{margin:0}.section-gap{margin-top:24px}.permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.chart-row{display:grid;grid-template-columns:100px 1fr 60px;gap:12px;align-items:center;padding:16px 20px}.chart-row progress{width:100%;accent-color:var(--green)}
@media(max-width:1100px){.layout{grid-template-columns:185px minmax(0,1fr)}main{padding:23px 20px}.topbar{padding:0 20px}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border-left:0}.stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.split{grid-template-columns:1fr}}
@media(max-width:700px){.layout{display:block}.sidebar{height:auto;position:static;padding:14px}.sidebar .brand{display:none}.sidebar nav{display:flex;overflow:auto;gap:5px}.sidebar nav button{flex-shrink:0;font-size:11px;padding:8px}.sidebar nav button.active{border-right:0;border-bottom:2px solid var(--green)}.account{display:none}.topbar{height:auto;min-height:68px;flex-wrap:wrap;padding:12px 16px}.topbar>span{max-width:100%;overflow-wrap:anywhere;font-size:11px}main{padding:20px 13px}.pagehead h1{font-size:21px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.stat{padding:16px}.stat strong{font-size:26px}.modal-body{padding:18px}.permission-grid{grid-template-columns:1fr}.toolbar input{width:100%}.toolbar select{flex:1;min-width:120px}.extras-row{grid-template-columns:1fr 80px 36px}.period{font-size:11px}.period input{width:150px}}
@media print{body>*{display:none!important}body>dialog[open]{display:block!important;position:static;max-width:none;width:100%;max-height:none;border:0}dialog .modal-head button,.no-print{display:none!important}dialog::backdrop{display:none}}
