/* Borangly Phase 9 — readable typography, access controls & email settings */
:root{--b9-ink:#191919;--b9-muted:#6f706b;--b9-line:#e5e5df;--b9-soft:#f7f7f4;--b9-card:#fff;--b9-focus:#4f46e5;--b9-good:#1f7a4d;--b9-warn:#94631b;--b9-danger:#a53f3f}

/* Global readability: dashboard text should never feel miniature. */
.app-shell{font-size:15px;line-height:1.5;color:var(--b9-ink)}
.app-shell button,.app-shell input,.app-shell textarea,.app-shell select{font:inherit}
.sidebar .brand{font-size:20px}.sidebar .nav{font-size:15px;min-height:46px}.side-foot{font-size:13px}
.page-head h1,.builder-title input{font-size:clamp(26px,2.2vw,34px)}
.page-head .sub,.b8-page-intro p,.b9-page-head p{font-size:15px;line-height:1.55}
.tabs{gap:2px;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{font-size:14px;min-height:44px;white-space:nowrap;padding-inline:13px}
.metric span,.b8-kpi span,.b5-kpi span{font-size:13px}.metric strong,.b8-kpi strong,.b5-kpi strong{font-size:clamp(24px,2vw,31px)}
.data-card h2,.b8-card h3{font-size:18px}.sub,.muted,.tiny{font-size:13px!important;line-height:1.5}
.field-type,.ghost,.primary,.b7-btn,.b8-btn,.b8-manage,.b5-follow{font-size:14px!important;min-height:42px}
.canvas-title{font-size:clamp(28px,3vw,40px)}.canvas-desc{font-size:15px}.block-label,.block-placeholder,.block-options{font-size:15px!important}.req,.pub-label{font-size:15px!important}
.table-wrap table,.b5-table,.b8-lead-table{font-size:14px}.table-wrap th,.table-wrap td,.b5-table th,.b5-table td,.b8-lead-table th,.b8-lead-table td{font-size:13px!important}

/* Settings page */
.b9-settings{max-width:1120px;margin:0 auto;padding:4px 0 92px}
.b9-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:8px 2px 24px;border-bottom:1px solid var(--b9-line)}
.b9-page-head h2{font-size:clamp(28px,3vw,38px);letter-spacing:-.04em;margin:2px 0 6px}.b9-page-head p{margin:0;color:var(--b9-muted);max-width:720px}
.b9-eyebrow{display:block;font-size:12px;line-height:1.2;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#8b8c86}
.b9-save-state{font-size:13px;color:#7e7f79;white-space:nowrap}.b9-save-state.dirty{color:var(--b9-warn)}
.b9-section{margin-top:28px;border:1px solid var(--b9-line);border-radius:18px;background:var(--b9-card);overflow:hidden;box-shadow:0 1px 1px rgba(0,0,0,.025)}
.b9-section-head{padding:22px 24px;border-bottom:1px solid var(--b9-line);background:linear-gradient(180deg,#fff,#fdfdfb)}
.b9-section-head h3{font-size:20px;margin:0 0 5px;letter-spacing:-.02em}.b9-section-head p{font-size:14px;line-height:1.5;margin:0;color:var(--b9-muted)}
.b9-section-body{padding:0 24px}
.b9-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;min-height:82px;padding:18px 0;border-bottom:1px solid #ecece7}
.b9-row:last-child{border-bottom:0}.b9-row-copy{min-width:0}.b9-row-copy strong{display:block;font-size:15px;line-height:1.35}.b9-row-copy p{margin:5px 0 0;font-size:14px;line-height:1.5;color:var(--b9-muted);max-width:720px}
.b9-row-control{grid-template-columns:minmax(0,1fr) minmax(240px,360px)}.b9-row-area{align-items:start}.b9-row-area textarea{min-height:92px;resize:vertical}
.b9-control,.b9-compact input,.b9-compact textarea{width:100%;border:1px solid #d8d8d2;background:#fff;border-radius:11px;color:var(--b9-ink);font-size:15px;padding:11px 12px;outline:none;transition:border-color .15s,box-shadow .15s}
.b9-control:focus,.b9-compact input:focus,.b9-compact textarea:focus,.b9-gate input:focus{border-color:#8983ef;box-shadow:0 0 0 3px rgba(79,70,229,.10)}
select.b9-control{min-height:46px}.b9-control[type="datetime-local"],.b9-control[type="number"]{min-height:46px}
.b9-dependent{display:none;margin:0;padding:0 0 0 20px;border-left:2px solid #ecece7}.b9-dependent.show{display:block}.b9-dependent .b9-row{padding-left:2px}

/* Modern switch */
.b9-switch{position:relative;display:inline-flex;align-items:center;cursor:pointer}.b9-switch input{position:absolute;opacity:0;pointer-events:none}.b9-switch span{display:block;width:46px;height:26px;border-radius:999px;background:#b9bab5;position:relative;transition:.18s}.b9-switch span:after{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:.18s}.b9-switch input:checked+span{background:#151515}.b9-switch input:checked+span:after{transform:translateX(20px)}.b9-switch input:focus-visible+span{box-shadow:0 0 0 3px rgba(79,70,229,.18)}

/* Email engine + composer */
.b9-engine{display:flex;align-items:center;gap:14px;margin:20px 0;padding:16px;border:1px solid #dfe4df;border-radius:13px;background:#fafcfb}.b9-engine.setup{border-color:#eadfca;background:#fffaf0}.b9-engine-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#eaf6ef;color:var(--b9-good);font-weight:900;font-size:17px;flex:0 0 38px}.b9-engine.setup .b9-engine-icon{background:#fff0d6;color:var(--b9-warn)}.b9-engine .grow{flex:1;min-width:0}.b9-engine strong{font-size:15px}.b9-engine p{font-size:13px;line-height:1.45;margin:3px 0 0;color:var(--b9-muted)}.b9-engine>span{font-size:12px;font-weight:800;border-radius:999px;padding:6px 9px;background:#edf7f1;color:var(--b9-good)}.b9-engine.setup>span{background:#fff0d6;color:var(--b9-warn)}
.b9-compose{margin:16px 0 20px;border:1px solid #deded8;border-radius:14px;background:#fbfbf9;padding:18px}.b9-compose-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.b9-compact{display:block;margin-bottom:12px}.b9-compact>span{display:block;font-size:13px;font-weight:750;margin-bottom:6px;color:#55564f}.b9-compact textarea{resize:vertical;min-height:130px;line-height:1.5}.b9-compose-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:4px}.b9-check{display:inline-flex;align-items:center;gap:9px;font-size:14px;color:#50514c}.b9-check input{width:18px;height:18px}.b9-token-help{font-size:12px;color:#898a84;margin:12px 0 0}.b9-token-help code{background:#ededeb;border-radius:6px;padding:3px 6px;color:#454640}

/* Buttons & save bar */
.b9-btn{appearance:none;border:1px solid #d7d7d1;background:#fff;color:#242424;border-radius:10px;min-height:42px;padding:9px 13px;font-size:14px;font-weight:750;cursor:pointer}.b9-btn:hover{background:#f5f5f2}.b9-btn.primary{background:#171717;color:#fff;border-color:#171717}.b9-btn.primary:hover{background:#292929}.b9-btn:disabled{opacity:.55;cursor:wait}
.b9-sticky-save{position:sticky;bottom:14px;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:28px 0 0;padding:12px 14px 12px 17px;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border:1px solid #dddcd6;border-radius:14px;box-shadow:0 12px 36px rgba(0,0,0,.10)}.b9-sticky-save strong{display:block;font-size:14px}.b9-sticky-save span{display:block;font-size:12px;color:#888982;margin-top:2px}
.b9-closed-message{margin-top:4px}.b9-loading,.b9-error{padding:60px 18px;text-align:center;color:var(--b9-muted);font-size:15px}.b9-error strong{display:block;color:var(--b9-ink);font-size:18px}.b9-error p{margin-top:6px}

/* Public form: readable, mobile-friendly, no iOS input zoom. */
.public-wrap{font-size:16px}.public-form{font-size:16px}.pub-label{font-size:16px!important;line-height:1.4}.public-form input,.public-form textarea,.public-form select{font-size:16px!important;min-height:48px}.choice{font-size:15px!important;min-height:46px}.public-submit{font-size:16px!important;min-height:50px}.pub-paragraph{font-size:15px!important;line-height:1.6}.b5-autosave-notice{font-size:12px!important}.b5-autosave-state{font-size:12px!important}

/* Password / closed form gates */
.b9-gate{width:min(100%,560px);margin:8vh auto;padding:clamp(26px,5vw,48px);border:1px solid #e1e1dc;border-radius:22px;background:#fff;box-shadow:0 18px 60px rgba(0,0,0,.07);text-align:left}.b9-gate-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#f2f2ef;margin-bottom:18px;font-size:20px}.b9-gate h1{font-size:clamp(28px,5vw,40px);line-height:1.08;letter-spacing:-.045em;margin:6px 0 12px}.b9-gate>p{font-size:16px;line-height:1.6;color:#696a65;margin:0 0 22px}.b9-gate label span{display:block;font-size:14px;font-weight:800;margin-bottom:7px}.b9-gate input{width:100%;box-sizing:border-box;border:1px solid #d7d7d1;border-radius:11px;min-height:50px;padding:11px 13px;font-size:16px;outline:none}.b9-gate button{width:100%;margin-top:12px;min-height:50px;border:0;border-radius:11px;background:#171717;color:#fff;font-size:16px;font-weight:800}.b9-gate button:disabled{opacity:.55}.b9-gate small{display:block;font-size:12px;color:#92938d;margin-top:14px;line-height:1.5}.b9-gate-error{font-size:13px;color:var(--b9-danger);min-height:18px;margin-top:7px}

/* Toast */
.b9-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,14px);z-index:10000;background:#181818;color:#fff;border-radius:11px;padding:11px 15px;font-size:14px;font-weight:700;box-shadow:0 10px 34px rgba(0,0,0,.18);opacity:0;transition:.18s}.b9-toast.show{opacity:1;transform:translate(-50%,0)}.b9-toast.bad{background:#8e3434}

/* Phase 8/lead analytics readability overrides */
.b8-pill,.b8-range{font-size:14px!important;min-height:42px}.b8-answer-head strong,.b8-card-head h3,.b8-card h3{font-size:16px!important}.b8-option-label,.b8-option-count,.b8-bar-label,.b8-bar-value,.b8-legend,.b8-recent-row{font-size:13px!important}.b8-step-title b{font-size:15px!important}.b8-step-stat,.b8-step-side{font-size:12px!important}.b8-status{font-size:11px!important}.b8-lead-table td small{font-size:12px!important}

@media(max-width:900px){
  .b9-settings{padding-inline:2px}.b9-page-head{align-items:flex-start}.b9-row-control{grid-template-columns:minmax(0,1fr) minmax(210px,300px)}
  .b9-compose-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .app-shell{font-size:15px}.main{padding-left:14px!important;padding-right:14px!important}.tabs{margin-inline:-4px;padding-inline:4px}.tab{font-size:14px;padding-inline:11px}
  .b9-page-head{display:block;padding-top:4px}.b9-save-state{margin-top:10px}.b9-section{border-radius:15px;margin-top:20px}.b9-section-head{padding:18px}.b9-section-body{padding:0 18px}
  .b9-row,.b9-row-control{grid-template-columns:minmax(0,1fr) auto;gap:14px;min-height:76px;padding:16px 0}.b9-row-control{grid-template-columns:1fr;gap:11px}.b9-row-control .b9-control{width:100%;box-sizing:border-box}.b9-row-copy strong{font-size:15px}.b9-row-copy p{font-size:13px}.b9-dependent{padding-left:12px}
  .b9-compose{padding:14px;margin-inline:-2px}.b9-compose-grid{grid-template-columns:1fr}.b9-compose-foot{align-items:flex-start;flex-direction:column}.b9-compose-foot .b9-btn{width:100%}
  .b9-engine{align-items:flex-start}.b9-engine>span{display:none}.b9-sticky-save{bottom:8px}.b9-sticky-save .b9-btn{min-width:128px}
  .b9-gate{box-sizing:border-box;margin:4vh auto;padding:26px 20px;border-radius:17px}.b9-gate h1{font-size:30px}
  .b8-grid2{grid-template-columns:1fr!important}.b8-kpis,.b8-drop-summary{grid-template-columns:1fr 1fr!important}.b8-step{grid-template-columns:1fr!important}.b8-step-side,.b8-step-side.right{text-align:left!important}.b8-table-wrap{margin-inline:-8px}
}
@media(max-width:440px){
  .b8-kpis,.b8-drop-summary{grid-template-columns:1fr!important}.b9-sticky-save>div{display:none}.b9-sticky-save .b9-btn{width:100%}.b9-section-head h3{font-size:19px}.b9-page-head h2{font-size:30px}
}
@media(prefers-reduced-motion:reduce){.b9-switch span,.b9-switch span:after,.b9-toast{transition:none}}
