.bsmf-wrap{--bsmf-accent:#4f46e5;--bsmf-accent-hover:#4338ca;--bsmf-hero-start:#111827;--bsmf-hero-end:#1f2937;--bsmf-surface:#fff;--bsmf-bg:#f8fafc;--bsmf-text:#111827;--bsmf-muted:#667085;--bsmf-border:#d7dce3;--bsmf-card-pad:18px;--bsmf-tab-pad:10px 14px;max-width:1200px;margin:0 auto;padding:16px;background:var(--bsmf-bg);color:var(--bsmf-text);border-radius:18px}.bsmf-hero{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--bsmf-hero-start),var(--bsmf-hero-end));color:#fff;border-radius:18px;padding:24px;margin-bottom:14px;box-shadow:0 10px 25px rgba(0,0,0,.12)}.bsmf-hero h1{margin:0;font-size:28px}.bsmf-hero p{margin:6px 0 0;color:#d1d5db}.bsmf-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.bsmf-tabs a{padding:var(--bsmf-tab-pad);border-radius:12px;background:var(--bsmf-surface);border:1px solid var(--bsmf-border);text-decoration:none;color:var(--bsmf-text);transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease}.bsmf-tabs a:hover{background:var(--bsmf-accent-hover);border-color:var(--bsmf-accent-hover);color:#fff;transform:translateY(-1px)}.bsmf-tabs a.active{background:var(--bsmf-accent);border-color:var(--bsmf-accent);color:#fff}.bsmf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}.bsmf-card{background:var(--bsmf-surface);border:1px solid var(--bsmf-border);border-radius:18px;padding:var(--bsmf-card-pad);box-shadow:0 6px 18px rgba(17,24,39,.06);margin-bottom:14px;color:var(--bsmf-text)}.bsmf-card h3{margin-top:0}.bsmf-card p,.bsmf-card li{color:var(--bsmf-muted)}.bsmf-big{font-size:34px;font-weight:800;color:var(--bsmf-text)}.bsmf-badge{display:inline-block;border-radius:999px;background:#eef2ff;color:#3730a3;padding:5px 10px;font-size:12px;font-weight:700}.bsmf-table{width:100%;border-collapse:collapse}.bsmf-table th,.bsmf-table td{border-bottom:1px solid var(--bsmf-border);padding:10px;text-align:left}.bsmf-table th{background:rgba(148,163,184,.14)}.bsmf-ok{color:#047857;font-weight:700}.bsmf-bad{color:#b91c1c;font-weight:700}.bsmf-locked{opacity:.8}.bsmf-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.bsmf-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}.bsmf-card-span{grid-column:1/-1}.bsmf-module-card{position:relative;overflow:hidden}.bsmf-module-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--bsmf-accent)}.bsmf-warn{color:#b76e00;font-weight:700}.bsmf-news{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.bsmf-news-item{border:1px solid var(--bsmf-border);border-radius:14px;padding:14px;background:rgba(148,163,184,.08);margin:10px 0}.bsmf-news-item h4{margin:8px 0 6px}.bsmf-news-item p{margin:0 0 8px}.bsmf-news-item small{color:var(--bsmf-muted)}.bsmf-grid-wide{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.bsmf-input{border:1px solid var(--bsmf-border);border-radius:10px;padding:10px 12px;background:var(--bsmf-surface);color:var(--bsmf-text)}input.bsmf-input[type=color]{height:44px;padding:4px;cursor:pointer}.bsmf-card code{background:rgba(148,163,184,.16);border:1px solid var(--bsmf-border);border-radius:8px;padding:3px 6px;color:var(--bsmf-text)}.bsmf-card ul{margin:8px 0 0 20px}.bsmf-card li{margin:5px 0}.bsmf-badge-warn{background:#fff3cd;color:#7a4d00;border-color:#f3d27a}.bsmf-report{width:100%;min-height:360px;border:1px solid var(--bsmf-border);border-radius:14px;padding:14px;font-family:Consolas,Monaco,monospace;background:#0f172a;color:#e5e7eb;box-sizing:border-box}.bsmf-card .button,.bsmf-wrap .button{background:var(--bsmf-accent);border-color:var(--bsmf-accent);color:#fff;border-radius:10px;transition:background .15s ease,border-color .15s ease,transform .15s ease}.bsmf-card .button:hover,.bsmf-wrap .button:hover{background:var(--bsmf-accent-hover);border-color:var(--bsmf-accent-hover);color:#fff;transform:translateY(-1px)}.bsmf-card .button[disabled],.bsmf-wrap .button[disabled]{opacity:.55;transform:none}.bsmf-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.bsmf-form-grid label{display:flex;flex-direction:column;gap:6px}.bsmf-form-grid label span{font-size:12px;color:var(--bsmf-muted)}.bsmf-checks{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px}.bsmf-checks label{background:rgba(148,163,184,.10);border:1px solid var(--bsmf-border);border-radius:12px;padding:10px 12px}
