/* Workspace refinement: neutral glass, readable type and purposeful spacing. */
:root{--muted:#acacb3;--faint:#85858e;--line:rgba(255,255,255,.11)}
body{background:#090a0b}button,input,select,textarea{touch-action:manipulation}
.glass{background:linear-gradient(135deg,#ffffff08,#ffffff02);box-shadow:inset 0 1px 0 #ffffff08,0 8px 35px #00000012}
.sidebar{width:230px;background:linear-gradient(155deg,#101112f5,#0a0b0cf5);backdrop-filter:blur(28px)}
.app-shell{min-height:100vh;min-height:100dvh;display:flex}
.app-main{margin-left:230px;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;flex:1 1 auto;width:calc(100% - 230px)}
.app-content{flex:1 0 auto;width:100%;max-width:1440px;margin:0 auto;padding:36px 36px 28px;display:flex;flex-direction:column}
.app-topbar{padding:0 36px;background:#0b0c0dc9;backdrop-filter:blur(20px);flex-shrink:0}
.app-footer{display:block;margin-top:auto;width:100%;border-top:1px solid var(--line);background:#090a0b;font-size:14px;color:var(--muted);line-height:1.65}
.app-content[data-page=playground] ~ .app-footer{display:none!important}
@media(min-width:901px) and (min-height:550px){
  .app-content[data-page=connect] ~ .app-footer,
  .app-content[data-page=images] ~ .app-footer,
  .app-content[data-page=videos] ~ .app-footer,
  .app-content[data-page=status] ~ .app-footer,
  .app-content[data-page=account] ~ .app-footer,
  .app-content[data-page=keys] ~ .app-footer,
  .app-content[data-page=help] ~ .app-footer{
    display:none!important;
  }
}
.app-footer-inner{max-width:1440px;margin:0 auto;padding:36px 36px 32px;display:grid;grid-template-columns:2fr repeat(3,minmax(0,1fr));gap:32px 32px;font-size:14px;color:var(--muted)}
.footer-col{display:flex;flex-direction:column;gap:10px}
.footer-col-brand .logo{color:var(--text);display:inline-flex;align-items:center;gap:10px;font-weight:600;text-decoration:none;font-size:16px}
.footer-col-brand .logo:hover{color:#fff}
.footer-col-brand .footer-desc{font-size:14px;line-height:1.6;color:#8e929f;margin:8px 0 10px;max-width:320px}
.footer-col-brand .footer-copy{font-size:13px;color:#636774}
.footer-col-title{font-size:13.5px;font-weight:600;color:#e1e4ea;text-transform:uppercase;letter-spacing:.6px;margin-bottom:4px}
.footer-col-links{display:flex;flex-direction:column;gap:8px}
.footer-col-links a{color:#9ea2af;text-decoration:none;font-size:14px;transition:color .15s}
.footer-col-links a:hover{color:var(--accent,#9aefd2)}
@media(max-width:960px){.app-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.footer-col-brand{grid-column:1/-1}}
@media(max-width:560px){.app-footer-inner{grid-template-columns:minmax(0,1fr)}}
.footer-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;padding-top:4px}
.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px 26px;flex:1 1 auto;font-size:14px;color:var(--muted)}
.footer-links a{color:var(--muted);text-decoration:none;transition:color .18s;display:inline-flex;align-items:center;min-height:32px;font-size:14px}
.footer-links a:hover{color:#f4f4f5}
.footer-links span{color:var(--muted);font-size:14px}
.product-landing{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.product-landing>.container{display:flex;flex-direction:column;flex:1 0 auto}
.product-landing main{flex:1 0 auto}
.product-landing .app-footer{margin-top:auto;width:100%;border-top:1px solid var(--line);background:#090a0b}
.product-landing .app-footer-inner{max-width:1320px;padding:48px 24px 36px}
.product-footer{margin-top:auto;display:flex;justify-content:space-between;align-items:flex-start;gap:20px 36px;padding:28px 0;border-top:1px solid var(--line);font-size:14px;color:var(--muted)}
.side-nav a{font-size:12px;min-height:45px}.side-nav a.active{background:linear-gradient(100deg,#ffffff0d,#ffffff04);box-shadow:inset 2px 0 0 #ddd;border-color:#ffffff12}
.workspace-label{color:#85858e}.side-promo p{font-size:11px}.sidebar-status{font-size:10px;display:flex;align-items:center;gap:8px}.sidebar-status .icon{width:13px;margin-left:auto}
.page-header h1{font-size:31px;letter-spacing:-1.1px;font-weight:550}.page-header p{font-size:12px;color:#a0a0aa;margin-top:6px}.page-header{margin-bottom:28px}
.field label{font-size:11px;color:#aaaab3}.field input,.field select,.field textarea{font-size:12px;min-height:43px}.field small{font-size:10px;color:#96969f}select option,select optgroup{background:#17181b;color:#eee}
.btn{min-height:42px}.btn.small{min-height:36px}.icon-btn{min-width:34px}.notice{color:#b0b0b9;font-size:11px}.notice strong{color:#e0e0e5}
.panel-head h2{font-size:14px}.panel-head p{font-size:11px}.metric-top{font-size:11px}.metric-foot{font-size:10px;color:#9696a0}.metric-value{font-variant-numeric:tabular-nums}.chart-bar label{font-size:10px;color:#9696a0}.chart-empty{font-size:12px;color:#9494a0}
.topbar-balance,.currency-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:6px 10px;height:32px;min-height:32px;border:1px solid var(--line);border-radius:7px;font-family:var(--mono);font-size:11px;background:rgba(255,255,255,0.03);color:#d0d0d8;box-sizing:border-box;line-height:1;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}.topbar-balance{text-decoration:none}.topbar-balance .icon{width:15px;height:15px}.topbar-balance:hover{background:rgba(255,255,255,0.06);border-color:rgba(255,255,255,0.2);color:#fff}.user-email{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.currency-menu{position:relative;display:inline-flex;align-items:center}
.currency-toggle{cursor:pointer}
.currency-toggle:hover{background:rgba(255,255,255,0.06);border-color:rgba(255,255,255,0.2);color:#fff}
.currency-menu.is-open .currency-toggle{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.28);color:#fff}
.currency-toggle .currency-flag{display:inline-flex;align-items:center;font-size:13px;line-height:1}
.currency-toggle .currency-code{font-weight:400;letter-spacing:normal}
.currency-arrow{width:9px;height:9px;color:var(--muted,#96969e);transition:transform .2s cubic-bezier(0.16,1,0.3,1),color .15s;flex-shrink:0}
.currency-menu.is-open .currency-arrow{transform:rotate(180deg);color:#fff}
.currency-dropdown{display:none;position:absolute;top:calc(100% + 6px);right:0;min-width:160px;background:#0e1013;border:1px solid var(--line);border-radius:8px;padding:5px;flex-direction:column;gap:3px;box-shadow:0 14px 34px rgba(0,0,0,0.65),0 2px 8px rgba(0,0,0,0.4);z-index:120}
.currency-menu.is-open .currency-dropdown{display:flex}
.currency-option{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;background:transparent;border:1px solid transparent;border-radius:6px;color:#c6c6cf;font-family:var(--mono);font-size:14px;cursor:pointer;text-align:left;line-height:1.2;transition:background .12s,color .12s;box-sizing:border-box}
.currency-option:hover{background:rgba(255,255,255,0.06);color:#fff}
.currency-option:focus-visible{outline:2px solid #fff;outline-offset:1px}
.currency-option.active{background:rgba(255,255,255,0.09);color:#fff;border-color:rgba(255,255,255,0.1)}
.currency-option-left{display:inline-flex;align-items:center;gap:9px}
.currency-option .currency-flag{font-size:14px;line-height:1;display:inline-flex;align-items:center}
.currency-option .currency-flag-svg{width:19px;height:13.5px}
.currency-option-code{font-size:14px;font-weight:500;letter-spacing:normal}
.currency-option-symbol{font-size:13px;color:var(--muted,#96969e);margin-left:3px}
.currency-option.active .currency-option-symbol{color:#c4c4cc}
.currency-option-check{width:14px;height:14px;color:#fff;opacity:0;flex-shrink:0;margin-left:10px;transition:opacity .12s}
.currency-option.active .currency-option-check{opacity:1}
.catalog-hero{display:grid;grid-template-columns:1.1fr 1fr 150px;align-items:center;gap:20px;padding:32px 34px;margin-bottom:26px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 57% 25%,#ffffff09,transparent 60%),linear-gradient(130deg,#ffffff04,#ffffff01)}
.catalog-hero h2{font-size:31px;line-height:1.24;font-weight:500;letter-spacing:-1.3px;margin:12px 0}.catalog-hero h2 span{color:#96969e}.catalog-hero p{font-size:12px;color:#a4a4af;line-height:1.8}
.catalog-numbers{display:grid;gap:16px;border-left:1px solid var(--line);padding-left:26px}.catalog-numbers strong{display:block;font-family:var(--mono);font-size:26px;font-weight:400;line-height:1.2;letter-spacing:-1px}.catalog-numbers span{font-size:10px;color:#a0a0ab}
.catalog-orbit{width:250px;height:220px;justify-self:center;position:relative;display:grid;place-items:center}.catalog-orbit:before,.catalog-orbit:after{content:'';position:absolute;inset:10px 0;border:1px solid #ffffff10;border-radius:50%;transform:rotate(-25deg)}.catalog-orbit:after{inset:36px 35px;transform:rotate(25deg);border-style:dashed}.catalog-orbit .logo-mark{transform:scale(2.4);filter:drop-shadow(0 0 20px #fff2)}
.orbit-tag{position:absolute;padding:7px 14px;border:1px solid #ffffff19;background:linear-gradient(135deg,#292a2ed9,#121316e8);border-radius:8px;box-shadow:0 8px 20px #0007;font-size:11px;z-index:1}.orbit-tag:nth-of-type(2){left:0;top:30px;transform:rotate(-9deg)}.orbit-tag:nth-of-type(3){right:0;top:55px;transform:rotate(8deg)}.orbit-tag:nth-of-type(4){left:4px;bottom:30px;transform:rotate(-6deg)}.orbit-tag:nth-of-type(5){right:0;bottom:24px;transform:rotate(5deg)}
.vendor-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:23px}.filter-chip{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 14px;min-height:38px;border-radius:8px;font-size:11px;border:1px solid transparent;background:transparent;color:#a6a6af;white-space:nowrap;cursor:pointer}.filter-chip:hover{background:#ffffff08;color:#eee}.filter-chip.active{background:#ececef;color:#131416;border-color:#fff}.filter-chip .icon{width:15px;height:15px}.filter-chip span{font-size:9px;opacity:.65}.favorite-filter{margin-left:auto;border-color:var(--line)}
.catalog-category-bar{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:4px 0 16px;margin-bottom:14px;scrollbar-width:none!important;-webkit-overflow-scrolling:touch}
.catalog-category-bar::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.no-scrollbar,[data-no-scrollbar]{scrollbar-width:none!important}
.no-scrollbar::-webkit-scrollbar,[data-no-scrollbar]::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
.category-tab{display:inline-flex;align-items:center;gap:8px;padding:9px 15px;border-radius:10px;border:1px solid rgba(255,255,255,0.06);background:rgba(255,255,255,0.02);color:#9d9da8;font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:color .18s,background .18s,border-color .18s,box-shadow .18s;flex-shrink:0}
.category-tab .icon{width:16px;height:16px;color:#858591;transition:color .18s}
.category-tab:hover{color:#f0f0f3;background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.12)}
.category-tab:hover .icon{color:#e0e0e8}
.category-tab.active{color:#9aefd2;background:rgba(16,185,129,0.08);border-color:rgba(16,185,129,0.32);box-shadow:0 0 14px rgba(16,185,129,0.08)}
.category-tab.active .icon{color:#9aefd2}
.category-tab-label{line-height:1}
.category-tab-count{font-family:var(--mono);font-size:11px;padding:2px 6px;border-radius:5px;background:rgba(255,255,255,0.06);color:#888894;margin-left:2px;transition:color .18s,background .18s}
.category-tab.active .category-tab-count{background:rgba(16,185,129,0.18);color:#9aefd2;font-weight:600}
.catalog-controls{padding-top:18px;border-top:1px solid var(--line)}.catalog-filters{grid-template-columns:2fr 1fr 1.15fr;gap:12px}.search-field{position:relative;display:flex;align-items:center}.search-field .icon{position:absolute;left:12px;width:16px;color:#9d9da8}.search-field input{padding-left:37px;padding-right:31px}.search-field kbd{position:absolute;right:10px;color:#898993;border:1px solid #ffffff20;padding:0 4px;line-height:19px;border-radius:3px;font-size:10px;pointer-events:none}
.catalog-result-head{font-size:11px;color:#a5a5af;margin:6px 0 20px}.catalog-result-head span:last-child{font-family:var(--mono);font-size:10px}.model-cards{gap:16px}.catalog-card{padding:20px 21px;border-radius:14px;transition:transform .2s,border-color .2s,background .2s}.catalog-card:hover{transform:translateY(-3px);border-color:#ffffff30;background:linear-gradient(135deg,#ffffff0b,#ffffff04)}
.catalog-card-top{margin-bottom:21px}.vendor-badge{display:flex;align-items:center;gap:9px;font-size:10px;color:#b5b5be}.vendor-logo{width:28px;height:28px;min-width:28px;display:grid;place-items:center;border:1px solid rgba(255,255,255,0.08);border-radius:8px;background:rgba(255,255,255,0.03);backdrop-filter:blur(8px);transition:transform .2s,border-color .2s}.vendor-logo:hover{transform:scale(1.06);border-color:rgba(255,255,255,0.2)}.vendor-logo-img{width:18px;height:18px;object-fit:contain;display:block}.vendor-name{font-size:11px;font-weight:500;color:#c0c0cb}.vendor-monogram{width:29px;height:29px;display:grid;place-items:center;font-size:10px;font-weight:650;font-family:var(--mono);color:#dcdce3;border:1px solid #ffffff1a;border-radius:8px;background:linear-gradient(130deg,#fff1,#fff0)}
.favorite{color:#81818c}.favorite.is-favorite{color:#f3f3f5}.favorite.is-favorite .icon{fill:#e4e4e622}.favorite .icon{width:16px;height:16px}.model-type{color:#a4a4af;font-size:10px;margin-bottom:5px}.catalog-card h2{font-size:16px;line-height:1.55}.catalog-card h2 button{font:inherit;color:inherit;text-align:left;border:0;padding:0;background:none;overflow-wrap:anywhere}.catalog-card h2 button:hover{text-decoration:underline;text-underline-offset:4px}
.model-id{display:flex;align-items:center;gap:5px;margin-top:4px;min-width:0}.model-id code{color:#93939d;font-family:var(--mono);font-size:10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;flex:1}.model-id .icon-btn{width:26px;min-width:26px;height:26px}.model-id .icon{width:13px}.catalog-card-price{margin:22px 0 15px;font-size:11px;gap:10px}.catalog-card-price>span{gap:6px;flex-wrap:wrap}.catalog-card-price small{font-size:9px;color:#92929d}.catalog-card-price strong{margin-left:auto;font-size:15px;letter-spacing:-.4px;color:#e8e8ed}.model-availability{display:flex;align-items:center;gap:6px;font-size:10px;color:#a3a3ae;min-height:20px}.model-availability .icon{width:12px;height:12px}.catalog-card-bottom{display:flex;flex-direction:row;align-items:center;justify-content:space-between;margin-top:17px;gap:12px}.catalog-card-bottom .btn{font-size:11px;flex:1;justify-content:space-between;background:#ffffff03}.catalog-card-bottom>.icon-btn{border:1px solid var(--line);height:36px;width:36px}.pager{padding:10px 0;gap:14px}.pager span{font-size:11px}
.model-dialog{width:690px}.model-dialog .modal-head{align-items:flex-start;gap:15px}.model-dialog .modal-head h2{font-size:24px;overflow-wrap:anywhere}.detail-meta{display:flex;gap:8px;align-items:center;margin-top:-10px;margin-bottom:20px}.detail-meta .favorite{margin-left:auto}.model-dialog .base-url code{font-size:12px}.detail-pricing{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:24px}.detail-pricing>div{padding:20px;background:#ffffff04;border:1px solid var(--line);border-radius:12px}.detail-pricing span{display:block;color:#aaaab4;font-size:11px}.detail-pricing strong{display:block;margin-top:8px;font-family:var(--mono);font-size:25px;font-weight:400;letter-spacing:-1px}.detail-note{font-size:11px;color:#a5a5af;line-height:1.8;margin:13px 0}.detail-status{display:flex;align-items:center;gap:9px;padding:13px 0;font-size:11px;color:#c0c0cb}.detail-status .icon{width:16px}
.model-calculator{border-top:1px solid var(--line);padding-top:18px;margin-top:5px}.model-calculator h3{font-size:13px;font-weight:500;margin-bottom:14px}.estimate-fields{display:flex;gap:14px}.estimate-fields .field{flex:1;margin-bottom:10px;min-width:0}.detail-estimate{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px;font-size:12px;color:#afafba}.detail-estimate output{font-family:var(--mono);font-size:17px;color:#f0f0f3}.snippet-tabs{display:flex;gap:7px;padding-top:17px;border-top:1px solid var(--line)}.detail-actions{display:flex;gap:10px;margin-top:20px}.model-dialog .code-box pre{font-size:11px;max-height:340px;line-height:1.85}.detail-list{display:grid;margin:22px 0;gap:0}.detail-list>div{display:grid;grid-template-columns:1fr 1.5fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:11px}.detail-list dt{color:#a2a2af}.detail-list dd{margin:0;text-align:right;overflow-wrap:anywhere;color:#dddde5}
.landing-model-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.landing-model{padding:23px;text-align:left;display:flex;flex-direction:column;gap:20px;color:inherit}.landing-model>strong{font-size:16px;font-weight:550;overflow-wrap:anywhere}.landing-model>span:not(.vendor-badge){font-size:10px;color:#aaaab4;line-height:1.8}.landing-model .inline-cta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:17px;margin-top:auto}.landing-model:hover{border-color:#ffffff3a;background:#ffffff07}.landing-model .icon{width:15px}.hero-copy{font-size:15px}.nav-links{font-size:13px}.hero-footnote{color:#a0a0a9}.feature p{font-size:12px;color:#a3a3ad}.compat-strip>span{color:#92929d}.faq-list summary{font-size:13px}.faq-list details p{font-size:12px}.landing-footer p{color:#9999a5}.code-box pre{font-size:11px}
.onboarding{padding:25px;margin-bottom:24px}.onboarding .panel-head h2{font-size:16px;margin-top:6px;font-weight:500}.onboarding-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:20px}.onboarding-step{display:flex;flex-direction:column;gap:9px;padding:12px 0 0;border-top:1px solid #ffffff20}.step-number{color:#9696a1;font-family:var(--mono);font-size:13px;height:26px}.step-number .icon{width:17px}.onboarding-step strong{font-size:12px;font-weight:550}.onboarding-step p{color:#a0a0ab;font-size:11px;line-height:1.7}.onboarding-step>span:last-child{display:flex;align-items:center;gap:8px;font-size:10px;color:#d1d1da;margin-top:auto;padding-top:9px}.onboarding-step .icon{width:13px;height:13px}.onboarding-step.complete{opacity:.65}
.usage-filters{display:flex;gap:15px;align-items:flex-end;padding:22px;margin-bottom:23px}.usage-filters .field{flex:1;min-width:0;margin:0}.usage-filters>.btn{min-height:43px}.table-detail-link{color:#e0e0e8;padding:0;border:0;background:none;font-size:11px;text-align:left;cursor:pointer;max-width:260px;overflow:hidden;text-overflow:ellipsis}.table-detail-link:hover{text-decoration:underline;text-underline-offset:4px}th{font-size:10px;color:#a1a1ad}td{font-size:11px}.table-key-name{font-size:12px}.empty-state h3{font-size:15px}.empty-state p{font-size:12px;color:#a2a2ae}.empty-state .btn{font-size:11px}.base-url code{font-size:11px}
.status-banner{display:flex;align-items:center;gap:20px;padding:28px;margin-bottom:23px}.status-banner>.icon{width:35px;height:35px}.status-banner h2{font-size:21px;font-weight:500;letter-spacing:-.5px}.status-banner p{color:#a0a0ad;font-size:11px;margin-top:7px}.status-components{padding:0 26px}.status-component{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:24px 0;border-bottom:1px solid var(--line)}.status-component:last-child{border:0}.status-component h3{font-size:14px;font-weight:500}.status-component p,.status-component small{font-size:11px;color:#a7a7b1;margin-top:5px}.status-note{margin-top:22px}
.playground-layout{grid-template-columns:minmax(0,1fr) 275px;height:auto;min-height:580px}.chat-panel{height:calc(100dvh - 225px);min-height:580px}.chat-welcome p{font-size:12px;color:#a3a3af}.composer textarea{font-size:13px}.composer-foot{font-size:9px;color:#a0a0ac}.message-text{font-size:13px;color:#d1d1d9}.message-label{font-size:10px}.chat-usage{font-size:10px;color:#a3a3ae}.message-copy{padding:4px 0;font-size:10px!important;min-height:30px!important}.message-copy .icon{width:13px}.message-text h3,.message-text h4,.message-text h5{font-size:16px;margin:13px 0 5px;font-weight:600;white-space:normal;color:#ededf0}.message-text>code{font-family:var(--mono);font-size:11px;background:#ffffff09;border-radius:4px;padding:2px 5px}.answer-bullet{display:flex;gap:10px;white-space:normal;margin:4px 0}.answer-code{white-space:normal;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#08090ac9;margin:13px 0}.answer-code>div{display:flex;align-items:center;justify-content:space-between;padding:5px 12px;border-bottom:1px solid var(--line);font-size:10px;color:#aaaab5}.answer-code pre{margin:0;padding:15px;overflow:auto;line-height:1.8;white-space:pre;font-family:var(--mono);font-size:11px}.answer-code code{font-family:inherit}.settings-panel{position:sticky;top:20px}.settings-panel h2{font-size:14px}.settings-price strong{font-size:11px;max-width:180px}.settings-price>span{font-size:10px;color:#aaaab4}
.password-field{position:relative}.password-field input{padding-right:45px}.password-field .icon-btn{position:absolute;right:5px;top:5px}.modal-intro{font-size:12px;color:#b3b3be}.auth-fineprint{color:#9898a5;font-size:10px}.auth-switch{font-size:12px}.auth-switch button{font-size:12px}dialog .field input{font-size:14px}.form-error{font-size:12px}
@media(min-width:1500px){.model-cards{grid-template-columns:repeat(4,minmax(0,1fr))}.catalog-hero{grid-template-columns:1fr 1fr 210px}.app-content{padding:40px}}
@media(max-width:1150px){.sidebar{width:210px}.app-main{margin-left:210px;width:calc(100% - 210px)}.app-content{padding:28px 24px}.catalog-hero{grid-template-columns:1fr 1fr;padding:28px}.catalog-numbers{grid-column:1/-1;grid-template-columns:repeat(3,1fr);border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.catalog-orbit{width:220px}.catalog-filters{grid-template-columns:1fr 1fr}.catalog-filters .model-search{grid-column:auto}.favorite-filter{margin-left:0}.playground-layout{grid-template-columns:minmax(0,1fr) 240px}.landing-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.user-email{display:none}.onboarding-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.playground-layout{grid-template-columns:1fr}.settings-panel{position:static}.chat-panel{height:600px}.usage-filters{flex-wrap:wrap}.usage-filters .field{flex-basis:calc(50% - 15px)}.usage-filters>.btn{flex:1}.catalog-hero h2{font-size:27px}.catalog-orbit{width:170px}.orbit-tag{padding:6px 9px;font-size:9px}.topbar-balance,.currency-toggle{padding:5px 8px;height:28px;min-height:28px;font-size:10px;gap:6px}.model-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.sidebar{width:244px}.app-main{margin-left:0;width:100%}.app-topbar{padding:0 16px}.app-content{padding:25px 18px}.page-header h1{font-size:26px}.page-header p{font-size:12px;max-width:240px}.page-header .header-actions{flex-wrap:wrap;justify-content:flex-end}.page-header .btn{font-size:10px;min-height:38px}.catalog-hero{padding:24px;gap:12px;grid-template-columns:1fr}.catalog-hero h2{font-size:29px}.catalog-orbit{display:none}.catalog-numbers{gap:13px;padding-top:20px;margin-top:12px}.catalog-numbers strong{font-size:23px}.catalog-numbers span{font-size:9px;line-height:1.5;display:block;margin-top:5px}.catalog-hero p{font-size:12px}.vendor-tabs{gap:6px;flex-wrap:nowrap;overflow:auto;padding-bottom:7px;margin-bottom:12px;scrollbar-width:thin}.filter-chip{font-size:11px;padding:9px 12px;flex-shrink:0}.catalog-filters{gap:0 12px}.catalog-filters .model-search{grid-column:1/-1}.catalog-filters .field:last-child{grid-column:1/-1}.field input,.field select,.field textarea{font-size:14px;min-height:44px}.field label{font-size:11px}.catalog-result-head{font-size:11px;align-items:flex-start}.catalog-result-head span:last-child{font-size:9px;max-width:170px}.model-cards{grid-template-columns:1fr}.catalog-card{padding:23px}.catalog-card h2{font-size:18px}.model-id code{font-size:11px}.catalog-card-price strong{font-size:18px}.catalog-card-price small{font-size:10px}.catalog-card-bottom .btn{min-height:40px}.favorite{height:40px;width:40px}.model-dialog{padding:24px 20px}.model-dialog .modal-head h2{font-size:22px}.detail-pricing{gap:10px}.detail-pricing>div{padding:15px 12px}.detail-pricing strong{font-size:20px}.detail-pricing span{font-size:10px}.detail-actions{flex-wrap:wrap}.detail-actions>.btn{flex:1}.estimate-fields{gap:10px}.detail-estimate output{font-size:15px}.model-dialog .code-box pre{font-size:10px;padding:15px}.landing-model-grid{grid-template-columns:1fr 1fr;gap:10px}.landing-model{padding:17px 13px;gap:16px}.landing-model .vendor-badge{font-size:9px}.landing-model>strong{font-size:14px}.landing-model>span:not(.vendor-badge){font-size:10px}.hero-footnote{flex-wrap:wrap;gap:9px 14px}.onboarding{padding:21px}.onboarding-steps{gap:16px}.onboarding-step strong{font-size:12px}.onboarding .panel-head h2{font-size:15px}.onboarding-step p{font-size:11px}.metric-foot{font-size:10px}.usage-filters{padding:18px}.usage-filters .field{flex-basis:100%}.usage-filters>.btn{width:100%}.table-detail-link{font-size:11px;max-width:185px}.detail-list>div{grid-template-columns:1fr 1.3fr}.chat-panel{min-height:510px;height:calc(100dvh - 210px)}.composer textarea{font-size:14px}.composer-foot{font-size:9px;flex-wrap:wrap;gap:4px}.settings-panel{gap:0 14px}.settings-panel .field label{font-size:11px}.settings-panel .field:first-of-type{grid-column:1/-1}.message-text{font-size:13px}.chat-welcome h2{font-size:22px}.chat-welcome p{font-size:12px}.chat-usage{font-size:9px}.suggestions button{font-size:11px;padding:10px}.status-banner{padding:22px;gap:13px}.status-banner h2{font-size:19px}.status-components{padding:0 19px}.status-component{flex-wrap:wrap;gap:12px}.status-component p{font-size:12px}.status-component .pill{font-size:10px}.detail-note{font-size:12px}.topbar-balance,.currency-toggle{padding:4px 7px;height:26px;min-height:26px;font-size:10px;gap:5px}.app-footer-inner{padding:24px 18px;flex-direction:column;align-items:flex-start;gap:16px}.product-footer{flex-direction:column;align-items:flex-start;gap:16px;padding:24px 0}.footer-links{justify-content:flex-start;gap:10px 18px}.base-url code{font-size:11px}.notice{font-size:11px}.empty-state p{font-size:12px}}
@media(max-width:370px){.landing-model-grid{grid-template-columns:1fr}.onboarding-steps{grid-template-columns:1fr}.detail-pricing{grid-template-columns:1fr}.hero-buttons{flex-wrap:wrap}.page-header{flex-wrap:wrap}.catalog-card-price strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){.catalog-card:hover{transform:none}}
.answer-line{white-space:pre-wrap}.answer-space{height:9px}.answer-space+.answer-space{display:none}
.catalog-summary{display:flex;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:36px;padding:0 0 24px;border-bottom:1px solid var(--line);margin-bottom:24px}
.catalog-summary>div{display:flex;align-items:baseline;gap:8px;min-width:0}
.catalog-summary strong{font-size:22px;font-weight:600}.catalog-summary span{font-size:12px;color:var(--muted)}
.catalog-card{border-radius:8px;min-height:270px}.catalog-card h2{font-size:17px}
.catalog-card-price{margin-top:auto}.catalog-card-bottom .btn{border-radius:6px}
@media(max-width:600px){.catalog-summary{gap:20px;justify-content:space-between}.catalog-summary>div{flex-direction:column;gap:0}.catalog-summary span{font-size:10px}.catalog-summary strong{font-size:20px}}

/* Mobile global overflow prevention & responsive layout safeguards */
@media (max-width: 650px) {
  html, body {
    width: 100% !important;
    max-width: 100vw !important;
    overflow-x: clip !important;
  }
  .app-shell, .app-main, .app-content, .product-landing, .container {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 480px) {
  .app-topbar {
    padding: 0 8px !important;
  }
  .breadcrumb {
    display: none !important;
  }
  .user-menu {
    gap: 4px !important;
    margin-left: auto !important;
  }
  .topbar-balance,
  .currency-toggle {
    padding: 4px 6px !important;
    height: 24px !important;
    min-height: 24px !important;
    font-size: 10px !important;
    gap: 4px !important;
  }
  .currency-arrow {
    width: 8px !important;
    height: 8px !important;
  }
  .currency-dropdown {
    min-width: 140px !important;
    padding: 4px !important;
    left: auto !important;
    right: 0 !important;
    transform-origin: top right !important;
  }
  .currency-option {
    padding: 7px 10px !important;
    font-size: 12px !important;
  }
  .currency-option-code {
    font-size: 12px !important;
  }
  .currency-option-symbol {
    font-size: 11px !important;
  }
  .currency-option .currency-flag {
    font-size: 13px !important;
  }
}

/* Payment Methods & Lava Pay styling */
.payment-methods-stack {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 16px;
}
.payment-methods-stack .payment-method {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 14px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 12px;
  transition: background 0.15s;
}
.payment-methods-stack .payment-method:hover {
  background: rgba(255, 255, 255, 0.04);
}
.payment-methods-stack .payment-icon {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  flex-shrink: 0;
}
.payment-methods-stack .payment-icon img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}

/* Modal Payment Buttons */
.payment-buttons-group {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 16px 0 12px 0;
}
.btn-payment-method {
  display: flex;
  align-items: center;
  gap: 14px;
  width: 100%;
  padding: 13px 16px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  color: var(--fg, #f0f0f4);
  cursor: pointer;
  text-align: left;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  overflow: hidden;
  box-sizing: border-box;
}
.btn-payment-method:hover:not(:disabled) {
  background: rgba(255, 255, 255, 0.07);
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateY(-1px);
}
.btn-payment-method:active:not(:disabled) {
  transform: translateY(0);
  background: rgba(255, 255, 255, 0.05);
}
.btn-payment-method:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}
.btn-payment-method .pm-icon-wrap {
  width: 38px;
  height: 38px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.btn-payment-method .pm-icon-wrap img {
  width: 28px;
  height: 28px;
  object-fit: contain;
}
.btn-payment-method .pm-icon-wrap.sbp-icon,
.btn-payment-method .pm-icon-wrap.card-icon,
.btn-payment-method .pm-icon-wrap.lava-icon,
.btn-payment-method .pm-icon-wrap.crypto-icon,
.btn-payment-method .pm-icon-wrap.heleket-icon {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
.btn-payment-method .pm-icon-wrap.card-icon img {
  width: 36px;
  height: 24px;
  object-fit: contain;
}
.btn-payment-method .pm-icon-wrap.crypto-icon {
  color: #a4a4b2;
}
.btn-payment-method .pm-icon-wrap.crypto-icon svg {
  width: 26px;
  height: 26px;
}
.btn-payment-method .pm-icon-wrap.heleket-icon {
  padding: 0;
}
.pm-coins-cluster {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 2px;
  width: 100%;
  height: 100%;
  align-items: center;
  justify-items: center;
}
.pm-coins-cluster img {
  width: 14px !important;
  height: 14px !important;
  object-fit: contain;
}
.pm-coins-inline {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 3px;
  flex-wrap: wrap;
}
.pm-coin {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 500;
  color: #cfdad5;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 4px;
  padding: 1px 5px;
}
.pm-coin img {
  width: 13px !important;
  height: 13px !important;
  object-fit: contain;
}
.btn-payment-method .pm-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
}
.btn-payment-method .pm-title {
  font-size: 13.5px;
  font-weight: 600;
  color: #fff;
  letter-spacing: -0.01em;
}
.btn-payment-method .pm-subtitle {
  font-size: 11px;
  color: var(--muted, #85858e);
}
.btn-payment-method .pm-arrow {
  color: var(--muted, #85858e);
  display: flex;
  align-items: center;
  transition: transform 0.2s;
  margin-left: auto;
}
.btn-payment-method:hover:not(:disabled) .pm-arrow {
  color: #fff;
  transform: translateX(3px);
}
.topup-estimate {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px dashed rgba(255, 255, 255, 0.1);
  border-radius: 9px;
  margin-bottom: 14px;
  font-size: 12px;
}
.topup-estimate strong {
  color: #55d691;
  font-size: 13.5px;
  font-family: var(--mono, monospace);
}

.sidebar-topup-btn {
  width: 100%;
  height: 38px !important;
  min-height: 38px !important;
  max-height: 38px !important;
  padding: 0 10px !important;
  margin-bottom: 12px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 13.5px !important;
  font-weight: 600;
  border-radius: 9px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  white-space: nowrap !important;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sidebar-topup-btn svg, .sidebar-topup-btn .icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
}
.nav-group + .nav-group {
  margin-top: 24px !important;
}

.sidebar-status {
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  color: #7e7e88;
  padding: 4px 6px;
  border-radius: 6px;
  transition: color 0.15s, background 0.15s;
}
.sidebar-status:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.04);
}

/* Modern 2-Column Auth Modal in Tokvian Style */
dialog.auth-dialog-modal, dialog:has(.auth-dialog) {
  width: 780px !important;
  max-width: min(780px, calc(100vw - 32px)) !important;
  padding: 0 !important;
  border-radius: 20px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: #0f1115 !important;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.8), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
  overflow: hidden !important;
}
.auth-dialog {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
  min-height: 520px;
}
.auth-dialog-close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 10;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--muted, #93939e);
  cursor: pointer;
  transition: color 0.15s, background 0.15s;
}
.auth-dialog-close:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
}
.auth-main-pane {
  padding: 36px 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  background: #0f1115;
}
.auth-main-pane .auth-head h2 {
  font-size: 22px;
  font-weight: 600;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0 0 6px;
}
.auth-main-pane .modal-intro {
  font-size: 14px;
  color: var(--muted, #93939e);
  margin: 0 0 20px;
  line-height: 1.5;
}
.auth-tabs {
  display: flex;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 9px;
  padding: 4px;
  margin-bottom: 22px;
  gap: 4px;
}
.auth-tab {
  flex: 1;
  padding: 8px 12px;
  background: transparent;
  border: 0;
  border-radius: 7px;
  color: var(--muted, #93939e);
  font-size: 14px !important;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.15s;
  text-align: center;
}
.auth-tab.active {
  background: rgba(255, 255, 255, 0.1);
  color: #fff;
  font-weight: 600;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
}
.auth-tab:hover:not(.active):not(:disabled) {
  color: #d0d0d8;
  background: rgba(255, 255, 255, 0.05);
}
.auth-tab:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.input-wrap {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
}
.input-wrap .input-icon {
  position: absolute;
  left: 13px;
  color: #797986;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  z-index: 2;
}
.input-wrap .input-icon svg, .input-wrap .input-icon .icon {
  width: 16px;
  height: 16px;
}
.input-wrap input {
  padding-left: 40px !important;
  font-size: 14px !important;
  height: 44px;
  min-height: 44px;
  border-radius: 9px;
}
.input-wrap.password-field input {
  padding-right: 42px !important;
}
.input-wrap .toggle-pass-btn {
  position: absolute;
  right: 6px;
  background: transparent;
  border: 0;
  color: #797986;
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  border-radius: 6px;
  z-index: 2;
}
.input-wrap .toggle-pass-btn:hover {
  color: #fff;
}
.field-label-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
}
.field-label-row label {
  margin: 0 !important;
}
.auth-forgot-link {
  background: transparent;
  border: 0;
  color: var(--accent, #9aefd2);
  font-size: 13px;
  cursor: pointer;
  padding: 0;
  text-decoration: none;
}
.auth-forgot-link:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.auth-submit-btn {
  height: 44px !important;
  min-height: 44px !important;
  font-size: 14.5px !important;
  font-weight: 600;
  margin-top: 6px;
  border-radius: 9px;
}
.auth-main-pane .auth-fineprint {
  font-size: 13px !important;
  color: #70707c;
  text-align: center;
  margin-top: 16px;
  line-height: 1.5;
}

/* Right Column (Promo / Value Props) */
.auth-promo-pane {
  background: linear-gradient(155deg, rgba(154, 239, 210, 0.07) 0%, rgba(16, 17, 20, 0.95) 45%, rgba(10, 11, 13, 0.98) 100%);
  border-left: 1px solid rgba(255, 255, 255, 0.08);
  padding: 36px 30px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.auth-promo-logo {
  margin-bottom: 18px;
}
.auth-promo-logo .logo {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.auth-promo-title {
  font-size: 19px;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: #fff;
  margin: 0 0 8px;
  line-height: 1.35;
}
.auth-promo-desc {
  font-size: 14px;
  color: var(--muted, #93939e);
  margin: 0 0 24px;
  line-height: 1.5;
}
.auth-promo-cards {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 24px;
}
.auth-promo-card {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 12px 14px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 11px;
}
.auth-promo-icon {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: rgba(154, 239, 210, 0.12);
  border: 1px solid rgba(154, 239, 210, 0.25);
  color: var(--accent, #9aefd2);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 2px;
}
.auth-promo-icon svg, .auth-promo-icon .icon {
  width: 15px;
  height: 15px;
}
.auth-promo-card-text {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.auth-promo-card-text strong {
  font-size: 13.5px;
  color: #f0f0f5;
  font-weight: 600;
  line-height: 1.3;
}
.auth-promo-card-text span {
  font-size: 12.5px;
  color: var(--muted, #93939e);
  line-height: 1.4;
}
.auth-promo-foot {
  font-size: 13px;
  color: #797986;
  line-height: 1.5;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  padding-top: 16px;
}

@media (max-width: 768px) {
  dialog,
  dialog.model-dialog,
  dialog.admin-dialog,
  dialog.auth-dialog-modal,
  dialog:has(.auth-dialog),
  dialog.chat-history-dialog,
  dialog.image-lightbox-dialog {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    margin: auto !important;
    box-sizing: border-box !important;
  }
  dialog.auth-dialog-modal, dialog:has(.auth-dialog) {
    max-width: min(440px, calc(100vw - 24px)) !important;
  }
  .auth-dialog {
    grid-template-columns: 1fr;
  }
  .auth-promo-pane {
    display: none;
  }
  .auth-main-pane {
    padding: 28px 20px;
  }
}

/* ==========================================================================
   Mobile-Optimized Cards for Panels & Tables (Eliminates horizontal scrolling)
   ========================================================================== */
@media (max-width: 650px) {
  /* Panels & general container bounding */
  .panel, .glass, .balance-panel, .key-card, .onboarding, .metric, .quickstart {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* Modal detail adjustments */
  .model-dialog {
    padding: 20px 16px !important;
  }
  .detail-pricing {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  .estimate-fields {
    flex-direction: column !important;
    gap: 8px !important;
  }
  .detail-list > div {
    grid-template-columns: 1fr auto !important;
    gap: 8px !important;
  }

  /* Invoices Table -> Responsive Mobile Cards (/billing) */
  .invoices-table-wrap {
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .invoices-table {
    display: block !important;
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
  }
  .invoices-table thead {
    display: none !important;
  }
  .invoices-table tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }
  .invoices-table tbody tr {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
      "amount status"
      "date   method"
      "action action" !important;
    padding: 13px 15px !important;
    background: rgba(255, 255, 255, 0.025) !important;
    border: 1px solid var(--line) !important;
    border-radius: 12px !important;
    gap: 7px 12px !important;
    align-items: center !important;
  }
  .invoices-table tbody tr:has(.invoice-col-action:empty) {
    grid-template-areas:
      "amount status"
      "date   method" !important;
  }
  .invoices-table td {
    padding: 0 !important;
    border: 0 !important;
    min-width: 0 !important;
    white-space: normal !important;
  }
  .invoice-col-amount {
    grid-area: amount !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    color: #fff !important;
    letter-spacing: -0.3px;
  }
  .invoice-col-status {
    grid-area: status !important;
    justify-self: end !important;
  }
  .invoice-col-status .status-label {
    margin: 0 !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    padding: 4px 9px !important;
  }
  .invoice-col-date {
    grid-area: date !important;
    font-size: 11.5px !important;
    color: var(--muted) !important;
  }
  .invoice-col-method {
    grid-area: method !important;
    justify-self: end !important;
    font-size: 11.5px !important;
    color: var(--muted) !important;
  }
  .invoice-col-action {
    grid-area: action !important;
    width: 100% !important;
    margin-top: 4px !important;
  }
  .invoice-col-action:empty {
    display: none !important;
  }
  .invoice-col-action .btn {
    width: 100% !important;
    min-height: 38px !important;
    justify-content: center !important;
    border-radius: 8px !important;
    font-size: 12px !important;
  }

  /* Ledger Table -> Responsive Mobile Cards (/billing) */
  .ledger-table-wrap {
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .ledger-table {
    display: block !important;
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
  }
  .ledger-table thead {
    display: none !important;
  }
  .ledger-table tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }
  .ledger-table tbody tr {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
      "kind   amount"
      "date   amount" !important;
    padding: 12px 14px !important;
    background: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid var(--line) !important;
    border-radius: 10px !important;
    gap: 3px 12px !important;
    align-items: center !important;
  }
  .ledger-table td {
    padding: 0 !important;
    border: 0 !important;
    min-width: 0 !important;
  }
  .ledger-col-kind {
    grid-area: kind !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #e5e5eb !important;
  }
  .ledger-col-date {
    grid-area: date !important;
    font-size: 11px !important;
    color: var(--muted) !important;
  }
  .ledger-col-amount {
    grid-area: amount !important;
    justify-self: end !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #fff !important;
  }

  /* Usage History Table -> Responsive Mobile Cards (/usage, /dashboard) */
  .usage-table-wrap {
    overflow: visible !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .usage-table {
    display: block !important;
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
  }
  .usage-table thead {
    display: none !important;
  }
  .usage-table tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
  }
  .usage-table tbody tr {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 5px 12px !important;
    padding: 13px 15px !important;
    background: rgba(255, 255, 255, 0.025) !important;
    border: 1px solid var(--line) !important;
    border-radius: 11px !important;
    align-items: center !important;
  }
  .usage-table td {
    padding: 0 !important;
    border: 0 !important;
    min-width: 0 !important;
  }
  .usage-col-model {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  .usage-col-model .table-detail-link {
    font-size: 13.5px !important;
    font-weight: 600 !important;
    max-width: 100% !important;
    color: #fff !important;
    display: block !important;
    text-align: left !important;
  }
  .usage-col-model .table-subtext {
    display: inline-block !important;
    font-size: 10.5px !important;
    color: var(--muted) !important;
    margin-top: 2px !important;
  }
  .usage-col-cost {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    text-align: right !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #fff !important;
  }
  .usage-col-cost .table-subtext {
    display: block !important;
    font-size: 10px !important;
    color: var(--muted) !important;
  }
  .usage-col-date {
    grid-column: 1 !important;
    grid-row: 2 !important;
    font-size: 11px !important;
    color: var(--muted) !important;
  }
  .usage-col-tokens {
    grid-column: 1 !important;
    grid-row: 3 !important;
    font-size: 11px !important;
    color: var(--faint, #85858e) !important;
  }
  .usage-col-status {
    grid-column: 2 !important;
    grid-row: 2 / span 2 !important;
    justify-self: end !important;
  }
  .usage-col-status .status-label {
    margin: 0 !important;
    font-size: 11px !important;
    white-space: nowrap !important;
    padding: 3px 8px !important;
  }

  /* Documentation Tables -> Clean Readable Cards (/docs) */
  .docs-table-wrap {
    overflow: visible !important;
    margin: 14px 0 !important;
  }
  .docs-table {
    display: block !important;
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
  }
  .docs-table thead {
    display: none !important;
  }
  .docs-table tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  .docs-table tbody tr {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    padding: 14px 16px !important;
    background: rgba(255, 255, 255, 0.025) !important;
    border: 1px solid var(--line) !important;
    border-radius: 10px !important;
  }
  .docs-table td {
    padding: 0 !important;
    border: 0 !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
  }
  .docs-table td strong {
    font-size: 14px !important;
    color: #fff !important;
  }
  .docs-table td.mono {
    font-size: 12px !important;
    color: var(--accent, #9aefd2) !important;
  }
}

/* Universal custom scrollbars matching chat */
html,body,*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent}
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:6px}
::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.22)}
::-webkit-scrollbar-thumb:active{background:rgba(255,255,255,.32)}
::-webkit-scrollbar-corner{background:transparent}

/* Performance optimization: disable expensive backdrop-filter on repetitive card grids */
.catalog-card,
.landing-model,
.admin-metric,
.review-card {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

