.hidden{display:none!important}.ghost-button{border:0;background:transparent;font:700 14px "DM Sans";cursor:pointer;color:#17252a}.portal-shell{padding-top:80px;padding-bottom:100px}.login-layout{min-height:620px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:80px}.login-layout h1,.dashboard-head h1{font:700 clamp(48px,5vw,72px)/.98 "Space Grotesk";letter-spacing:-.05em;margin:18px 0}.login-layout>div>p{color:var(--muted);font-size:18px;line-height:1.7;max-width:600px}.login-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;box-shadow:0 20px 60px rgba(7,17,31,.08)}.login-card h2,.portal-card h2{font:700 24px "Space Grotesk";margin:0 0 22px}.login-card small{display:block;color:#7b8787;line-height:1.5;margin-top:14px}.form-message{font-size:13px;margin:12px 0 0;min-height:18px;color:#b34a4a}.form-message.ok{color:#16836d}.dashboard-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}.dashboard-head h1{font-size:52px;margin-bottom:0}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}.metric-grid.four{grid-template-columns:repeat(4,1fr)}.metric-grid article{background:#0a1724;color:#fff;border-radius:16px;padding:22px}.metric-grid small{display:block;color:#79cfc8;letter-spacing:.13em;font-weight:800;font-size:10px}.metric-grid b{display:block;font:700 27px "Space Grotesk";margin-top:10px}.portal-grid,.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.portal-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.portal-card.compact{align-self:start}.card-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:8px}.card-head h2{margin:0}.card-head span{font-size:11px;color:#798684}.data-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px 0;border-bottom:1px solid #edf1f0}.data-row:last-child{border-bottom:0}.data-row h3{font:700 15px "Space Grotesk";margin:0 0 4px}.data-row p{font-size:12px;color:#768280;margin:0}.status{font-size:10px;font-weight:800;text-transform:uppercase;border-radius:999px;padding:6px 8px;background:#eaf7f4;color:#167766;align-self:start}.money{text-align:right}.money b{display:block;font-size:14px}.money span{display:block;font-size:11px;color:#7a8585;margin-top:4px}.empty{padding:28px 0;color:#7c8787;font-size:13px}.quotes-card{margin-top:18px}.quote-item{display:grid;grid-template-columns:120px 1fr 180px;gap:18px;padding:17px 0;border-bottom:1px solid var(--line)}.quote-item:last-child{border-bottom:0}.quote-item code{font-size:11px;color:#0e8d84}.quote-item h3{font:700 15px "Space Grotesk";margin:0 0 4px}.quote-item p{font-size:12px;color:#6e7a79;margin:3px 0;line-height:1.5}.quote-meta{font-size:11px;color:#7b8785}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:900px){.login-layout{grid-template-columns:1fr;gap:35px}.metric-grid,.metric-grid.four{grid-template-columns:repeat(2,1fr)}.portal-grid,.admin-grid{grid-template-columns:1fr}.quote-item{grid-template-columns:1fr}}@media(max-width:600px){.portal-shell{padding-top:55px}.metric-grid,.metric-grid.four{grid-template-columns:1fr}.dashboard-head{align-items:flex-start;flex-direction:column}.two{grid-template-columns:1fr}}
.support-row{margin-top:18px}.invoice-row{cursor:pointer}.invoice-row:hover{background:#fbfdfc}.ticket-actions{display:flex;gap:8px;flex-wrap:wrap}.mini-btn{border:1px solid #d8e2e0;background:#fff;border-radius:8px;padding:7px 9px;font:700 11px "DM Sans";cursor:pointer}.mini-btn:hover{border-color:#14a399;color:#0c8179}.admin-lists{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.table-list{overflow-x:auto}.table-row{display:grid;grid-template-columns:1.2fr .8fr .6fr .7fr;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.table-row.header{font-weight:800;color:#64716f;font-size:10px;letter-spacing:.08em}.table-row:last-child{border-bottom:0}.wide-row{grid-template-columns:1fr 1.3fr .65fr .8fr}.payment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}@media(max-width:900px){.admin-lists,.payment-grid{grid-template-columns:1fr}.table-row,.wide-row{grid-template-columns:1fr 1fr}}

.subscription-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.subscription-card{border:1px solid var(--line);border-radius:14px;padding:18px;background:#fbfdfc}.subscription-card small{color:#148d84;font-weight:800;letter-spacing:.1em}.subscription-card h3{font:700 17px "Space Grotesk";margin:7px 0 16px}.subscription-card>b{font:700 20px "Space Grotesk"}.subscription-card>b span{font:500 11px "DM Sans";color:#77827f}.subscription-card p{color:#74807e;font-size:11px}.subscription-card .status{display:inline-block;margin-top:4px}.checkline{display:flex;align-items:center;gap:9px}.checkline input{width:auto;margin:0}.commerce-metrics{margin-top:18px}.commerce-admin,.commerce-table{margin-top:18px}.renewal-head{grid-template-columns:1fr 1.2fr .8fr 1fr}@media(max-width:900px){.subscription-grid{grid-template-columns:1fr}.renewal-head{grid-template-columns:1fr 1fr}}

.notice-card{border-bottom:1px solid var(--line);padding:14px 0}.notice-card:last-child{border-bottom:0}.notice-card small{font-size:10px;color:#1b8d85;font-weight:800;letter-spacing:.07em}.notice-card h3{font:700 15px "Space Grotesk";margin:6px 0}.notice-card p{margin:0;color:#6f7d7a;font-size:12px;line-height:1.55}.data-row.invoice-row{text-decoration:none;color:inherit}

.product-matrix{display:flex;flex-direction:column;border-top:1px solid var(--line);margin-top:14px}.product-price-row{display:grid;grid-template-columns:minmax(220px,1.6fr) .8fr .8fr .75fr auto;gap:14px;align-items:end;padding:16px 0;border-bottom:1px solid var(--line)}.product-ident{display:flex;flex-direction:column;gap:3px}.product-ident>b{font:700 12px "Space Grotesk";color:#118e87}.product-ident>span{font:700 14px "Space Grotesk"}.product-ident>small{font-size:10px;color:#7a8683;text-transform:uppercase;letter-spacing:.06em}.product-price-row label{font-size:10px;font-weight:800;color:#687572}.product-price-row input[type="number"]{margin-top:6px}.pm-check{display:flex;align-items:center;gap:7px;padding-bottom:10px}.pm-check input{width:auto;margin:0}.section-note{margin:0 0 8px;color:#74807e;font-size:12px}.pm-save{margin-bottom:3px}@media(max-width:920px){.product-price-row{grid-template-columns:1fr 1fr}.product-ident{grid-column:1/-1}.pm-save{width:100%}}

.invoice-ledger-row{grid-template-columns:1fr 1.15fr .7fr .55fr 1.25fr}
.invoice-actions{display:flex;gap:7px;flex-wrap:wrap}
.invoice-actions .mini-btn{text-decoration:none;white-space:nowrap}
@media(max-width:900px){.invoice-ledger-row{grid-template-columns:1fr 1fr}.invoice-actions{grid-column:1/-1}}

.payment-ledger-row{grid-template-columns:.75fr 1.2fr 1.05fr 1fr .8fr .8fr 1fr .55fr;min-width:1040px}
.payment-invoice-link{color:#0b7f76;text-decoration:none;font-weight:800}
.payment-invoice-link:hover{text-decoration:underline}
.payment-status{display:inline-block;border-radius:999px;padding:5px 8px;background:#eef4f2;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#52615e}
.payment-mode{display:inline-block;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:900;letter-spacing:.08em}
.payment-mode.live{background:#e8f7f1;color:#0b7d67}
.payment-mode.demo{background:#fff4dd;color:#9a6710;border:1px solid #f0d49b}
