.bllm{width:100%;max-width:920px;margin:0 auto;}
.bllm *{box-sizing:border-box;}
.bllm [hidden]{display:none !important;}

.bllm-app{background:#2b5962;border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(0,0,0,0.16);border:1px solid #1d3c43;}
.bllm-titlebar{display:flex;align-items:center;gap:7px;padding:13px 18px;background:#24494f;border-bottom:1px solid #1d3c43;}
.bllm-dot{width:12px;height:12px;border-radius:50%;display:inline-block;flex-shrink:0;}
.bllm-dot-r{background:#e0655a;}
.bllm-dot-y{background:#e5ae12;}
.bllm-dot-g{background:#4cae74;}
.bllm-apptitle{margin-left:10px;font-size:13px;font-weight:600;letter-spacing:1px;color:#eef6f6;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.bllm-appbadge{margin-left:auto;background:rgba(229,174,18,0.15);color:#e5ae12;font-size:11px;font-weight:700;letter-spacing:.6px;border:1px solid rgba(229,174,18,0.4);border-radius:20px;padding:3px 10px;white-space:nowrap;}

.bllm-tabs{display:flex;gap:0;background:#24494f;padding:0 18px;}
.bllm-tab{flex:0 1 auto;min-height:48px;padding:12px 18px;border:0;border-bottom:3px solid transparent;background:transparent;color:#b7d2d4;font-size:14px;font-weight:600;cursor:pointer;}
.bllm-tab[aria-selected="true"]{color:#f9f9f9;border-bottom-color:#e5ae12;}
.bllm-tab:focus-visible{outline:1px solid #f9f9f9;outline-offset:-2px;}

.bllm-panel{padding:20px 16px 22px;}

.bllm-promptlabel{display:block;font-size:14px;font-weight:600;color:#eef6f6;margin:0 0 10px;text-align:left;}
.bllm-promptline{display:flex;flex-direction:column;gap:10px;}
.bllm-promptchip{display:none;align-items:center;background:#1d3c43;border:1px solid #41707a;border-right:0;border-radius:12px 0 0 12px;padding:0 12px;font-family:ui-monospace,'Cascadia Mono',Consolas,Menlo,monospace;font-size:14px;color:#6fd99a;white-space:nowrap;}
.bllm input[type="text"],.bllm input[type="email"],.bllm textarea,.bllm select{width:100%;min-height:50px;padding:13px 16px;font-size:16px;color:#202020;background:#fff;border:1px solid #c9d4d4;border-radius:12px;}
.bllm-promptline input{background:#1d3c43;border:1px solid #41707a;color:#e8f4ef;font-family:ui-monospace,'Cascadia Mono',Consolas,Menlo,monospace;caret-color:#6fd99a;}
.bllm-promptline input:focus{outline:1px solid #e5ae12;outline-offset:1px;border-color:#e5ae12;}
.bllm textarea{min-height:96px;resize:vertical;line-height:1.5;}
.bllm input:focus,.bllm textarea:focus,.bllm select:focus{outline:1px solid #376e78;outline-offset:1px;border-color:#376e78;}
.bllm-promptline ::placeholder{color:#7fa6ad;opacity:1;}
.bllm ::placeholder{color:#8da0a2;opacity:1;}

.bllm-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 26px;border:0;border-radius:12px;background:#376e78;color:#f9f9f9;font-size:15px;font-weight:700;letter-spacing:.3px;cursor:pointer;text-decoration:none;}
.bllm-btn:hover{background:#2b5962;}
.bllm-btn:focus-visible{outline:1px solid #f9f9f9;outline-offset:2px;}
.bllm-btn:disabled{opacity:.6;cursor:wait;}
.bllm-btn-start{background:#e5ae12;color:#2b5962;}
.bllm-btn-start:hover{background:#c8970f;}
.bllm-btn-ghost{background:transparent;color:#376e78;border:1px solid #376e78;}
.bllm-btn-ghost:hover{background:#e3edee;}

.bllm-opts{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0 0;}
.bllm-pill{position:relative;display:inline-flex;align-items:center;gap:7px;border:1px solid #41707a;border-radius:24px;padding:10px 16px;background:#1d3c43;cursor:pointer;min-height:44px;}
.bllm-pill input{position:absolute;opacity:0;width:1px;height:1px;min-height:1px;}
.bllm-pill span{font-size:14px;font-weight:600;color:#d6e7e8;}
.bllm-pill em{font-style:normal;font-size:10.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:#e5ae12;}
.bllm-pill:has(input:checked){border-color:#6fd99a;background:rgba(111,217,154,0.10);}
.bllm-pill:has(input:checked) span{color:#f9f9f9;}
.bllm-pill:has(input:focus-visible){outline:1px solid #f9f9f9;outline-offset:2px;}
.bllm-mini{background:none;border:0;padding:10px 4px;min-height:44px;color:#b7d2d4;font-size:13px;font-weight:600;text-decoration:none;cursor:pointer;}
.bllm-mini:hover{color:#eef6f6;}
.bllm-mini[aria-expanded="true"]{color:#e5ae12;}

.bllm-drawer{margin:12px 0 0;border:1px solid #41707a;border-radius:12px;background:#1d3c43;padding:14px 16px;text-align:left;}
.bllm-drawer p{margin:0 0 10px;font-size:14px;line-height:1.55;color:#d6e7e8;}
.bllm-drawer p:last-child{margin:0;}
.bllm-drawer strong{color:#f9f9f9;}
.bllm-drawer label{display:block;font-size:13px;font-weight:600;color:#eef6f6;margin:0 0 6px;}
.bllm-drawer small{display:block;margin:6px 0 0;font-size:12px;color:#b7d2d4;}
.bllm-drawer input{background:#2b5962;border-color:#41707a;color:#e8f4ef;}

.bllm-mailrow{margin:16px 0 0;padding:14px 16px;border:1px dashed #6f9aa3;border-radius:12px;text-align:left;}
.bllm-mailrow label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#eef6f6;margin:0 0 8px;flex-wrap:wrap;}
.bllm-mailrow label em{font-style:normal;font-weight:400;color:#b7d2d4;}
.bllm-mailicon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;background:rgba(229,174,18,0.15);color:#e5ae12;font-size:14px;}
.bllm-mailrow input{max-width:420px;}
.bllm-mailrow small{display:block;margin:6px 0 0;font-size:12px;color:#b7d2d4;}

.bllm-help{margin:12px 0 0;font-size:13px;line-height:1.5;color:#b7d2d4;text-align:left;}
.bllm-helpwrap{margin:20px auto 0;display:flex;flex-direction:column;align-items:center;gap:12px;}
.bllm-helpcta{margin:0;text-align:center;font-size:15px;line-height:1.5;color:#5a6a6c;}
.bllm-helpbtn{border-radius:26px;padding:12px 30px;}
.bllm-hp-wrap{position:absolute;left:-9999px;top:-9999px;height:1px;width:1px;overflow:hidden;}

.bllm-termwrap{margin:18px 0 0;border:1px solid #41707a;border-radius:14px;overflow:hidden;background:#1d3c43;}
.bllm-term{height:264px;overflow-y:auto;padding:16px 18px;font-family:ui-monospace,'Cascadia Mono',Consolas,Menlo,monospace;font-size:13px;line-height:1.65;color:#d2efe4;text-align:left;}
.bllm-term-idle{height:auto;min-height:110px;}
.bllm-line{white-space:pre-wrap;word-break:break-word;}
.bllm-line-ok{color:#6fd99a;font-weight:600;}
.bllm-line-head{color:#e5ae12;font-weight:600;}
.bllm-term::after{content:"▌";color:#6fd99a;animation:bllm-blink 1s steps(1) infinite;}
.bllm-term-idle::after{content:none;animation:none;}
@keyframes bllm-blink{50%{opacity:0;}}

.bllm-bar{height:9px;border-radius:6px;background:#1d3c43;border:1px solid #41707a;margin:16px 0 8px;overflow:hidden;}
.bllm-barfill{height:100%;width:4%;border-radius:6px;background:linear-gradient(90deg,#376e78,#6fd99a);transition:width .5s ease;}
.bllm-phase{margin:0;font-size:14px;font-weight:600;color:#6fd99a;text-align:left;}

.bllm-errorbox{margin:18px 0 0;border:1px solid #e8c9a0;border-left:5px solid #d99a2b;border-radius:14px;background:#fdf6ea;padding:22px 20px;text-align:left;}
.bllm-errorbox h3{margin:0 0 8px;font-size:18px;color:#202020;}
.bllm-errorbox p{margin:0 0 16px;font-size:15px;line-height:1.6;color:#3a4748;}
.bllm-error-actions{display:flex;gap:10px;flex-wrap:wrap;}
.bllm-error-actions .bllm-btn-ghost{background:#fff;}

.bllm-result-title{margin:18px 0 4px;font-size:22px;color:#f9f9f9;text-align:left;}
.bllm-result-sub{margin:0 0 16px;font-size:14px;color:#d6e7e8;text-align:left;}
.bllm-result-sub a{color:#e5ae12;}
.bllm-notes{display:flex;flex-direction:column;gap:8px;margin:0 0 16px;}
.bllm-note{margin:0;padding:12px 16px;border-radius:12px;background:#eef4f4;border:1px solid #d5e2e3;font-size:14px;line-height:1.55;color:#2f4549;text-align:left;}
.bllm-note-warn{background:#fdf6ea;border-color:#e8c9a0;color:#5c4a1e;}
.bllm-files{display:flex;flex-direction:column;gap:18px;}
.bllm-file{border:1px solid #e4e8e8;border-top:3px solid #6fd99a;border-radius:16px;background:#fff;padding:18px 16px;text-align:left;}
.bllm-file-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.bllm-file-head strong{font-size:16px;color:#202020;font-family:ui-monospace,'Cascadia Mono',Consolas,Menlo,monospace;}
.bllm-badge{display:inline-block;background:#e3edee;color:#376e78;font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;border-radius:20px;padding:3px 10px;}
.bllm-file-hint{margin:6px 0 10px;font-size:13px;color:#5a6a6c;}
.bllm-pre{max-height:300px;overflow:auto;background:#1d3c43;color:#d2efe4;border-radius:12px;padding:14px 16px;font-family:ui-monospace,'Cascadia Mono',Consolas,Menlo,monospace;font-size:12.5px;line-height:1.6;text-align:left;white-space:pre-wrap;word-break:break-word;}
.bllm-file-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 0;}
.bllm-file-actions .bllm-btn{background:#376e78;}
.bllm-file-actions .bllm-btn:hover{background:#2b5962;}
.bllm-file-actions .bllm-btn-ghost{background:#fff;}
.bllm-restart-row{margin:20px 0 0;text-align:left;}
.bllm-restart-row .bllm-btn-ghost{color:#d6e7e8;border-color:#6f9aa3;}
.bllm-restart-row .bllm-btn-ghost:hover{background:#1d3c43;color:#f9f9f9;}

.bllm-manualbox{margin:18px 0 0;border-radius:16px;background:#fff;border:1px solid #e4e8e8;padding:22px 18px;text-align:left;}
.bllm-manualbox h3{margin:0 0 6px;font-size:20px;color:#202020;}
.bllm-manualbox > p{margin:0 0 18px;font-size:14px;line-height:1.55;color:#5a6a6c;}
.bllm-manualbox label{display:block;font-size:14px;font-weight:600;color:#3a4748;margin:0 0 6px;text-align:left;}
.bllm-grid{display:grid;grid-template-columns:1fr;gap:14px;}
.bllm-field small{display:block;margin:4px 0 0;font-size:12px;color:#8da0a2;}
.bllm-manual-actions{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 0;}
.bllm-hint{margin:12px 0 0;padding:10px 14px;border-radius:10px;background:#fdf0ee;border:1px solid #e8b3aa;color:#7a2e23;font-size:14px;}

#bllm-chkwrap .bllm-help{color:#b7d2d4;}
.bllm-chk-score{border-radius:14px;padding:16px 18px;margin:18px 0 14px;text-align:left;}
.bllm-chk-score strong{font-size:17px;}
.bllm-chk-score p{margin:6px 0 0;font-size:14px;line-height:1.55;}
.bllm-chk-good{background:#eaf6ee;border:1px solid #b9dfc6;color:#1f5132;}
.bllm-chk-mid{background:#fdf6ea;border:1px solid #e8c9a0;color:#5c4a1e;}
.bllm-chk-bad{background:#fdf0ee;border:1px solid #e8b3aa;color:#7a2e23;}
.bllm-chk-list{list-style:none;margin:0 0 14px;padding:14px 16px;background:#fff;border-radius:12px;border:1px solid #e4e8e8;text-align:left;}
.bllm-chk-list li{padding:9px 4px;font-size:14.5px;border-bottom:1px solid #eef1f1;}
.bllm-chk-list li:last-child{border-bottom:0;}
.bllm-ok{color:#1f7a45;}
.bllm-bad{color:#b3402f;}
.bllm-neutral{color:#5a6a6c;}
#bllm-chk-result .bllm-note{margin-top:14px;}

@media (min-width:640px){
.bllm-panel{padding:24px 24px 26px;}
.bllm-promptline{flex-direction:row;align-items:stretch;gap:0;border:1px solid #41707a;border-radius:12px;overflow:hidden;background:#fff;}
.bllm-promptline:focus-within{border-color:#e5ae12;}
.bllm-promptchip{display:inline-flex;border:0;border-radius:0;}
.bllm .bllm-promptline input[type="text"]{flex:1 1 auto;border:0;border-radius:0;}
.bllm .bllm-promptline input[type="text"]:focus{outline:none;}
.bllm-promptline .bllm-btn{flex:0 0 auto;border-radius:0;}
.bllm-grid{grid-template-columns:1fr 1fr;}
.bllm-grid .bllm-span2{grid-column:1 / -1;}
.bllm-mini{padding:10px 8px;}
}

@media (min-width:1024px){
.bllm-panel{padding:28px 32px 30px;}
.bllm-term{height:300px;font-size:13.5px;}
.bllm-term-idle{height:auto;min-height:110px;}
}

@media (max-width:420px){
.bllm-appbadge{display:none;}
}

@media (prefers-reduced-motion:reduce){
.bllm-term::after{animation:none;}
.bllm-barfill{transition:none;}
}

@media (forced-colors:active){
.bllm-app,.bllm-file,.bllm-btn,.bllm-tab,.bllm-pill{border:2px solid;}
}
