:root{--bg: #000000;--text: #ffffff;--text-secondary: rgba(255, 255, 255, .7);--text-hint: rgba(255, 255, 255, .38);--accent: #5f8bc8;--button-neutral: #bfc0c2;--card-bg: rgba(255, 255, 255, .1);--card-bg-light: rgba(255, 255, 255, .05);--line: rgba(255, 255, 255, .24);--ok: #4cd964;--warning: #ffb547;--danger: #ff6b6b;--focus-ring: rgba(95, 139, 200, .35);--radius: 8px;--radius-lg: 10px;--card-padding: 12px;--screen-padding-x: 10px;--screen-padding-y: 1px}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:Space Grotesk,sans-serif;color:var(--text);background:radial-gradient(circle at 8% -10%,rgba(95,139,200,.18),transparent 30%),radial-gradient(circle at 95% 0%,rgba(255,255,255,.06),transparent 26%),var(--bg)}.screen{width:min(1280px,calc(100% - (var(--screen-padding-x) * 2)));margin:0 auto;padding:var(--screen-padding-y) 0 1.2rem}.center-screen{min-height:100vh;display:grid;place-items:center}.panel{background:linear-gradient(180deg,var(--card-bg) 0%,var(--card-bg-light) 100%);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:0 0 0 1px #ffffff08 inset;padding:var(--card-padding);animation:card-enter .25s ease forwards}.top-bar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:1rem;align-items:center;margin:.8rem 0 .9rem}.top-bar h1{margin:.2rem 0 0}.portal-head{justify-self:start}.top-logo-wrap{justify-self:center}.brand-logo{width:210px;max-width:42vw;height:auto;display:block;object-fit:contain}.top-logo{width:190px}.hero-logo{width:min(340px,85%);margin:0 0 .7rem}.eyebrow{margin:0;color:var(--text-secondary);font-family:IBM Plex Mono,monospace;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.build-badge{display:inline-flex;align-items:center;margin:.45rem 0 0;padding:.28rem .6rem;border:1px solid rgba(122,162,255,.35);border-radius:999px;background:#7aa2ff1f;color:#cfe0ff;font-family:IBM Plex Mono,monospace;font-size:.75rem;letter-spacing:.03em}.account-block{display:flex;align-items:center;gap:.7rem;color:var(--text-secondary);justify-self:end}.locale-switch{display:inline-flex;align-items:center;gap:.4rem;margin:0}.locale-switch span{font-size:.82rem;color:var(--text-secondary)}.locale-switch select{width:auto;min-width:78px;padding:.4rem .55rem;background:transparent!important;background-color:transparent!important;color:var(--text);-webkit-appearance:none;-moz-appearance:none;appearance:none}.layout-grid{display:grid;grid-template-columns:350px 1fr;gap:1rem;align-items:start}.portal-tabs{display:inline-flex;gap:.5rem;margin:.1rem 0 .9rem}.tab-button{border-color:var(--line);color:var(--text-secondary);background:#ffffff08}.tab-button.active{border-color:#5f8bc8e6;color:var(--text);background:#5f8bc833}.wide{min-height:520px}.subtle{color:var(--text-secondary)}h2{margin:.1rem 0 .7rem}label{display:grid;gap:.4rem;font-weight:500;margin-bottom:.8rem}input,select{width:100%;border:1px solid var(--line);border-radius:var(--radius);padding:.7rem .78rem;font-size:.95rem;font-family:inherit;color:var(--text);background:#ffffff0a}textarea{width:100%;border:1px solid var(--line);border-radius:var(--radius);padding:.7rem .78rem;font-size:.9rem;font-family:IBM Plex Mono,monospace;color:var(--text);background:#ffffff0a;resize:vertical}textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}input::placeholder{color:var(--text-hint)}input:focus,select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}button{border:2px solid rgba(255,255,255,.5);border-radius:var(--radius);padding:.62rem .9rem;background:transparent;color:var(--text);font-weight:600;cursor:pointer;font-family:inherit;transition:background-color .15s ease,border-color .15s ease,transform .15s ease}button:hover:not(:disabled){background:#5f8bc826;border-color:#5f8bc8cc;transform:translateY(-1px)}button:disabled{opacity:.5;cursor:not-allowed}.ghost-button{color:var(--button-neutral);border-color:#bfc0c28c;background:#bfc0c20d}.status-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:1rem 0}.status-item{background:var(--card-bg-light);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem;display:grid;gap:.25rem}.status-item span{font-size:.8rem;color:var(--text-secondary);font-family:IBM Plex Mono,monospace}.status-item-period{display:flex;align-items:flex-end;justify-content:space-between;gap:.6rem}.status-period-values{display:grid;gap:.25rem}.status-actions{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;flex-wrap:wrap}.status-actions button{white-space:nowrap}.usage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:.75rem 0 1rem}.usage-card{background:var(--card-bg-light);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem;display:grid;gap:.25rem}.usage-card span{font-size:.8rem;color:var(--text-secondary);font-family:IBM Plex Mono,monospace}.usage-card strong{font-size:1rem}.usage-card p{margin:0;font-size:.82rem}.plan-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem;margin-bottom:1rem}.plan-card{border:1px solid var(--line);border-radius:var(--radius-lg);padding:.95rem;background:radial-gradient(circle at 90% 0%,rgba(95,139,200,.18),transparent 35%),var(--card-bg-light);display:flex;flex-direction:column;gap:.48rem;height:100%;animation:card-enter .25s ease both}.plan-card:nth-child(2){animation-delay:.04s}.plan-card:nth-child(3){animation-delay:.08s}.plan-card.current{border-color:#5f8bc8e6;box-shadow:0 0 0 1px #5f8bc859 inset}.plan-name{margin:0;font-weight:700;font-size:1.05rem}.plan-price-stack{display:grid;gap:.2rem}.plan-price{margin:0;color:var(--text);font-weight:700}.plan-price-secondary{color:var(--text-secondary);font-weight:600;font-size:.94rem}.plan-price.active{color:var(--text)}.plan-card-limits{display:grid;gap:.12rem;margin-top:.15rem}.plan-limits-title{margin:0;font-weight:600}.plan-limits-line{margin:0}.plan-action-stack{display:grid;gap:.45rem}.plan-action-area{margin-top:auto}.portal-row{display:flex;gap:.7rem;flex-wrap:wrap}.link-button{text-decoration:none;display:inline-flex;align-items:center}.billing-cycle-toggle{display:inline-flex;gap:.5rem;margin:0}.billing-cycle-controls{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin:.4rem 0 1rem;flex-wrap:wrap}.billing-cycle-label{margin:0}.cycle-button{border-color:var(--line);color:var(--text-secondary);background:#ffffff08}.cycle-button.active{border-color:#5f8bc8d9;color:var(--text);background:#5f8bc833}.billing-address-block,.bank-transfer-panel{margin:.9rem 0 1rem;padding:.85rem;border:1px solid var(--line);border-radius:var(--radius);background:#ffffff08}.bank-transfer-grid{display:grid;grid-template-columns:1fr 340px;gap:.8rem;align-items:start}.bank-transfer-details p{margin:0 0 .5rem}.bank-transfer-qr{border:1px solid var(--line);border-radius:var(--radius);padding:.6rem;background:#ffffff0a;display:grid;place-items:center}.bank-transfer-qr img{width:min(320px,100%);height:auto;display:block}.bank-transfer-payload{margin-top:.6rem}.billing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .7rem}.billing-grid label{margin-bottom:0}.billing-wide{grid-column:span 2}.billing-actions{margin-top:.65rem}.invoice-list-block{display:grid;gap:.8rem}.invoice-section-copy{margin:.3rem 0 0}.invoice-list{display:grid;gap:.7rem}.invoice-card{border:1px solid var(--line);border-radius:var(--radius);padding:.75rem .8rem;background:#ffffff0a}.invoice-card-head{display:flex;justify-content:space-between;gap:.8rem;align-items:start}.invoice-title{margin:0;font-weight:700}.invoice-amount-block{display:grid;justify-items:end;gap:.12rem;text-align:right}.invoice-card-body{display:grid;gap:.2rem;margin-top:.55rem}.invoice-meta{margin:0;color:var(--text-secondary)}.invoice-actions{margin-top:.7rem}.form-stack{margin-top:1rem}.form-stack.compact{margin-top:.8rem}.team-panel{margin-top:1rem}.layout-grid .team-panel{margin-top:0}.teams-layout{margin-top:.9rem;display:grid;grid-template-columns:360px 1fr;gap:1rem}.teams-column{border:1px solid var(--line);border-radius:var(--radius-lg);padding:.9rem;background:var(--card-bg-light)}.members-column{min-height:280px}.title-row{display:flex;justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.75rem}.title-row h3{margin:0}.team-list{display:flex;flex-wrap:wrap;gap:.55rem}.legacy-import-box{margin-top:.9rem;padding-top:.85rem;border-top:1px solid var(--line)}.legacy-import-list{display:grid;gap:.55rem}.legacy-import-row{display:flex;justify-content:space-between;align-items:center;gap:.7rem;border:1px solid var(--line);border-radius:var(--radius);padding:.55rem .6rem;background:#ffffff08}.legacy-meta{margin:.25rem 0 0;font-size:.88rem}.team-pill{background:#ffffff0a;color:var(--text-secondary);border:1px solid var(--line);padding:.5rem .75rem}.team-pill.active{background:#5f8bc838;border-color:#5f8bc8e6;color:var(--text)}.danger-button{color:#ff9e9e;border-color:#ff6b6bb3}.danger-button:hover:not(:disabled){background:#ff6b6b26;border-color:#ff6b6be6}.ghost-danger{background:#ff6b6b14}.team-member-form{display:grid;grid-template-columns:1.2fr 180px auto;gap:.55rem;margin-bottom:.8rem}.members-list{display:grid;gap:.55rem}.member-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;align-items:start;border:1px solid var(--line);border-radius:var(--radius);padding:.55rem;background:#ffffff08}.member-row code{overflow-wrap:anywhere;font-family:IBM Plex Mono,monospace;color:var(--text-secondary)}.member-identity{min-width:0;display:grid;gap:.2rem}.member-identity strong{display:block;line-height:1.25;overflow-wrap:anywhere}.member-meta{margin:0;font-size:.86rem;line-height:1.25;overflow-wrap:anywhere}.member-actions{display:flex;align-items:center;justify-content:flex-end;gap:.55rem;flex-wrap:wrap}.member-role-select{width:180px;min-width:160px}.notice,.warning,.error{padding:.68rem .8rem;border-radius:var(--radius);border:1px solid transparent}.notice{color:var(--ok);background:#4cd9641f;border-color:#4cd96459}.warning{color:var(--warning);background:#ffb5471f;border-color:#ffb54759}.error{color:var(--danger);background:#ff6b6b1f;border-color:#ff6b6b59}.global-error{margin-top:1rem}.portal-footer{margin-top:1rem;display:flex;justify-content:flex-end}.login-footer{margin-top:-1rem}.text-link-button{border:0;background:none;padding:0;color:var(--text-secondary);font-weight:500;text-decoration:underline;text-underline-offset:2px}.text-link-button:hover:not(:disabled){color:var(--text);transform:none;border:0;background:none}.imprint-overlay{position:fixed;top:0;right:0;bottom:0;left:0;padding:1rem;display:grid;place-items:center;background:#000000b8;z-index:1200}.imprint-modal{width:min(700px,100%);max-height:90vh;overflow-y:auto}.imprint-grid{display:grid;gap:.65rem}.imprint-row{border:1px solid var(--line);border-radius:var(--radius);padding:.65rem .7rem;background:#ffffff08}.imprint-row p{margin:.22rem 0 0;line-height:1.45}.imprint-row a{color:var(--text)}.imprint-list{margin:.25rem 0 0;padding-left:1.1rem}.imprint-list li+li{margin-top:.22rem}.imprint-company{margin:.2rem 0 .5rem;font-size:1.18rem;font-weight:700}.login-shell{min-height:100vh;display:grid;grid-template-columns:1fr min(400px,100%);gap:1rem;align-items:center}.hero h1{margin:.5rem 0;font-size:clamp(2rem,5vw,3.4rem);line-height:1.05}.hero p{max-width:52ch;color:var(--text-secondary)}.form-card{display:grid;gap:.7rem}@media(max-width:980px){.layout-grid,.status-bar{grid-template-columns:1fr}.status-item-period{flex-direction:column;align-items:stretch}.status-actions{justify-content:flex-start}.usage-grid,.plan-grid,.billing-grid{grid-template-columns:1fr}.billing-wide{grid-column:auto}.bank-transfer-grid{grid-template-columns:1fr}.invoice-card-head{flex-direction:column}.invoice-amount-block{justify-items:start;text-align:left}.teams-layout,.member-row{grid-template-columns:1fr}.member-actions{justify-content:flex-start}.team-member-form{grid-template-columns:1fr}}@media(max-width:780px){.login-shell{grid-template-columns:1fr;align-content:start;padding-top:2.4rem}.top-bar{grid-template-columns:1fr;gap:.6rem}.brand-logo{width:170px}.top-logo-wrap,.portal-head,.account-block{justify-self:start}}@keyframes card-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
