/* Billing page + customer portal (moved out of inline <style> blocks; CSP is style-src 'self') */
.bh{background:#0f3b2e;color:#fff;padding:58px 0}.bh h1{color:#fff}.bh .lead{color:#d8e6e1}.bh .eyebrow{color:#f5ce73}.bs{padding:48px 0}.bg{display:grid;grid-template-columns:1.2fr .8fr;gap:26px}.bp{border:1px solid #dfe7e2;border-radius:16px;padding:24px;background:#fff}.bc{display:grid;grid-template-columns:1fr 1fr;gap:12px}.bx{background:#f5f9f7;border-radius:11px;padding:16px}.bf{display:grid;gap:10px}.bf input,.bf button{padding:12px;border-radius:8px;font:inherit}.bf input{border:1px solid #b9c9c0}.bf button{border:0;background:#0f3b2e;color:#fff;font-weight:700}.bf .bf-open{display:block;text-align:center;padding:12px;border-radius:8px;background:#0f3b2e;color:#fff;font-weight:700;text-decoration:none}.bn{margin-top:15px;padding:13px;background:#eef5f1;border-radius:9px}@media(max-width:760px){.bg,.bc{grid-template-columns:1fr}}
.cp{max-width:920px;margin:auto}.cpgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.cpbox{border:1px solid #dfe7e2;border-radius:14px;padding:20px;background:#fff}.cp form{display:grid;gap:12px}.cp input,.cp select,.cp textarea,.cp button{padding:11px;font:inherit}.cp-row{display:flex;justify-content:space-between;gap:20px;align-items:center}@media(max-width:700px){.cpgrid{grid-template-columns:1fr}.cp-row{flex-wrap:wrap}}
/* Service status & outage history (account/outages.php) */
.co-banner{border:1px solid #c9d6de;border-left-width:5px;border-radius:10px;padding:14px 16px;margin:12px 0 18px;background:#f7fafc}
.co-banner.co-ok{border-color:#9fd3b4;border-left-color:#248655;background:#eef8f2}
.co-banner.co-warn{border-color:#ead79c;border-left-color:#c99a2e;background:#fff8e6}
.co-banner.co-bad{border-color:#e6b4ae;border-left-color:#b33a31;background:#fff3f1}
.co-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:18px}
.co-stats .cpbox strong{display:block;font-size:1.5rem}.co-stats .cpbox span{font-size:.88rem;color:#5b6b76}
.co-table{overflow-x:auto;border:1px solid #d9e4ea;border-radius:10px;margin-bottom:12px}
.co-table table{width:100%;border-collapse:collapse;font-size:.92rem}
.co-table th,.co-table td{text-align:left;padding:9px 10px;border-bottom:1px solid #edf2f5;vertical-align:top;white-space:nowrap}
.co-table th{background:#f5f8fa;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em}
.co-table td.co-reason{white-space:normal;min-width:260px}
.co-tag{display:inline-block;border-radius:999px;padding:2px 9px;font-size:.8rem;border:1px solid #c9d6de}
.co-tag-outage{background:#fff3f1;border-color:#e6b4ae;color:#8f2a22}
.co-tag-degraded{background:#fff8e6;border-color:#ead79c;color:#6d5310}
.co-tag-maintenance{background:#eef6fb;border-color:#a7cde6;color:#105d90}
/* Portal forms: label above a full-width field, consistent heights, brand buttons */
.cp form label{display:grid;gap:6px;margin:0;font-size:.82rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--green2,#1f6957)}
.cp form input,.cp form select,.cp form textarea{width:100%;min-height:48px;border:1px solid #b9c9c0;border-radius:10px;background:#fff;color:var(--ink,#14312b);font-size:1rem;letter-spacing:normal;text-transform:none;font-weight:400}
.cp form input:focus,.cp form select:focus,.cp form textarea:focus{outline:3px solid rgba(215,168,61,.45);outline-offset:1px;border-color:var(--green,#123c32)}
.cp form button{width:100%;min-height:50px;margin-top:4px;border:0;border-radius:999px;background:var(--green,#123c32);color:#fff;font-weight:800;cursor:pointer}
.cp form button:hover{background:#0b2a22}
.cpbox{display:flex;flex-direction:column}.cpbox h2{margin-top:0}.cpbox form{margin-top:auto}
