.qbo-integration { margin-top:23px; overflow:hidden; }
.qbo-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:22px; padding:24px; border-bottom:1px solid var(--border,#e1e7da); }
.qbo-kicker { display:block; font-size:9px; font-weight:700; letter-spacing:1.5px; color:#65795a; margin-bottom:7px; }
.qbo-heading h2 { font-size:19px; margin:0; letter-spacing:-.45px; }
.qbo-heading p { color:#67775e; font-size:12px; line-height:1.7; margin-top:7px; }
.qbo-badge { flex-shrink:0; border-radius:20px; background:#f1f1e9; color:#65705b; border:1px solid #e0e3d5; padding:5px 10px; font-size:10px; font-weight:600; }
.qbo-badge.is-connected { color:#2f6f50; background:#edf5e9; border-color:#d6e7cd; }
.qbo-notice { display:flex; gap:11px; margin:21px 24px 0; padding:15px; color:#746036; background:#fbf7e9; border:1px solid #e8dfbe; border-radius:8px; }
.qbo-integration svg { flex-shrink:0; width:18px; height:18px; }
.qbo-notice>svg { margin-top:2px; }
.qbo-notice strong { font-size:12px; }
.qbo-notice p { font-size:12px; line-height:1.75; margin-top:4px; }
.qbo-warning { margin-bottom:22px; }
.qbo-company { display:flex; align-items:center; gap:12px; padding:19px 24px 0; color:#4c6d4b; }
.qbo-company>svg { width:22px; height:22px; }
.qbo-company span,.qbo-company small { display:block; font-size:10px; color:#687960; margin:3px 0; }
.qbo-company strong { display:block; font-size:14px; overflow-wrap:anywhere; }
.qbo-environment { padding:18px 24px 0; color:#687960; font-size:11px; }
.qbo-features { display:grid; grid-template-columns:1fr 1fr; gap:26px; padding:25px 24px; }
.qbo-features article { display:flex; align-items:flex-start; gap:12px; min-width:0; }
.qbo-feature-icon { display:grid; place-items:center; flex-shrink:0; width:34px; height:34px; background:#f0f4eb; border:1px solid #e0e7d9; border-radius:9px; color:#5e825b; }
.qbo-features h3 { font-size:13px; line-height:1.5; margin:0 0 7px; }
.qbo-features p { font-size:12px; color:#63745b; line-height:1.8; }
.qbo-sync-summary { display:flex; flex-wrap:wrap; align-items:center; gap:24px; margin:0 24px 23px; padding:17px 19px; background:#f8faf4; border:1px solid #e1e7da; border-radius:8px; }
.qbo-sync-summary>div { min-width:100px; }
.qbo-sync-summary strong { display:block; font-size:21px; font-weight:600; color:#3f6243; }
.qbo-sync-summary span { display:block; color:#65765d; font-size:11px; margin-top:4px; }
.qbo-sync-summary p { flex:1 1 240px; color:#526c4b; font-size:12px; line-height:1.7; }
.qbo-sync-summary small { display:block; color:#6b785e; font-size:10px; line-height:1.7; margin-top:5px; }
.qbo-error { margin:0 24px 22px; padding:15px 17px; border:1px solid #e8cec3; background:#fcf1eb; color:#964d37; border-radius:8px; font-size:12px; line-height:1.7; overflow-wrap:anywhere; }
.qbo-error p { margin-top:5px; }
.qbo-actions { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:0 24px 22px; }
.qbo-actions .button { min-height:39px; }
.qbo-actions .button:disabled { cursor:not-allowed; opacity:.55; }
.qbo-actions .qbo-disconnect { margin-left:auto; color:#825b4f; }
.qbo-privacy { display:flex; align-items:flex-start; gap:9px; padding:17px 24px; background:#f8faf4; border-top:1px solid #e1e7da; color:#67765b; font-size:11px; line-height:1.8; }
.qbo-privacy>svg { width:14px; height:14px; margin-top:3px; }
.qbo-privacy a { color:#386e4b; text-decoration:underline; text-underline-offset:3px; }
.qbo-loading { padding:28px 24px; color:#63745b; font-size:13px; }
.qbo-notice a,.qbo-guide a { color:#386e4b; text-decoration:underline; text-underline-offset:3px; }
.qbo-guide { margin:0 24px 23px; border:1px solid #dfe7d7; border-radius:9px; background:#fbfcf8; }
.qbo-guide summary { padding:15px 17px; color:#42623d; font-size:12px; font-weight:600; cursor:pointer; }
.qbo-guide summary:focus-visible { outline:2px solid #54805b; outline-offset:3px; border-radius:6px; }
.qbo-guide[open] summary { border-bottom:1px solid #e2e8dc; }
.qbo-guide-body { padding:17px; color:#61735a; font-size:12px; line-height:1.8; }
.qbo-guide ol { margin:15px 0; padding-left:22px; }
.qbo-guide li { padding-left:5px; margin:11px 0; }
.qbo-guide li::marker { color:#5b8052; font-weight:600; }
.qbo-guide li strong { color:#466740; font-weight:600; }
.qbo-guide-scope { padding-top:13px; border-top:1px solid #e2e8dc; }
.qbo-guide-help { margin-top:12px; }
.qbo-invoice-notice { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:18px; padding:17px 20px; background:#f3f8ed; border:1px solid #dce8d3; border-radius:10px; color:#3d6245; }
.qbo-invoice-notice strong { font-size:13px; }
.qbo-invoice-notice p { font-size:12px; line-height:1.7; margin-top:5px; color:#61745a; }
.qbo-invoice-actions { display:flex; align-items:center; flex-shrink:0; flex-wrap:wrap; gap:8px; }
.qbo-invoice-notice .qbo-inline-error { color:#99513e; }
.qbo-source-label { display:inline-block; vertical-align:middle; margin-left:7px; padding:2px 5px; border-radius:4px; background:#edf4e7; color:#517749; font-size:9px; font-weight:600; }
.qbo-readonly-note { padding:14px 16px; margin-bottom:18px; border:1px solid #dbe6d3; border-radius:8px; background:#f6faf1; color:#466744; font-size:12px; line-height:1.7; }
.qbo-readonly-note p { margin-top:4px; color:#65755c; }
.qbo-invoice-facts { display:grid; grid-template-columns:minmax(120px,1fr) minmax(0,2fr); gap:10px 18px; margin:20px 0; padding:16px 0; border-top:1px solid #e1e7da; border-bottom:1px solid #e1e7da; font-size:12px; line-height:1.6; }
.qbo-invoice-facts dt { color:#6b785f; }
.qbo-invoice-facts dd { margin:0; color:#344b31; overflow-wrap:anywhere; }
@media(max-width:850px){.qbo-features{grid-template-columns:1fr;gap:23px}.qbo-features article+article{padding-top:22px;border-top:1px solid #e1e7da}}
@media(max-width:600px){.qbo-heading{padding:20px;flex-wrap:wrap;gap:14px}.qbo-notice{margin:19px 20px 0}.qbo-warning{margin-bottom:20px}.qbo-company,.qbo-environment{padding-inline:20px}.qbo-features{padding:23px 20px}.qbo-actions{padding:0 20px 20px}.qbo-actions .button{flex:1 1 auto}.qbo-actions .qbo-disconnect{margin-left:0}.qbo-error,.qbo-sync-summary{margin-inline:20px}.qbo-privacy{padding:16px 20px}}
@media(max-width:760px){.qbo-invoice-notice{align-items:flex-start;flex-direction:column}.qbo-invoice-actions{width:100%}.qbo-invoice-facts{grid-template-columns:minmax(100px,1fr) minmax(0,1.5fr);gap:10px 12px}}
@media(max-width:600px){.qbo-guide{margin-inline:20px}.qbo-guide-body{padding:15px}}
