/* Beyond the Line Build 012 — RSA / Incident / Asset Compliance */
:root{--b12-green:#173d2e;--b12-sage:#8a9a84;--b12-bg:#f2f5f1;--b12-border:#d7dfd8;--b12-red:#9b2525;--b12-amber:#8a5a00;--b12-text:#17221c;--b12-muted:#66736b}
#btl012-launcher{position:fixed;right:14px;bottom:78px;z-index:2147482500;display:flex;flex-direction:column;align-items:flex-end;gap:8px;font-family:Arial,sans-serif}
#btl012-launcher button{border:0;border-radius:999px;min-height:44px;padding:10px 16px;font-weight:900;box-shadow:0 4px 18px #0003;cursor:pointer}
#btl012-open{background:var(--b12-green);color:#fff}
#btl012-refuse{background:#a52323;color:#fff;letter-spacing:.03em}
html.btl012-open,body.btl012-open{overflow:hidden!important}
#btl012-overlay{position:fixed;inset:0;z-index:2147483000;background:var(--b12-bg);color:var(--b12-text);font-family:Arial,sans-serif;overflow:auto;overscroll-behavior:contain}
#btl012-overlay *{box-sizing:border-box}
.b12-shell{min-height:100%;padding-bottom:48px}
.b12-top{position:sticky;top:0;z-index:10;background:var(--b12-green);color:#fff;display:flex;align-items:center;gap:12px;padding:12px 14px;box-shadow:0 2px 12px #0002}
.b12-top button{border:0;background:#ffffff18;color:#fff;border-radius:10px;min-width:44px;min-height:44px;font-size:24px;font-weight:900}
.b12-top h1{font-size:20px;margin:0}.b12-top small{display:block;opacity:.78;margin-top:2px}.b12-top .b12-spacer{flex:1}.b12-sync{font-size:11px;text-align:right;opacity:.85}
.b12-tabs{position:sticky;top:68px;z-index:9;display:flex;gap:6px;overflow:auto;padding:8px 10px;background:#e8eee9;border-bottom:1px solid var(--b12-border);scrollbar-width:none}
.b12-tabs::-webkit-scrollbar{display:none}.b12-tabs button{white-space:nowrap;border:1px solid #c9d4cc;background:#fff;color:#23342b;border-radius:999px;min-height:38px;padding:8px 12px;font-weight:800}.b12-tabs button.active{background:var(--b12-green);color:#fff;border-color:var(--b12-green)}
.b12-main{max-width:1120px;margin:0 auto;padding:12px}.b12-panel{display:none}.b12-panel.active{display:block}
.b12-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.b12-card{background:#fff;border:1px solid var(--b12-border);border-radius:13px;padding:14px;box-shadow:0 1px 2px #0000000c}.b12-card h2,.b12-card h3{margin:0 0 8px}.b12-card h2{font-size:19px}.b12-card h3{font-size:15px}.b12-card p{margin:5px 0;color:var(--b12-muted);line-height:1.4}
.b12-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}.b12-stat{background:#fff;border:1px solid var(--b12-border);border-radius:12px;padding:12px}.b12-stat span{display:block;color:var(--b12-muted);font-size:10px;font-weight:900;text-transform:uppercase}.b12-stat b{font-size:25px;display:block;margin-top:4px}.b12-stat.warn{border-color:#dfb764;background:#fff9e9}.b12-stat.danger{border-color:#df9393;background:#fff1f1}
.b12-form{display:grid;gap:10px}.b12-form.two{grid-template-columns:repeat(2,minmax(0,1fr))}.b12-field{display:grid;gap:4px}.b12-field.full{grid-column:1/-1}.b12-field label{font-size:11px;font-weight:900;color:#49564f;text-transform:uppercase;letter-spacing:.03em}.b12-field input,.b12-field select,.b12-field textarea{width:100%;min-height:44px;border:1px solid #bcc9c0;border-radius:9px;padding:9px 10px;background:#fff;color:#17221c;font:inherit}.b12-field textarea{min-height:90px;resize:vertical}.b12-checks{display:flex;flex-wrap:wrap;gap:6px}.b12-check{display:flex;gap:7px;align-items:center;border:1px solid #d2dbd4;background:#fff;border-radius:9px;padding:8px 10px;font-weight:700;font-size:12px}.b12-check input{width:18px;height:18px}.b12-force{border:2px solid #d58c8c;background:#fff5f5;padding:10px;border-radius:10px}
.b12-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.b12-actions button,.b12-btn{border:1px solid #b9c5bd;background:#fff;color:#1b2b23;border-radius:9px;min-height:42px;padding:9px 13px;font-weight:900;cursor:pointer}.b12-actions .primary,.b12-btn.primary{background:var(--b12-green);color:#fff;border-color:var(--b12-green)}.b12-actions .danger,.b12-btn.danger{background:#a52323;color:#fff;border-color:#a52323}.b12-btn:disabled{opacity:.45;cursor:not-allowed}
.b12-list{display:grid;gap:8px}.b12-row{background:#fff;border:1px solid var(--b12-border);border-radius:11px;padding:12px;display:grid;grid-template-columns:minmax(150px,1.5fr) minmax(90px,.7fr) minmax(90px,.7fr) auto;gap:10px;align-items:center}.b12-row strong{display:block}.b12-row small{color:var(--b12-muted);display:block;margin-top:3px}.b12-row .b12-actions{margin:0;justify-content:flex-end}.b12-row button{min-height:36px;padding:7px 10px}.b12-badge{display:inline-block;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:900;background:#e9f1eb;color:#31583f}.b12-badge.warn{background:#fff0c7;color:#795100}.b12-badge.danger{background:#ffe0e0;color:#8d2020}.b12-badge.dark{background:#e1e7e3;color:#24362d}
.b12-note{border-left:4px solid var(--b12-sage);background:#eef4ef;padding:10px 12px;border-radius:8px;margin:10px 0;color:#415047}.b12-error{border-left-color:#b52d2d;background:#fff0f0;color:#7b1e1e}.b12-empty{padding:20px;text-align:center;color:var(--b12-muted);background:#fff;border:1px dashed #cbd5ce;border-radius:11px}.b12-offline{background:#fff4d5!important;color:#725100!important}.b12-hidden{display:none!important}
.b12-file{font-size:12px}.b12-asset-link{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;word-break:break-all;background:#f3f5f3;padding:6px;border-radius:6px;margin-top:5px}.b12-print-label{display:none}
@media(max-width:760px){#btl012-launcher{right:10px;bottom:70px}.b12-main{padding:9px}.b12-grid,.b12-form.two{grid-template-columns:1fr}.b12-stats{grid-template-columns:repeat(2,1fr)}.b12-row{grid-template-columns:1fr}.b12-row .b12-actions{justify-content:flex-start}.b12-top{padding:10px}.b12-tabs{top:64px}.b12-sync{display:none}}
@media print{body>*:not(#btl012-overlay){display:none!important}#btl012-overlay{position:static;overflow:visible;background:#fff}.b12-top,.b12-tabs,.b12-actions,#btl012-launcher{display:none!important}.b12-panel{display:none!important}.b12-panel.active{display:block!important}.b12-card,.b12-row{break-inside:avoid;box-shadow:none}.b12-print-label{display:block}}
