.frg-wrap{--frg-a:#667eea;--frg-b:#764ba2;--frg-tint:#eef0fd;--frg-tint2:#f5f6fe;--frg-line:#c7cdf5;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;color:#333;box-sizing:border-box}.frg-wrap *{box-sizing:border-box}.frg-grid{display:grid;grid-template-columns:minmax(300px,1fr) minmax(300px,1.3fr);gap:20px;align-items:start}@media(max-width:820px){.frg-grid{grid-template-columns:1fr}}.frg-card{background:#fff;border-radius:16px;padding:16px;box-shadow:0 4px 20px rgb(0 0 0 / .08)}.frg-head{background:linear-gradient(135deg,var(--frg-a),var(--frg-b));color:#fff;text-align:center;border-radius:12px;padding:14px;margin-bottom:16px}.frg-head h3{margin:0;color:#fff;font-size:17px}.frg-head p{margin:4px 0 0;font-size:12px;opacity:.9}.frg-field{margin-bottom:12px}.frg-field label{display:block;font-size:12px;font-weight:600;color:#555;margin-bottom:4px}.frg-field input,.frg-field select,.frg-field textarea{width:100%;padding:9px 10px;border:1px solid #dcdfe6;border-radius:8px;font-size:13px;background:#fff;color:#333}.frg-field input:focus,.frg-field select:focus,.frg-field textarea:focus{outline:none;border-color:var(--frg-a);box-shadow:0 0 0 2px rgb(102 126 234 / .2)}.frg-sub{color:var(--frg-a);font-size:16px;font-weight:700;margin:18px 0 10px}.frg-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.frg-btn{flex:1;min-width:110px;border:0;border-radius:8px;padding:10px 12px;color:#fff;font-weight:600;font-size:13px;cursor:pointer;transition:opacity .2s}.frg-btn:hover{opacity:.88}.frg-btn:disabled{opacity:.5;cursor:wait}.frg-pdf{background:linear-gradient(135deg,var(--frg-a),var(--frg-b))}.frg-img{background:linear-gradient(135deg,#38b26d,#2e8b57)}.frg-clr{background:#e8eaf0;color:#555}.frg-preview-wrap{overflow-x:auto}.frg-receipt{background:#fff;border:1px solid var(--frg-a);border-radius:8px;padding:22px;font-size:12px;color:#222;min-width:420px}.frg-r-top{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--frg-a);padding-bottom:8px;gap:12px}.frg-r-inst{text-align:center;flex:1}.frg-r-inst img{max-height:54px;margin-bottom:4px}.frg-r-name{color:var(--frg-a);font-size:22px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}.frg-r-small{font-size:10px;color:#777;white-space:pre-line}.frg-r-meta{text-align:right;font-size:10px;color:var(--frg-a);min-width:110px}.frg-r-meta b{display:block;font-size:13px;color:#111}.frg-r table{width:100%;border-collapse:collapse}.frg-receipt table{width:100%;border-collapse:collapse;margin-top:14px}.frg-receipt td,.frg-receipt th{border:1px solid var(--frg-a);padding:6px 8px;font-size:11px}.frg-receipt td.l{background:var(--frg-tint);color:#667;width:38%}.frg-receipt th{background:linear-gradient(135deg,var(--frg-a),var(--frg-b));color:#fff;font-weight:600}.frg-receipt td.amt,.frg-receipt th.amt{text-align:right;width:30%}.frg-receipt tr.tot td{background:var(--frg-tint);font-weight:700;color:var(--frg-a)}.frg-paid{margin-top:14px;border:1px solid var(--frg-a);border-radius:8px;padding:10px;background:var(--frg-tint2)}.frg-paid div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;font-size:11px}.frg-paid div+div{border-top:1px dashed var(--frg-line)}.frg-paid div span:last-child{text-align:right;font-weight:600}.frg-sign{display:flex;justify-content:space-between;gap:30px;margin-top:34px}.frg-sign div{flex:1;text-align:center;border-top:1px solid var(--frg-a);padding-top:4px;color:var(--frg-a);font-size:10px}.frg-sign small{display:block;color:#222;font-size:11px;min-height:13px}.frg-foot{margin-top:14px;border-top:1px solid var(--frg-a);padding-top:8px;text-align:center;font-size:9px;color:#777;white-space:pre-line}.frg-swatches{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px}.frg-sw{width:30px;height:30px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #cfd3e0;cursor:pointer;padding:0;transition:transform .15s}.frg-sw:hover{transform:scale(1.12)}.frg-sw.on{box-shadow:0 0 0 2px #333}.frg-colors{display:grid;grid-template-columns:1fr 1fr;gap:10px}.frg-colors input[type=color]{height:38px;padding:2px;cursor:pointer}.frg-reset{background:none;border:0;color:var(--frg-a);font-size:12px;cursor:pointer;padding:0;text-decoration:underline}.frg-brand{margin-top:8px;text-align:center;font-family:"Courier New",Courier,monospace;font-size:10px;color:#666;letter-spacing:.2px}