*{box-sizing:border-box}
:root{--bp-primary:#2563eb;--bp-primary-dark:#1d4ed8;--bp-violet:#5b35f5;--bp-text:#0f172a;--bp-muted:#64748b;--bp-line:#dbe5f0;--bp-bg:#f5f7fb}
body.bp-body{margin:0;background:var(--bp-bg);color:var(--bp-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
.bp-shell{width:min(calc(100% - 32px),1500px);margin:0 auto;padding:28px 0}
.bp-brand{text-align:center;margin-bottom:18px}
.bp-brand a{color:var(--bp-text);font-size:22px;font-weight:800;text-decoration:none}
.bp-card,.bp-portal-card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;box-shadow:0 12px 40px rgba(15,23,42,.07)}
.bp-card{width:min(100%,520px);margin:0 auto;padding:30px}
.bp-card-wide{width:100%}
.bp-card h1,.bp-portal-card h1{margin:0 0 8px;font-size:28px}
.bp-lead{margin:0 0 24px;color:#6b7280}
.bp-form{display:grid;gap:16px}
.bp-form label{display:grid;gap:7px;font-size:14px;font-weight:650}
.bp-form input[type=text],.bp-form input[type=email],.bp-form input[type=tel],.bp-form input[type=password]{width:100%;height:46px;padding:0 13px;border:1px solid #d1d5db;border-radius:9px;background:#fff;font-size:16px}
.bp-form input:focus,.bp-price-search:focus{outline:3px solid #dbeafe;border-color:var(--bp-primary)}
.bp-button{min-height:46px;padding:11px 16px;border:0;border-radius:9px;background:#111827;color:#fff;font-size:15px;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}
.bp-button:hover{opacity:.92}
.bp-button-secondary{background:#374151}
.bp-button-link{display:inline-flex;align-items:center;justify-content:center}
.bp-switch{text-align:center;color:#6b7280;margin:22px 0 0}
.bp-switch a{color:#1d4ed8;font-weight:700}
.bp-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:8px!important;font-weight:500!important}
.bp-notice{padding:12px 14px;border-radius:9px;margin:0 0 18px;font-size:14px;line-height:1.5}
.bp-notice-success{background:#ecfdf5;color:#166534;border:1px solid #bbf7d0}
.bp-notice-error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}
.bp-notice-info{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}
.bp-resend{margin-top:20px;border-top:1px solid #e5e7eb;padding-top:18px}
.bp-resend summary{cursor:pointer;font-weight:650}
.bp-form-compact{margin-top:14px}
.bp-footer{text-align:center;color:#94a3b8;font-size:13px;margin-top:22px}
.bp-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.bp-kicker{margin:0 0 5px;color:#64748b;font-size:12px;font-weight:800;letter-spacing:.12em}
.bp-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.bp-info{padding:16px;border:1px solid #e5e7eb;border-radius:12px;background:#f8fafc}
.bp-info span{display:block;margin-bottom:5px;color:#64748b;font-size:13px}
.bp-info strong{overflow-wrap:anywhere}
.bp-status-ok{color:#15803d}
.bp-empty-state{margin:18px 0;padding:22px;border:1px dashed #cbd5e1;border-radius:12px;background:#f8fafc}
.bp-empty-state h2{font-size:18px;margin:0 0 8px}
.bp-empty-state p{color:#64748b;margin:0;line-height:1.6}

.bp-portal-card{overflow:hidden}
.bp-portal-card>.bp-notice{margin:22px}
.bp-portal-head{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 26px;border-bottom:1px solid #e5e7eb}
.bp-portal-head h1{font-size:25px}
.bp-portal-head p:last-child{margin:0;color:var(--bp-muted)}
.bp-portal-nav{display:flex;align-items:center;gap:8px}
.bp-portal-nav a,.bp-portal-nav button{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 14px;border:1px solid transparent;border-radius:9px;background:transparent;color:#475569;font:inherit;font-size:14px;font-weight:700;text-decoration:none;cursor:pointer}
.bp-portal-nav a:hover,.bp-portal-nav button:hover{background:#f1f5f9;color:#0f172a}
.bp-portal-nav a.active{background:#e8efff;color:#1d4ed8}
.bp-portal-nav form{margin:0}
.bp-account-card{padding-bottom:26px}
.bp-account-card .bp-grid{padding:26px}

.bp-price-app{display:grid;grid-template-columns:240px minmax(0,1fr);min-height:620px}
.bp-price-sidebar{padding:22px 18px;border-right:1px solid #e5e7eb;background:#fbfcff}
.bp-filter-label{margin:0 0 20px;color:#818cf8;font-size:12px;font-weight:800;letter-spacing:.1em}
.bp-filter-label::before{content:"⚙";margin-right:7px}
.bp-search-label,.bp-category-label{display:block;margin:0 0 8px;color:#64748b;font-size:12px;font-weight:700}
.bp-search-wrap{position:relative;margin-bottom:28px}
.bp-search-wrap span{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#6366f1;font-size:20px;line-height:1}
.bp-price-search{width:100%;height:42px;padding:0 12px 0 38px;border:1px solid #c7d2fe;border-radius:12px;background:#fff;color:#0f172a;font-size:14px;box-shadow:0 3px 10px rgba(79,70,229,.06)}
.bp-category-label::before{content:"▦";margin-right:7px;color:#64748b}
.bp-category-list{display:grid;gap:7px}
.bp-category-button{width:100%;min-height:42px;padding:10px 12px;border:0;border-radius:9px;background:transparent;color:#334155;font-size:14px;font-weight:650;text-align:left;cursor:pointer}
.bp-category-button:hover{background:#eef2ff;color:#4338ca}
.bp-category-button.active{background:linear-gradient(135deg,#6547f5,#4f2cf4);color:#fff;box-shadow:0 6px 16px rgba(91,53,245,.22)}
.bp-price-main{min-width:0;padding:22px}
.bp-price-panel{display:none}
.bp-price-panel.active{display:block}
.bp-price-panel>h2{margin:0 0 14px;font-size:21px;color:#0f172a}
.bp-table-scroll{width:100%;overflow:auto;border:1px solid #d9e4ef;border-radius:8px;background:#fff}
.bp-price-table{width:100%;min-width:850px;border-collapse:collapse;table-layout:auto;font-size:13px}
.bp-price-table th{padding:11px 12px;background:#2388df;color:#fff;font-size:12px;font-weight:800;text-align:left;text-transform:uppercase;white-space:nowrap}
.bp-price-table td{padding:13px 12px;border-bottom:1px solid #dce6f0;color:#0f172a;line-height:1.45;vertical-align:middle}
.bp-price-table tbody tr:nth-child(even){background:#f2f7fc}
.bp-price-table tbody tr:hover{background:#e8f3fd}
.bp-price-table th:first-child,.bp-price-table td:first-child{font-weight:750;white-space:nowrap}
.bp-price-table th:nth-child(n+3),.bp-price-table td:nth-child(n+3){text-align:center}
.bp-price-table td:nth-child(3){color:#ef4444;font-weight:750;white-space:nowrap}
.bp-price-table td[hidden],.bp-price-table tr[hidden]{display:none!important}
.bp-no-results{margin:18px 0;padding:16px;border-radius:10px;background:#fff7ed;color:#9a3412;font-weight:650}
.bp-no-results[hidden]{display:none}
.bp-pagination{display:flex;justify-content:center;align-items:center;gap:7px;padding:22px 0 2px}
.bp-page-button{min-width:34px;height:34px;padding:0 9px;border:1px solid #dbe5f0;border-radius:9px;background:#fff;color:#475569;font-size:13px;font-weight:700;cursor:pointer}
.bp-page-button:hover:not(:disabled){border-color:#a5b4fc;color:#4f46e5}
.bp-page-button.active{border-color:#5b35f5;background:#5b35f5;color:#fff;box-shadow:0 5px 12px rgba(91,53,245,.24)}
.bp-page-button:disabled{opacity:.38;cursor:not-allowed}

@media(max-width:900px){
  .bp-portal-head{align-items:flex-start;flex-direction:column}
  .bp-price-app{grid-template-columns:1fr}
  .bp-price-sidebar{border-right:0;border-bottom:1px solid #e5e7eb}
  .bp-category-list{display:flex;overflow:auto;padding-bottom:4px}
  .bp-category-button{width:auto;min-width:max-content}
}
@media(max-width:640px){
  .bp-shell{width:min(calc(100% - 20px),1500px);padding:14px 0}
  .bp-card{padding:22px;border-radius:14px}
  .bp-card h1,.bp-portal-card h1{font-size:23px}
  .bp-grid{grid-template-columns:1fr}
  .bp-portal-head{padding:18px}
  .bp-portal-nav{width:100%;flex-wrap:wrap}
  .bp-portal-nav a,.bp-portal-nav form,.bp-portal-nav button{flex:1}
  .bp-price-sidebar,.bp-price-main{padding:16px}
  .bp-price-table{font-size:12px}
}
