:root{--p:#582278;--p2:#351047;--g:#d7a72d;--bg:#f5f3f7;--ink:#27222b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui}header{height:68px;background:linear-gradient(110deg,var(--p),var(--p2));color:white;padding:0 24px;display:flex;align-items:center;position:sticky;top:0;z-index:3}header a{color:white;text-decoration:none;font-size:18px}header b{color:#ffe17b;margin-right:8px}header span{margin-left:auto}header span a{color:#ffe17b;font-size:14px}header button{display:none;margin-left:auto;background:none;border:0;color:white;font-size:24px}nav{position:fixed;top:68px;bottom:0;width:220px;background:white;padding:16px 10px;border-right:1px solid #e5dfea}nav a{display:block;padding:11px 14px;color:#45384b;text-decoration:none;border-radius:8px}nav a:hover{background:#f1e9f5;color:var(--p)}main{max-width:1450px;margin:auto;padding:27px}.logged{margin-left:220px}h1{font-size:26px;margin:0 0 20px}h2{font-size:18px;margin-top:0}.card,.table{background:white;border:1px solid #e7e1e9;border-radius:12px;padding:21px;margin-bottom:19px;box-shadow:0 4px 16px #3210490c}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.two{grid-template-columns:repeat(2,1fr)}.stats b{display:block;font-size:27px;color:var(--p)}.stats small{color:#746a79}.formgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 15px}label{display:block;font-weight:600;color:#514757;margin-bottom:14px}input,select,textarea{width:100%;padding:10px;border:1px solid #cec5d1;border-radius:7px;margin-top:5px;font:inherit}textarea{min-height:78px}.btn,button.btn{display:inline-block;background:var(--p);color:white;border:0;border-radius:7px;padding:10px 16px;text-decoration:none;font-weight:700;cursor:pointer}.secondary{background:#625968}.toolbar,.filters{display:flex;align-items:end;justify-content:space-between;gap:10px}.toolbar form,.filters{flex-wrap:wrap}.table{padding:0;overflow:auto}table{width:100%;border-collapse:collapse;min-width:680px}th,td{padding:12px 14px;text-align:left;border-bottom:1px solid #eee9f0}th{background:#f3edf6;color:#523365;font-size:13px}.badge{background:#eee7f2;color:#543568;padding:4px 8px;border-radius:20px;font-size:12px}.alert{padding:12px 15px;border-radius:8px;margin-bottom:17px}.success{background:#e5f6eb;color:#156132}.error{background:#fdeaea;color:#9b2828}.login{max-width:440px;margin:8vh auto}.mark{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:var(--p);color:#ffd76a;font-size:22px;font-weight:900;margin:auto}.login h2{text-align:center}footer{text-align:center;padding:25px;color:#827787}@media(max-width:850px){header button{display:block}header span{display:none}nav{transform:translateX(-100%);transition:.2s;z-index:2}.open nav{transform:none}.logged{margin-left:0}.grid,.two{grid-template-columns:1fr 1fr}.formgrid{grid-template-columns:1fr 1fr}}@media(max-width:560px){header{padding:0 14px}main{padding:17px}.grid,.two,.formgrid{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.card{padding:16px}}
.danger{background:#9b2828!important}.center{text-align:center}.receipt{max-width:760px;margin:auto}.receipt h2{text-align:center}.receipt-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.receipt-amount{font-size:30px;font-weight:900;color:var(--p);text-align:center;padding:20px;border:2px solid var(--g);margin:20px 0}@media print{header,nav,footer,.no-print{display:none!important}.logged{margin:0}main{padding:0}.receipt{border:0;box-shadow:none}}.photo-capture{display:flex;gap:22px;align-items:center;padding:18px;background:#f5eff8;border-radius:12px;margin-bottom:20px}.photo-capture img,.print-photo{width:150px;height:150px;object-fit:cover;border-radius:12px;border:3px solid var(--g)}.photo-capture label{margin:0}.photo-capture input{max-width:420px}@media(max-width:560px){.photo-capture{flex-direction:column;align-items:flex-start}}.photo-capture video{width:240px;max-width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;border:3px solid var(--g);background:#111}.brand{display:flex;align-items:center;gap:9px}.brand-logo{width:42px;height:42px;object-fit:contain}.form-logo{display:block;width:92px;height:92px;object-fit:contain;margin:0 auto 12px}.branding-logo{width:120px;height:120px;object-fit:contain}.branding-preview{display:flex;align-items:center;gap:22px;padding:18px;background:#f5eff8;border-radius:12px;margin-bottom:20px}.logo-fallback{display:inline-grid;place-items:center;background:var(--p);color:var(--g);border-radius:50%;width:52px;height:52px;font-weight:900}.brand .logo-fallback{width:42px;height:42px}.branding-preview .logo-fallback{width:120px;height:120px;font-size:26px}.print-brand{display:none}@media print{.print-brand{display:flex!important;align-items:center;justify-content:center;gap:14px;border-bottom:2px solid var(--g);padding:0 0 12px;margin-bottom:18px}.print-brand-logo{width:70px;height:70px;object-fit:contain}.print-brand b,.print-brand small{display:block}.print-brand b{font-size:20px;color:var(--p)}}.profile-head{display:flex;align-items:center;gap:20px}.right{float:right}