/* ==========================================================================
   Settings (settings.html) -- rebuilt layout.

   WEB (>=900px): two panes, like X's settings. The section list sits on the
   side and stays put; the chosen section opens in the pane next to it. The
   old single-pane "list replaces page" behaviour is gone on web.

   MOBILE (<900px): one pane at a time, plain white, no cards, no lines, no
   dividers. Rows are just icon + bold title + grey description + chevron.

   LOADING: this file is render-blocking in <head> so the final layout is
   what paints first. While the account is still resolving, html.st-booting
   hides the whole shell and shows only the branded loader (.st-boot), then
   everything is revealed in one go.
   ========================================================================== */

/* app-cards.css paints body.app-body:not(...):not(...) with the grey canvas at
   specificity (0,3,1), which used to beat the plain white rule that was here
   -- so grey showed wherever the content stopped. !important + html + a full
   viewport min-height means no grey can show anywhere on this page. */
html{background:#fff;}
html body.app-body[data-app-page="settings"],
html body[data-app-hybrid].pp-authed[data-app-page="settings"]{background:#fff !important;min-height:100vh;min-height:100dvh;}
body[data-app-page="settings"] .app-main,
body[data-app-page="settings"] .st-shell,
body[data-app-page="settings"] .st-main,
body[data-app-page="settings"] .st-side,
body[data-app-page="settings"] .st-content{background:#fff;}
body[data-app-page="settings"] .st-main{min-height:100vh;min-height:100dvh;}
body[data-app-page="settings"] .app-nav,
body[data-app-page="settings"] .app-page-head,
body[data-app-page="settings"] .app-footer{display:none !important;}
/* Bottom bar: visible on the main Settings list, hidden once a section/item is opened (phones). */
@media (max-width:899.98px){
  body[data-app-page="settings"]:has(#stShell:not([data-level="root"])) .app-bottom-nav{display:none !important;}
  body[data-app-page="settings"]:has(#stShell[data-level="root"]){padding-bottom:calc(84px + env(safe-area-inset-bottom));}
}
@media (min-width:721px){body[data-app-page="settings"] .app-bottom-nav{display:none !important;}}
body[data-app-page="settings"] .app-main{max-width:none;margin:0;padding:0;}

/* ---------- Boot / loading ---------- */
.st-boot{display:none;position:fixed;top:0;right:0;bottom:0;left:var(--app-sidebar-current,0px);z-index:900;align-items:center;justify-content:center;background:#fff;}
html.st-booting .st-boot{display:flex;}
html.st-booting .st-shell,
html.st-booting .st-mhead{visibility:hidden;}
html:not(.st-booting) .st-shell,html:not(.st-booting) .st-mhead{animation:stReveal .18s ease both;}
@keyframes stReveal{from{opacity:0}to{opacity:1}}
@media (max-width:720px){.st-boot{left:0;}}

/* ---------- Shared bits ---------- */
.st-ico{width:22px;height:22px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--navy);}
.st-ico svg{display:block;}
.st-chev{flex-shrink:0;color:var(--navy-45);display:flex;align-items:center;}
.st-row{display:flex;align-items:flex-start;gap:16px;width:100%;text-align:left;background:transparent;border:0;padding:16px 20px;cursor:pointer;font-family:inherit;color:inherit;text-decoration:none;}
.st-row .st-ico{margin-top:1px;}
.st-row-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;}
.st-row-title{font-size:14.5px;font-weight:500;color:var(--navy);line-height:1.3;}
.st-row-sub{font-size:12.5px;color:var(--navy-65);line-height:1.4;font-weight:400;}
.st-row .st-chev{align-self:center;}
.st-row-danger .st-row-title,.st-row-danger .st-ico,
.st-row-logout .st-row-title,.st-row-logout .st-ico{color:#D92D20;}
@media (hover:hover){.st-row-danger:hover,.st-row-logout:hover{background:rgba(217,45,32,.06);}}
/* Deactivate / Delete buttons inside the panel */
.st-panel #deactivateBtn,.st-panel #deleteBtn{color:#D92D20;border-color:rgba(217,45,32,.4);}
@media (hover:hover){.st-panel #deactivateBtn:hover,.st-panel #deleteBtn:hover{background:rgba(217,45,32,.08);}}
@media (hover:hover){.st-row:hover{background:rgba(27,33,45,.035);}}

.st-side-head{padding:18px 20px 6px;font-size:19px;font-weight:600;color:var(--navy);letter-spacing:-.01em;}
.st-search{position:relative;margin:8px 20px 8px;}
.st-search-ico{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--navy);opacity:.8;pointer-events:none;}
.st-search-ico svg,.st-search-ico .ppi{position:static !important;transform:none !important;margin:0 !important;display:block;}
.st-search input{width:100%;height:38px;box-sizing:border-box;border:1px solid var(--navy-10);background:#fff;border-radius:var(--r-pill);padding:0 14px 0 40px;font:inherit;font-size:13.5px;font-weight:400;line-height:38px;color:var(--navy);outline:none;-webkit-appearance:none;appearance:none;}
.st-search input::placeholder{color:var(--navy-65);opacity:1;font-weight:400;}
.st-search input::-webkit-search-cancel-button{-webkit-appearance:none;}
.st-search input:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-08);}
.st-search-empty{display:none;padding:14px 20px;color:var(--navy-65);font-size:13px;}
.st-search-empty.visible{display:block;}

.st-panel{display:none;padding:6px 20px 80px;}
.st-panel.is-active{display:block;}
.st-panel-lead{font-size:13px;color:var(--navy-65);margin:6px 0 18px;line-height:1.5;}
.st-panel .settings-item-desc{font-size:13px;color:var(--navy-65);margin:0 0 16px;line-height:1.5;}
.st-panel .settings-row-sub,.st-panel .settings-team-sub,.st-panel .settings-team-empty{color:var(--navy-65);}
.st-panel.is-loading > .st-panel-body{visibility:hidden;}
.st-panel-loader{display:none;}
.st-panel.is-loading > .st-panel-loader{display:flex;}
.st-panel-loader.app-loader{padding:40px 20px;}

.st-catview{display:none;}
.st-catview.is-active{display:block;}
.st-catlead{padding:6px 20px 10px;font-size:13px;color:var(--navy-65);line-height:1.5;}
.st-links{padding:6px 0 80px;}

/* ---------- Trust / verification ---------- */
.st-status{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--r-pill);font-size:11.5px;font-weight:500;background:var(--navy-06);color:var(--navy-65);margin-bottom:14px;}
.st-status.ok{background:var(--teal-08);color:var(--teal-dark);}
.st-status.warn{background:rgba(240,196,101,.28);color:#7A5A00;}
.st-status.bad{background:rgba(237,117,70,.14);color:var(--orange-dark);}
.st-check{display:flex;align-items:flex-start;gap:14px;padding:12px 0;}
.st-check-dot{width:22px;height:22px;border-radius:50%;flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center;background:var(--navy-06);color:var(--navy-45);}
.st-check.done .st-check-dot{background:var(--teal);color:#fff;}
.st-check-title{font-size:14px;font-weight:500;color:var(--navy);}
.st-check-sub{font-size:12.5px;color:var(--navy-65);margin-top:2px;line-height:1.4;}
.st-check a.st-check-link{color:var(--teal-dark);font-weight:500;font-size:12.5px;}
.st-progress{font-size:13px;color:var(--navy-65);margin:0 0 6px;}
.st-biz{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;}
.st-biz-name{font-size:14px;font-weight:500;color:var(--navy);}
.st-biz-sub{font-size:12px;color:var(--navy-65);margin-top:2px;}
.st-cta{margin-top:6px;}

/* ==========================================================================
   Verification tiers: overview ladder + Identity / Face / Bank pages
   One column that grows to two only where there is room (auto-fit grid), so
   the same markup works on phones and on the web two-pane layout.
   ========================================================================== */
.tv-stack{display:grid;gap:16px;max-width:760px;}
.tv-head{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:16px;background:var(--teal-08);}
.tv-head.tv-warn{background:rgba(240,196,101,.2);}
.tv-head.tv-bad{background:var(--orange-10);}
.tv-head.tv-idle{background:var(--navy-06);}
.tv-ico{width:44px;height:44px;border-radius:50%;background:#fff;color:var(--teal-dark);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.tv-head.tv-warn .tv-ico{color:#7A5A00;} .tv-head.tv-bad .tv-ico{color:var(--orange-dark);} .tv-head.tv-idle .tv-ico{color:var(--navy-65);}
.tv-head-body{min-width:0;flex:1;}
.tv-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;}
.tv-tier{font-size:12px;font-weight:500;color:var(--navy-65);}
.tv-chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--r-pill);font-size:11px;font-weight:500;background:#fff;color:var(--navy-65);white-space:nowrap;}
.tv-chip.tv-ok{background:var(--teal);color:#fff;}
.tv-chip.tv-warn{background:#F5D98B;color:#6B4E00;}
.tv-chip.tv-bad{background:var(--orange-dark);color:#fff;}
.tv-title{margin:0;font-size:17px;font-weight:600;line-height:1.25;letter-spacing:-.01em;color:var(--navy);}
.tv-lead{margin:6px 0 0;font-size:13.5px;line-height:1.5;color:var(--navy-65);}
.tv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;}
.tv-card{border:1px solid var(--navy-10);border-radius:16px;padding:18px;background:#fff;min-width:0;}
.tv-h{margin:0 0 12px;font-size:14.5px;font-weight:600;color:var(--navy);}
.tv-card b,.tv-rung-top b{display:block;font-size:13.5px;font-weight:500;color:var(--navy);line-height:1.35;}
.tv-card span:not(.tv-n):not(.tv-dot):not(.tv-tick),.tv-rung-body p{display:block;font-size:12.5px;line-height:1.45;color:var(--navy-65);margin-top:2px;}
.tv-steps,.tv-tips,.tv-time{list-style:none;margin:0;padding:0;display:grid;gap:14px;}
.tv-steps li,.tv-tips li{display:flex;gap:12px;align-items:flex-start;}
.tv-n{width:26px;height:26px;border-radius:50%;background:var(--teal-08);color:var(--teal-dark);font-weight:600;font-size:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.tv-tick{width:20px;height:20px;border-radius:50%;background:var(--teal-08);color:var(--teal-dark);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px;}
.tv-time{gap:0;}
.tv-time li{position:relative;display:flex;gap:12px;padding-bottom:18px;}
.tv-time li:last-child{padding-bottom:0;}
.tv-time li:not(:last-child)::before{content:"";position:absolute;left:12px;top:28px;bottom:2px;width:2px;background:var(--navy-10);}
.tv-time li.done:not(:last-child)::before{background:var(--teal);}
.tv-dot{width:26px;height:26px;border-radius:50%;border:2px solid var(--navy-25);background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#fff;box-sizing:border-box;}
.tv-time .done .tv-dot{background:var(--teal);border-color:var(--teal);}
.tv-time .active .tv-dot{border-color:#E0A21B;}
.tv-time .active .tv-dot::after{content:"";width:10px;height:10px;border-radius:50%;background:#E0A21B;}
.tv-time .todo b{color:var(--navy-65);}
.tv-dl{margin:0;}
.tv-dl div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid var(--navy-06);font-size:13px;}
.tv-dl div:first-child{border-top:0;padding-top:0;}
.tv-dl dt{color:var(--navy-65);flex-shrink:0;}
.tv-dl dd{margin:0;font-weight:500;color:var(--navy);text-align:right;overflow-wrap:anywhere;}
.tv-note{display:flex;gap:10px;align-items:flex-start;margin:0;padding:12px 14px;border-radius:12px;background:var(--teal-08);color:var(--teal-dark);font-size:12.5px;line-height:1.45;}
.tv-note svg{flex-shrink:0;margin-top:1px;}
.tv-callout{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:12px;font-size:13px;line-height:1.45;}
.tv-callout svg{flex-shrink:0;margin-top:1px;}
.tv-callout.tv-bad{background:var(--orange-10);color:#9A3F14;}
.tv-cta{display:flex;flex-wrap:wrap;gap:10px;}
.tv-cta .app-btn{min-height:46px;padding:12px 24px;font-size:14px;font-weight:500;}
.tv-help{margin:0;font-size:12.5px;color:var(--navy-65);}
.tv-help a{color:var(--teal-dark);font-weight:500;}
.st-panel .tv-stack .app-btn-ghost{background:none;border:0;color:var(--teal-dark);font-weight:500;}

/* overview */
.tv-level{display:grid;gap:12px;padding:18px;border-radius:16px;background:var(--teal-08);}
.tv-level-n{font-size:17px;font-weight:600;color:var(--navy);}
.tv-level p{margin:4px 0 0;font-size:13px;line-height:1.45;color:var(--navy-65);}
.tv-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;}
.tv-bar i{height:6px;border-radius:3px;background:rgba(15,118,109,.18);}
.tv-bar i.on{background:var(--teal);}
.tv-ladder{list-style:none;margin:0;padding:0;}
.tv-rung{position:relative;display:flex;gap:14px;padding-bottom:20px;}
.tv-rung:last-child{padding-bottom:0;}
.tv-rung:not(:last-child)::before{content:"";position:absolute;left:15px;top:34px;bottom:2px;width:2px;background:var(--navy-10);}
.tv-rung.done:not(:last-child)::before{background:var(--teal);}
.tv-node{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;background:#fff;border:2px solid var(--teal);color:var(--teal-dark);box-sizing:border-box;}
.tv-rung.done .tv-node{background:var(--teal);color:#fff;}
.tv-rung.locked .tv-node{border-color:var(--navy-25);color:var(--navy-45);}
.tv-rung-body{min-width:0;flex:1;}
.tv-rung-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px;}
.tv-rung-top b{display:inline-block;font-size:14.5px;}
.tv-rung-top .tv-chip{background:var(--navy-06);}
.tv-rung-top .tv-chip.tv-ok{background:var(--teal);} .tv-rung-top .tv-chip.tv-warn{background:#F5D98B;} .tv-rung-top .tv-chip.tv-bad{background:var(--orange-dark);}
.tv-rung.locked .tv-rung-top b{color:var(--navy-65);}
.tv-rung-body .tv-unlock{font-size:12px;color:var(--navy-45);}
.tv-rung-act{margin:0 0 0 auto;flex:none;}
.tv-rung-act .app-btn{min-height:34px;padding:6px 16px;font-size:12.5px;}
.tv-rung-act .app-btn-ghost{padding:6px 8px;}

/* phones: flat, borderless, full-width actions */
@media (max-width:899.98px){
  .tv-card{border:0;background:#F6F8F8;}
  .tv-head,.tv-level{padding:16px;}
  .tv-cta .app-btn{flex:1 1 100%;}
}
@media (max-width:380px){
  .tv-head{flex-direction:column;gap:10px;}
  .tv-dl div{flex-direction:column;gap:2px;}
  .tv-dl dd{text-align:left;}
}

/* ==========================================================================
   WEB: two panes
   ========================================================================== */
@media (min-width:900px){
  .st-mhead{display:none;}
  .st-shell{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);min-height:100vh;}
  .st-side{position:sticky;top:0;height:100vh;overflow-y:auto;border-right:1px solid var(--navy-06);background:#fff;padding-bottom:40px;}
  .st-side .st-row{padding:15px 20px;align-items:center;}
  .st-side .st-row .st-row-sub{display:none;}
  .st-side .st-row .st-ico{margin-top:0;}
  .st-side .st-row.is-active{background:rgba(15,118,109,.07);box-shadow:inset -3px 0 0 var(--teal);}
  .st-side .st-row.is-active .st-row-title{font-weight:600;}
  .st-side .st-row.is-active .st-ico{color:var(--teal-dark);}
  .st-main{min-width:0;}
  .st-phead{position:sticky;top:0;z-index:6;display:flex;align-items:center;gap:18px;height:58px;padding:0 20px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
  .st-phead-back{width:36px;height:36px;margin-left:-8px;border-radius:50%;border:0;background:none;color:var(--navy);display:none;align-items:center;justify-content:center;cursor:pointer;}
  .st-phead-back.is-visible{display:flex;}
  .st-phead-back:hover{background:var(--navy-06);}
  .st-phead-title{font-size:19px;font-weight:600;color:var(--navy);letter-spacing:-.01em;}
  .st-content{max-width:680px;}
  .st-row .st-chev{color:var(--navy-45);}
}

/* ==========================================================================
   MOBILE: one pane at a time. Plain white. No cards, lines or dividers.
   ========================================================================== */
@media (max-width:899.98px){
  body[data-app-page="settings"],
  body[data-app-page="settings"] .app-main{background:#fff;}
  body[data-app-page="settings"]{padding-bottom:calc(24px + env(safe-area-inset-bottom));}
  .st-phead{display:none;}
  .st-shell{display:block;}
  .st-side,.st-main{display:none;border:0;box-shadow:none;background:#fff;}
  .st-shell[data-level="root"] .st-side{display:block;}
  .st-shell[data-level="cat"] .st-main,
  .st-shell[data-level="item"] .st-main{display:block;}
  .st-side-head{display:none;}

  .st-mhead{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:calc(10px + env(safe-area-inset-top)) 12px 8px;background:#fff;}
  .st-mhead-back{width:40px;height:40px;border-radius:50%;border:0;background:none;color:var(--navy);display:flex;align-items:center;justify-content:center;cursor:pointer;}
  .st-mhead-mid{text-align:center;min-width:0;}
  .st-mhead-title{font-size:17px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .st-mhead-sub{font-size:12px;color:var(--navy-65);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

  .st-search{margin:6px 16px 12px;}
  .st-search input{border:0;background:#EEF1F3;padding:0 14px 0 40px;}
  .st-search input:focus{box-shadow:none;background:#E8ECEF;}

  .st-row{padding:15px 16px;gap:16px;border:0;}
  .st-row-title{font-size:15px;}
  .st-row-sub{font-size:13px;}
  .st-catlead{padding:4px 16px 10px;}
  .st-panel{padding:6px 16px 60px;}

  /* strip every divider / card-ish treatment from the section content */
  .st-panel hr,.st-panel .settings-divider{display:none;}
  .st-panel .settings-row,
  .st-panel .settings-team-row{border:0;padding:12px 0;}
  .st-panel .settings-2fa-panel{background:none;border:0;padding:4px 0;margin:0 0 12px;}
  .st-panel .settings-2fa-qr{background:none;}
  .st-panel .settings-field input,
  .st-panel .settings-field select{border:0;background:#EEF1F3;border-radius:12px;padding:13px 14px;}
  .st-panel .settings-field input:focus,
  .st-panel .settings-field select:focus{background:#E8ECEF;box-shadow:none;}
  .st-panel .app-btn-outline,
  .st-panel .app-btn-ghost{border:0;background:#EEF1F3;}
  .st-panel .app-btn-primary{box-shadow:none;}
  .st-check,.st-biz{border:0;}
  .st-status{margin-bottom:12px;}
}


/* ==========================================================================
   Devices and sessions: one clean row per device -- name, "This device" tag,
   last active date + time, and a clear Remove button.
   ========================================================================== */
.st-dev{display:flex;align-items:center;gap:14px;padding:14px 0;}
.st-dev + .st-dev{border-top:1px solid var(--navy-06);}
.st-dev-ico{width:40px;height:40px;border-radius:50%;background:var(--navy-06);color:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.st-dev-text{flex:1;min-width:0;}
.st-dev-name{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:14px;font-weight:500;color:var(--navy);}
.st-dev-tag{font-size:11.5px;font-weight:500;padding:3px 9px;border-radius:var(--r-pill);background:var(--teal-08);color:var(--teal-dark);}
.st-dev-when{font-size:12.5px;color:var(--navy-65);margin-top:3px;line-height:1.4;}
.st-dev-remove{flex-shrink:0;border:1px solid var(--navy-25,rgba(27,33,45,.25));background:#fff;color:var(--navy);border-radius:var(--r-pill);padding:8px 16px;font:inherit;font-size:12.5px;font-weight:500;cursor:pointer;}
@media (hover:hover){.st-dev-remove:hover{background:var(--navy-06);}}
.st-dev-remove:disabled{opacity:.5;cursor:default;}
@media (max-width:899.98px){
  .st-dev + .st-dev{border-top:0;}
  .st-panel .st-dev-remove{border:1px solid var(--navy-25,rgba(27,33,45,.25));background:#fff;}
}

/* ==========================================================================
   Verification and Trust: popup cards + live face check (verification.js)
   ========================================================================== */
body.vf-lock{overflow:hidden;}
.vf-overlay{position:fixed;inset:0;z-index:1200;background:rgba(15,23,32,.55);display:flex;align-items:center;justify-content:center;padding:20px;}
.vf-card{position:relative;background:#fff;border-radius:18px;width:100%;max-width:460px;max-height:calc(100vh - 40px);overflow-y:auto;padding:26px 24px 22px;box-shadow:0 24px 60px rgba(15,23,32,.28);}
.vf-card h3{margin:0 0 6px;font-size:19px;font-weight:600;color:var(--navy);letter-spacing:-.01em;padding-right:28px;}
.vf-lead{margin:0 0 16px;font-size:13.5px;line-height:1.5;color:var(--navy-65);}
.vf-x{position:absolute;top:12px;right:12px;width:34px;height:34px;border:0;border-radius:50%;background:var(--navy-06);color:var(--navy);font-size:21px;line-height:1;cursor:pointer;}
.vf-field{display:block;margin:0 0 14px;}
.vf-field > span{display:block;font-size:12px;font-weight:500;color:var(--navy);margin-bottom:6px;}
.vf-field em{font-style:normal;font-weight:400;color:var(--navy-65);}
.vf-field input,.vf-field select{width:100%;box-sizing:border-box;border:1px solid var(--navy-12,rgba(27,33,45,.14));border-radius:12px;padding:12px 14px;font:inherit;font-size:14px;background:#fff;color:var(--navy);}
.vf-field input:focus,.vf-field select:focus{outline:2px solid var(--teal);outline-offset:1px;}
.vf-hint{margin:-6px 0 14px;font-size:11.5px;color:var(--navy-65);}
.vf-check{display:flex;gap:10px;align-items:flex-start;margin:4px 0 14px;font-size:13px;line-height:1.4;color:var(--navy);}
.vf-check input{margin-top:3px;width:18px;height:18px;accent-color:var(--teal);}
.vf-types{display:grid;gap:8px;margin:0 0 14px;}
.vf-type{display:flex;align-items:center;gap:12px;border:1px solid var(--navy-12,rgba(27,33,45,.14));border-radius:12px;padding:11px 14px;cursor:pointer;}
.vf-type:has(input:checked){border-color:var(--teal);background:var(--teal-08);}
.vf-type input{accent-color:var(--teal);}
.vf-type b{display:block;font-size:13.5px;color:var(--navy);}
.vf-type i{display:block;font-style:normal;font-size:11.5px;color:var(--navy-65);}
.vf-drop{display:flex;align-items:center;justify-content:center;min-height:130px;border:1.5px dashed var(--navy-25,rgba(27,33,45,.25));border-radius:14px;cursor:pointer;overflow:hidden;margin-bottom:14px;text-align:center;}
.vf-drop-empty{display:flex;flex-direction:column;gap:4px;padding:16px;font-size:13px;color:var(--navy);}
.vf-drop-empty span{font-size:11.5px;color:var(--navy-65);}
.vf-drop-img{display:block;width:100%;max-height:220px;object-fit:contain;}
.vf-field .vf-drop{margin-bottom:0;min-height:96px;}
.vf-msg{min-height:18px;font-size:12.5px;margin:0 0 10px;}
.vf-msg.ok{color:var(--teal-dark);} .vf-msg.err{color:var(--orange-dark);}
.vf-bad{color:var(--orange-dark);}
.vf-actions{display:flex;gap:10px;justify-content:flex-end;}
.vf-acct{padding:10px 0 4px;}
@media (max-width:640px){
  .vf-overlay{align-items:flex-end;padding:0;}
  .vf-card{max-width:none;border-radius:20px 20px 0 0;max-height:92vh;padding-bottom:calc(20px + env(safe-area-inset-bottom));}
  .vf-actions .app-btn{flex:1;}
}

/* live face check: full-screen dark stage */
.vf-overlay.vf-full{padding:0;background:#0f1720;}
.vf-overlay.vf-full .vf-card{max-width:none;max-height:none;height:100%;border-radius:0;background:#0f1720;color:#fff;padding:0;box-shadow:none;overflow:hidden;}
.vf-face{position:relative;height:100%;display:flex;flex-direction:column;}
.vf-x-light{background:rgba(255,255,255,.16);color:#fff;z-index:5;}
.vf-intro{margin:auto;max-width:420px;padding:28px 24px;}
.vf-intro h3,.vf-intro .vf-lead{color:#fff;} .vf-intro .vf-lead{opacity:.8;}
.vf-intro .app-btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.4);}
.vf-stage{position:relative;flex:1;overflow:hidden;background:#000;}
.vf-stage[hidden]{display:none;}
.vf-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1);}
/* Desktop/laptop: a landscape webcam stretched to a full-screen stage looks hugely zoomed.
   Show the whole frame instead (black bars are fine) so the face fits inside the oval. */
@media (min-width:900px){.vf-stage video{object-fit:contain;}}
.vf-oval{position:absolute;left:50%;top:42%;width:min(88vw,460px,58vh);aspect-ratio:3/4;transform:translate(-50%,-50%);border-radius:50%;border:4px solid rgba(255,255,255,.85);box-shadow:0 0 0 100vmax rgba(15,23,32,.62);transition:border-color .2s;}
.vf-oval.good{border-color:#2fd39a;} .vf-oval.bad{border-color:#ff7a59;}
.vf-say{position:absolute;left:0;right:0;bottom:calc(76px + env(safe-area-inset-bottom));text-align:center;color:#fff;padding:0 24px;}
.vf-say-icon{font-size:33px;line-height:1;height:38px;}
.vf-say-text{font-size:18px;font-weight:500;margin-top:6px;text-shadow:0 1px 8px rgba(0,0,0,.5);}
.vf-dots{position:absolute;left:0;right:0;bottom:calc(36px + env(safe-area-inset-bottom));display:flex;gap:8px;justify-content:center;}
.vf-dots i{width:26px;height:5px;border-radius:3px;background:rgba(255,255,255,.3);}
.vf-dots i.on{background:#2fd39a;}
.vf-retry{position:absolute;left:50%;bottom:calc(90px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:6;}


/* Business verification: Verify / Try again buttons are solid green with white text */
.st-biz .app-btn.app-btn-outline{background:var(--teal);border-color:var(--teal);color:#fff;font-weight:500;}
@media (hover:hover){.st-biz .app-btn.app-btn-outline:hover{background:var(--teal-dark);border-color:var(--teal-dark);color:#fff;}}

/* Additional resources info panels */
.st-info h4{margin:22px 0 8px;font-size:14px;font-weight:600;color:var(--navy);}
.st-info h4:first-of-type{margin-top:18px;}
.st-info ul,.st-info ol{margin:0 0 6px;padding-left:20px;font-size:13.5px;line-height:1.65;color:var(--navy);}
.st-info li{margin:0 0 6px;}
.st-info a:not(.st-row):not(.app-btn){color:var(--teal);text-decoration:underline;}
.st-info .app-btn-primary{color:#fff;text-decoration:none;margin-top:6px;}
.st-info .st-help-row{margin-top:26px;border-top:1px solid var(--navy-06);padding-left:0;padding-right:0;}


/* ==========================================================================
   Offerings / Tova / Calendar and Room sections (Unified Stage 13).
   Plain sections on both web and phone; phone keeps the no-cards, no-lines look.
   ========================================================================== */
.st-panel .settings-field textarea.sa-area{width:100%;box-sizing:border-box;padding:10px 14px;border-radius:10px;border:1px solid var(--navy-10);font:inherit;font-size:13px;color:var(--navy);background:#fff;resize:vertical;line-height:1.5;}
.st-panel .settings-field textarea.sa-area:focus{outline:none;border-color:var(--teal);}
.sa-tall{min-height:260px;}
.sa-h{font-size:14px;font-weight:600;color:var(--navy);margin:28px 0 12px;}
.sa-h:first-child{margin-top:4px;}
.sa-hint{font-size:11.5px;color:var(--navy-65);line-height:1.5;margin-top:6px;}
.sa-ctx{margin-bottom:20px;}
.sa-account{display:flex;align-items:center;gap:14px;margin:0 0 14px;}
.sa-account > span,.sa-account > img{width:48px;height:48px;border-radius:50%;flex:none;background:var(--teal-08);color:var(--teal-dark);display:flex;align-items:center;justify-content:center;font-weight:600;object-fit:cover;}
.sa-account b{display:block;font-size:14px;color:var(--navy);}
.sa-account small{display:block;font-size:12px;color:var(--navy-65);line-height:1.4;}
.sa-account .sa-link{margin-left:auto;}
.sa-link{color:var(--teal-dark);font-weight:500;font-size:13px;text-decoration:none;}
.sa-linkrow{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:6px 0 18px;}
.sa-btnlink{display:inline-flex;align-items:center;text-decoration:none;}
.sa-textbtn{background:none;border:0;padding:0;font:inherit;font-weight:500;color:var(--teal-dark);cursor:pointer;}
.sa-inl{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--navy);}
.sa-pill{display:inline-block;font-size:11px;font-weight:500;padding:4px 10px;border-radius:999px;background:var(--navy-06);color:var(--navy-65);white-space:nowrap;}

.sa-chips{display:flex;flex-wrap:wrap;gap:8px;}
.sa-chip{position:relative;}
.sa-chip input{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px;}
.sa-chip span{display:inline-block;padding:7px 14px;border-radius:999px;background:var(--navy-06);color:var(--navy);font-size:12.5px;font-weight:400;cursor:pointer;}
.sa-chip input:checked + span{background:var(--teal);color:#fff;}
.sa-chip input:focus-visible + span{outline:2px solid var(--teal);outline-offset:2px;}

.sa-slug{display:flex;align-items:center;border:1px solid var(--navy-10);border-radius:10px;overflow:hidden;background:#fff;}
.sa-slug span{padding:0 0 0 14px;color:var(--navy-65);font-size:13px;white-space:nowrap;}
.st-panel .settings-field .sa-slug input{border:0;border-radius:0;min-width:0;flex:1;padding-left:2px;background:transparent;}

.sa-logorow{display:flex;gap:14px;align-items:center;}
.sa-logothumb{width:76px;height:76px;border-radius:12px;background:var(--navy-06);display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--navy-65);overflow:hidden;flex:none;}
.sa-logothumb img{max-width:100%;max-height:100%;display:block;}
.sa-swatches{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.sa-swatch{width:30px;height:30px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--navy-10);cursor:pointer;padding:0;}
.st-panel .settings-field .sa-swatches input[type=color]{width:44px;height:34px;padding:2px;border-radius:8px;}

.sa-pv{background:#fff;border:1px solid var(--navy-10);border-radius:12px;padding:16px;max-width:380px;font-size:12px;color:var(--navy);}
.sa-pv-logo{max-height:44px;max-width:150px;display:block;margin-bottom:10px;}
.sa-pv-kind{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;}
.sa-pv-no{font-size:17px;font-weight:500;margin:2px 0 12px;}
.sa-pv-parties{display:flex;justify-content:space-between;gap:10px;font-size:11px;margin-bottom:12px;}
.sa-pv-parties small{color:var(--navy-65);}
.sa-pv-line{display:flex;justify-content:space-between;gap:10px;padding:4px 0;}
.sa-pv-foot{margin-top:14px;font-size:11px;color:var(--navy-65);}

.sa-taxrow{display:flex;align-items:center;gap:12px;padding:10px 0;}
.sa-taxrow > div{flex:1;min-width:0;}
.sa-taxrow small{display:block;color:var(--navy-65);font-size:11.5px;}
.sa-integ{padding:14px 0;}
.sa-integ-head{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.sa-integ p{font-size:12.5px;color:var(--navy-65);line-height:1.5;margin:6px 0 10px;}
@media (min-width:900px){
  .sa-taxrow,.sa-integ{border-bottom:1px solid var(--navy-06);}
  .sa-taxrow:last-child,.sa-integ:last-of-type{border-bottom:0;}
}
@media (max-width:899px){
  .st-panel .settings-field textarea.sa-area{border:0;background:#EEF1F3;border-radius:12px;padding:13px 14px;}
  .st-panel .settings-field textarea.sa-area:focus{background:#E8ECEF;}
  .sa-slug{border:0;background:#EEF1F3;border-radius:12px;}
  .sa-slug span{padding-left:14px;}
  .sa-pv{border:0;background:#F6F7F8;}
  .st-panel .sa-btnlink{border:0;background:#EEF1F3;}
  .sa-account .sa-link{margin-left:0;}
  .sa-account{flex-wrap:wrap;}
}

/* Room settings (camera and microphone toggles, guest access): same layout on phones and web */
.st-panel .settings-field select{width:100%;max-width:520px;box-sizing:border-box;}
.st-panel .settings-row > div:first-child{min-width:0;}
@media (max-width:560px){
  .st-panel .settings-field select{max-width:none;font-size:15px;}
  .st-panel .settings-row{gap:14px;}
}

/* Account information: Tova branding, tax rates and defaults sit below the name and email form */
.st-acct-sub{margin-top:28px;padding-top:6px;border-top:1px solid var(--navy-06,#eceef0);}
.st-acct-sub .st-acct-h{margin:18px 0 6px;}
.st-acct-sub .settings-item-desc{margin-bottom:12px;}

/* Billing and usage: storage meter, add storage, payments */
.st-us-h{display:flex;align-items:center;gap:6px;margin:26px 0 10px;}
.st-us-h:first-child{margin-top:4px;}
.st-us-row{display:flex;align-items:baseline;gap:8px;font-size:14px;color:var(--navy-65);}
.st-us-row b{font-size:25px;font-weight:600;color:var(--navy);letter-spacing:-.01em;}
.st-us-bar{height:12px;border-radius:999px;background:var(--navy-06,#eceef0);overflow:hidden;margin:10px 0 8px;}
.st-us-bar i{display:block;height:100%;border-radius:999px;background:var(--teal,#0F766D);transition:width .5s var(--ease,ease);}
.st-us-bar.warn i{background:#D98E04;}
.st-us-bar.full i{background:var(--pp-red,#C0473B);}
.st-us-plan{margin:0 0 6px;}
.st-us-alert{margin:12px 0 0;padding:12px 14px;border-radius:10px;background:#FDF1EF;color:#9C2F23;font-size:13px;font-weight:400;}
.st-us-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px solid var(--navy-10,#dfe3e6);border-radius:12px;background:#fff;}
.st-us-card .settings-item-desc{margin:2px 0 0;}
.st-us-pack{font-size:19px;font-weight:600;color:var(--navy);}
.st-us-card .app-btn{flex-shrink:0;}
.st-us-card [hidden]{display:none!important;}
.st-us-credits{margin:10px 0 0;}
.st-us-link{margin-top:14px;padding:0;background:none;border:none;color:var(--pp-green,#0F766D);font-size:13px;font-weight:400;cursor:pointer;text-decoration:underline;}
.st-info-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;margin-left:2px;border:none;background:none;color:var(--navy-65);cursor:pointer;border-radius:50%;flex-shrink:0;}
.st-info-btn:hover,.st-info-btn[aria-expanded="true"]{color:var(--navy);background:var(--navy-06,#eceef0);}
.st-info-note{margin:2px 0 10px;padding:10px 12px;border-radius:10px;background:var(--navy-06,#f1f3f4);color:var(--navy-80,#333);font-size:12.5px;line-height:1.45;}
.st-info-note[hidden]{display:none;}
.st-radios{display:flex;flex-direction:column;gap:6px;}
.st-radio{display:flex;align-items:center;gap:14px;padding:10px 2px;cursor:pointer;font-size:15px;color:var(--navy);}
.st-radio input{position:absolute;opacity:0;pointer-events:none;}
.st-radio-dot{width:26px;height:26px;border-radius:50%;border:2px solid var(--navy-10,#d5dade);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color .15s,background .15s;}
.st-radio input:checked + .st-radio-dot{border-color:var(--pp-green,#0F766D);background:var(--pp-green,#0F766D);box-shadow:inset 0 0 0 6px #fff;}
.st-radio input:focus-visible + .st-radio-dot{outline:2px solid var(--pp-green,#0F766D);outline-offset:2px;}
.st-pref{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 0;}
.st-checkbox{display:flex;align-items:center;gap:14px;cursor:pointer;font-size:15px;color:var(--navy);flex:1;min-width:0;}
.st-checkbox input{position:absolute;opacity:0;pointer-events:none;}
.st-checkbox-box{width:26px;height:26px;border-radius:6px;border:2px solid var(--navy-10,#d5dade);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:transparent;transition:background .15s,border-color .15s,color .15s;}
.st-checkbox input:checked + .st-checkbox-box{background:var(--pp-green,#0F766D);border-color:var(--pp-green,#0F766D);color:#fff;}
.st-checkbox input:focus-visible + .st-checkbox-box{outline:2px solid var(--pp-green,#0F766D);outline-offset:2px;}
.st-payout{display:flex;align-items:center;gap:12px;}
.st-payout-card{flex:1;min-width:0;display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:12px;background:var(--navy-06,#f1f3f4);}
.st-payout-ico{color:var(--navy);flex-shrink:0;display:flex;}
.st-payout-text{min-width:0;}
.st-payout-name{font-size:15px;font-weight:500;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.st-payout-sub{font-size:13px;color:var(--navy-65);margin-top:2px;}
.st-edit{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--pp-green,#0F766D);flex-shrink:0;}
.st-edit:hover{background:var(--navy-06,#f1f3f4);}
@media (max-width:520px){.st-us-card{flex-direction:column;align-items:stretch;}.st-us-card .app-btn{width:100%;justify-content:center;}}

/* Billing and usage + Payments: one compact text scale on web AND phones (this was web-only, so phones kept the big sizes) */
.st-us-row{font-size:13px;}
.st-us-row b{font-size:19px;}
.st-us-bar{height:10px;}
.st-us-alert{font-size:12.5px;}
.st-us-card{padding:14px;}
.st-us-pack{font-size:15px;}
.st-us-link{font-size:12.5px;}
.st-payout-card{padding:12px 14px;}
.st-payout-name{font-size:13.5px;}
.st-payout-sub{font-size:12px;}
.st-radio,.st-checkbox{font-size:13.5px;gap:12px;}
.st-radio-dot,.st-checkbox-box{width:22px;height:22px;}
.st-radio input:checked + .st-radio-dot{box-shadow:inset 0 0 0 5px #fff;}
.st-radio{padding:8px 2px;}
.st-pref{padding:6px 0;}
.st-info-note{font-size:12px;}
.st-edit{width:36px;height:36px;}

/* ---- Account sections: same type sizes as the rest of Settings ---- */
.st-panel .sa-h{font-size:13px;margin:22px 0 10px;}
.st-panel .sa-h:first-child{margin-top:2px;}
.st-choice{display:flex;flex-direction:column;gap:2px;margin:4px 0 12px;}
.st-choice-row{display:flex;gap:12px;align-items:flex-start;padding:12px 0;cursor:pointer;}
.st-choice-row input{margin-top:3px;accent-color:var(--teal);flex:none;}
.st-choice-row b{display:block;font-size:13.5px;font-weight:500;color:var(--navy);}
.st-choice-row small{display:block;font-size:12px;color:var(--navy-65);line-height:1.45;margin-top:2px;}
#securityForm input.is-invalid{border-color:#c0392b;box-shadow:0 0 0 3px rgba(192,57,43,.1);}
#securityMsg.err,.settings-save-msg.err{color:#c0392b;}

/* Settings headers: solid, never see-through (matches app-shell.css) */
.st-phead,.st-mhead{background:#fff;backdrop-filter:none;-webkit-backdrop-filter:none;}

/* Storage on this device (Your account > Storage) */
.st-dev-lead{margin:4px 0 0;font-size:14px;}
.st-dev-lead b{color:var(--navy);font-weight:600;}
.st-dev-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;background:var(--navy-06,#eceef0);margin:6px 0 10px;}
.st-dev-bar i{display:block;height:100%;min-width:3px;}
.st-dev-top{margin:0;}
.st-dev-top b{color:var(--navy);font-weight:600;}
.st-dev-list{display:flex;flex-direction:column;}
.st-dev-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--navy-06,#eceef0);}
.st-dev-row:last-child{border-bottom:0;}
.st-dev-dot{width:12px;height:12px;border-radius:50%;flex:none;}
.st-dev-name{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;}
.st-dev-name b{font-size:14.5px;font-weight:500;color:var(--navy);}
.st-dev-name small{font-size:12px;color:var(--navy-65);line-height:1.4;}
.st-dev-size{flex:none;font-size:14px;color:var(--navy-65);text-align:right;}
.st-dev-size em{font-style:normal;}
.st-dev-note{margin:6px 0 0;}
.st-dev-clear{display:block;width:100%;margin:22px 0 8px;padding:13px;border:0;background:none;font:inherit;font-size:15px;font-weight:700;color:#E0245E;text-align:center;cursor:pointer;}
.st-dev-clear:disabled{opacity:.5;}
.st-dev-clear-note{margin:0;text-align:left;}

/* Page settings (acting as a Page) */
.st-page-mode .st-row-logout{display:none;}
.st-pg-check{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:14px;color:var(--navy);cursor:pointer;}
.st-pg-check input{width:18px;height:18px;margin:0;accent-color:#111;flex-shrink:0;}
.st-pg-danger{color:#D92D20;border-color:#D92D20;}
.settings-save-msg.is-ok{color:#1A7F4B;}
.settings-save-msg.is-error{color:#D92D20;}
.st-role-pending{visibility:hidden;}
.st-pg-bal{display:flex;gap:12px;margin:0 0 18px;}
.st-pg-bal>div{flex:1;background:#EEF1F3;border-radius:12px;padding:12px 14px;display:flex;flex-direction:column;gap:2px;}
.st-pg-bal span{font-size:12px;color:var(--navy-60,#5b6770);}
.st-pg-bal b{font-size:18px;color:var(--navy);}
.st-pg-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0;}
.st-pg-person{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--navy-06,#eef0f1);}
.st-pg-person[hidden]{display:none;}
.st-pg-av{width:40px;height:40px;border-radius:50%;background:#E4E8EB;color:#37424a;font-size:14px;font-weight:600;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;}
.st-pg-av img{width:100%;height:100%;object-fit:cover;}
.st-pg-pname{flex:1;min-width:0;display:flex;flex-direction:column;}
.st-pg-pname b{font-size:14px;color:var(--navy);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.st-pg-pname small{font-size:12px;color:#5b6770;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.st-pg-role{border:0;background:#EEF1F3;border-radius:10px;padding:8px 10px;font:inherit;font-size:13px;max-width:140px;}
.st-pg-rolehelp{font-size:12px;color:#5b6770;line-height:1.5;margin:6px 0 12px;}
.st-pg-results{margin-bottom:6px;}
@media(max-width:520px){.st-pg-person{flex-wrap:wrap}.st-pg-pname{flex-basis:calc(100% - 52px)}.st-pg-person .st-pg-role,.st-pg-person .app-btn{margin-left:52px}}
.sa-swatch.is-on{box-shadow:0 0 0 2px var(--navy-10),0 0 0 4px #0f766d;}
