.gifca-public,.gifca-admin{--gifca-green:#166534;--gifca-green2:#22c55e;--gifca-soft:#f0fdf4;--gifca-border:#bbf7d0;--gifca-text:#0f172a;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.gifca-public{background:linear-gradient(135deg,#f0fdf4,#fff);border:1px solid var(--gifca-border);border-radius:22px;padding:22px;color:var(--gifca-text);box-shadow:0 12px 30px rgb(2 6 23 / .08)}.gifca-header{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:18px}.gifca-kicker{color:var(--gifca-green);font-weight:900;text-transform:uppercase;font-size:.78rem}.gifca-header h2{margin:.25rem 0;font-size:1.7rem;color:var(--gifca-green)}.gifca-status,.gifca-badge{background:#dcfce7;color:var(--gifca-green);border:1px solid var(--gifca-border);border-radius:999px;padding:7px 12px;font-weight:800;height:max-content}.gifca-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.gifca-card{background:#fff;border:1px solid var(--gifca-border);border-radius:18px;padding:18px;box-shadow:0 8px 20px rgb(2 6 23 / .06)}.gifca-card h3{margin-top:0;color:var(--gifca-green)}.gifca-card label{display:block;font-weight:800;margin:12px 0 6px}.gifca-input{width:100%;min-height:44px;border:1px solid #d9eadf;border-radius:12px;padding:10px 12px}.gifca-input:focus{outline:none;border-color:var(--gifca-green2);box-shadow:0 0 0 4px rgb(34 197 94 / .15)}.gifca-btn{margin-top:14px;border:0;border-radius:14px;min-height:44px;padding:10px 16px;background:linear-gradient(135deg,var(--gifca-green),var(--gifca-green2));color:#fff;font-weight:900;cursor:pointer}.gifca-btn:disabled{opacity:.45;cursor:not-allowed}.gifca-btn-success{width:100%}.gifca-msg{margin-top:12px;border-radius:12px;padding:10px;display:none;font-weight:800}.gifca-msg.ok{display:block;background:#dcfce7;color:#166534}.gifca-msg.error{display:block;background:#fee2e2;color:#991b1b}.gifca-msg.info{display:block;background:#e0f2fe;color:#075985}.gifca-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.gifca-toolbar input{min-width:280px}.gifca-table td,.gifca-table th{vertical-align:middle}#gifca-diagnostico-output{background:#0f172a;color:#dcfce7;padding:14px;border-radius:12px;max-height:320px;overflow:auto}.gifca-admin-hero{background:linear-gradient(135deg,#064e3b,#15803d,#22c55e);color:#fff;padding:24px;border-radius:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:18px 0;box-shadow:0 16px 34px rgb(2 6 23 / .16)}.gifca-admin-hero span{font-weight:900;letter-spacing:.08em;text-transform:uppercase;opacity:.9}.gifca-admin-hero h1{color:#fff;margin:.25rem 0;font-size:2rem}.gifca-admin-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.gifca-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:16px 0}.gifca-kpi{background:#fff;border:1px solid #bbf7d0;border-radius:18px;padding:16px;box-shadow:0 8px 20px rgb(2 6 23 / .06)}.gifca-kpi strong{display:block;font-size:2rem;color:#166534}.gifca-kpi span{font-weight:800;color:#64748b}.gifca-kpi.ok strong{color:#15803d}.gifca-kpi.warn strong{color:#b45309}.gifca-pay-check{display:inline-flex;align-items:center;gap:6px;font-weight:800}.gifca-inline{display:flex;gap:8px;align-items:center}.gifca-inline .gifca-input{flex:1}.gifca-btn-ghost{background:#fff;color:#166534;border:1px solid #bbf7d0}.gifca-btn-pay{background:linear-gradient(135deg,#b45309,#f59e0b)}.gifca-payment-module{max-width:760px;margin:auto}@media(max-width:700px){.gifca-inline{flex-direction:column;align-items:stretch}.gifca-admin-actions .button{width:100%;text-align:center}}.gifca-help{margin:.35rem 0 0;color:#64748b;font-size:.88rem;background:#f8fafc;border:1px dashed #bbf7d0;border-radius:10px;padding:8px 10px}.gifca-mini-table{width:100%;border-collapse:collapse}.gifca-mini-table th,.gifca-mini-table td{border-bottom:1px solid #e2e8f0;padding:10px;text-align:left}.gifca-badge.ok{background:#dcfce7;color:#166534}.gifca-history .gifca-inline{max-width:720px}.gifca-admin-pro .gifca-table textarea{width:100%}.gifca-admin-pro .gifca-table select,.gifca-admin-pro .gifca-table input{max-width:160px}