/* Hamyara 0.15.5 — pre-v1 stabilization overrides */
:root{--v155-rail:76px;--v155-sidebar:264px;--v155-control:52px}

/* ---------- Sidebar: one geometry for hamburger, brand, store and nav icons ---------- */
@media(min-width:901px){
  .sidebar{padding-top:6px!important;padding-bottom:10px!important;overflow-y:auto!important;overflow-x:hidden!important}
  .brand-v154{min-height:121px!important;padding:4px 8px 5px!important;gap:4px!important}
  .sidebar-control-row-v154{height:54px!important;justify-content:flex-start!important;padding:0 2px!important}
  .brand-v154 .sidebar-collapse{width:54px!important;height:54px!important;min-width:54px!important;border-radius:13px!important;display:grid!important;place-items:center!important}
  .brand-v154 .brand-link{min-height:54px!important;grid-template-columns:54px minmax(0,1fr)!important;gap:9px!important;padding:0 2px!important}
  .brand-v154 .brand-mark,.business-switcher-v151 .business-avatar{width:54px!important;height:54px!important;min-width:54px!important;border-radius:15px!important}
  .brand-v154 .brand-title-row strong{font-size:21px!important}
  .brand-v154 .brand-copy>small{font-size:10px!important;line-height:1.55!important;white-space:nowrap!important}
  .business-switcher-v151{grid-template-columns:42px minmax(0,1fr) 42px!important;gap:6px!important;padding:4px 6px 7px!important;min-height:62px!important}
  .business-switcher-v151 .store-cycle-arrow{width:42px!important;height:54px!important;min-height:54px!important;border-radius:13px!important;font-size:21px!important}
  .business-card-link-v150{height:54px!important;min-height:54px!important;grid-template-columns:54px minmax(0,1fr)!important;gap:8px!important;padding:0 6px!important;border-radius:14px!important;overflow:hidden!important}
  .business-card-link-v150>div:nth-child(2){min-width:0!important;overflow:hidden!important;display:flex!important;align-items:center!important}
  .business-card-link-v150 strong{display:block!important;max-width:100%!important;font-size:14.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;line-height:1.4!important}
  .business-hover-card-v150{display:none!important}
  .nav-list-v17{margin-top:2px!important}
  .nav-list .nav-caption{margin-top:10px!important}

  .app-shell.sidebar-collapsed-v17{grid-template-columns:minmax(0,1fr) var(--v155-rail)!important}
  .app-shell.sidebar-collapsed-v17 .sidebar{width:var(--v155-rail)!important;padding:5px 10px 10px!important;overflow-x:hidden!important}
  .app-shell.sidebar-collapsed-v17 .main-area,body.transaction-page .app-shell.sidebar-collapsed-v17 .main-area{margin-right:var(--v155-rail)!important;width:calc(100% - var(--v155-rail))!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .brand-v154{min-height:121px!important;padding:4px 0!important;display:grid!important;grid-template-rows:54px 54px!important;gap:4px!important;align-content:start!important;justify-items:center!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .sidebar-control-row-v154{height:54px!important;width:54px!important;justify-content:center!important;padding:0!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .brand-v154 .sidebar-collapse{width:54px!important;height:54px!important;margin:0!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .brand-v154 .brand-link{width:54px!important;height:54px!important;min-height:54px!important;display:grid!important;grid-template-columns:54px!important;place-items:center!important;padding:0!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .brand-v154 .brand-mark{width:54px!important;height:54px!important;min-width:54px!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .business-switcher-v151{height:62px!important;min-height:62px!important;padding:4px 0!important;display:flex!important;justify-content:center!important;align-items:center!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .business-switcher-v151 .store-cycle-arrow{display:none!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .business-card-link-v150{width:54px!important;height:54px!important;min-height:54px!important;padding:0!important;display:grid!important;grid-template-columns:54px!important;place-items:center!important;border-radius:15px!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .business-avatar{width:54px!important;height:54px!important;min-width:54px!important;margin:0!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .nav-item,.app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .logout-btn{width:54px!important;height:52px!important;min-height:52px!important;margin:3px auto!important;padding:0!important;display:grid!important;place-items:center!important;border-radius:14px!important}
  .app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .nav-item .nav-svg,.app-shell.sidebar-collapsed-v17:not(.sidebar-hover-expanded-v153) .logout-btn .nav-svg{width:24px!important;height:24px!important;margin:0!important}

  /* Temporary hover expansion must keep distinct vertical slots and never overlap brand copy. */
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .sidebar{width:var(--v155-sidebar)!important;padding:6px 10px 12px!important;overflow-x:hidden!important}
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .brand-v154{min-height:121px!important;padding:4px 8px 5px!important;display:flex!important;flex-direction:column!important;gap:4px!important;align-items:stretch!important}
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .sidebar-control-row-v154{height:54px!important;width:100%!important;justify-content:flex-start!important}
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .brand-link{height:54px!important;min-height:54px!important;width:100%!important;display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;gap:9px!important;padding:0 2px!important}
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .business-switcher-v151{margin-top:0!important;display:grid!important;grid-template-columns:42px minmax(0,1fr) 42px!important;height:62px!important;min-height:62px!important;padding:4px 6px!important}
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .business-card-link-v150{height:54px!important;min-height:54px!important;width:100%!important;display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;padding:0 6px!important}
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .business-switcher-v151 .store-cycle-arrow{display:grid!important;height:54px!important}
}

/* ---------- Staged hierarchical picker: floating, predictable, never changes page layout ---------- */
.step-picker-host-v153{position:relative!important;min-width:0!important;width:100%!important}
.step-panel-v153{position:fixed!important;z-index:12000!important;width:min(560px,calc(100vw - 24px))!important;max-width:none!important;max-height:min(570px,calc(100vh - 24px))!important;border-radius:16px!important;overflow:hidden!important}
.step-control-v153{height:var(--v155-control)!important;min-height:var(--v155-control)!important}
.step-list-v153{overscroll-behavior:contain!important}
.step-option-main-v153{min-height:54px!important}
.step-option-copy-v153 b{font-size:12.5px!important}
.step-option-copy-v153 small{font-size:10.5px!important}
@media(max-width:680px){.step-panel-v153{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important}}

/* ---------- Transaction rows ---------- */
body.transaction-page .transaction-workbench .retail-item-main{display:grid!important;grid-template-columns:72px minmax(300px,2.2fr) 132px 150px 140px 152px 42px!important;gap:10px!important;align-items:start!important}
body.transaction-page .transaction-workbench .retail-item-main>.row-action{grid-column:7!important;grid-row:1!important;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;margin:32px auto 0!important;align-self:start!important;justify-self:center!important;border-radius:10px!important;position:static!important;transform:none!important;z-index:1!important}
body.transaction-page .number-field button{height:52px!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0 0 2px!important;line-height:1!important;font-family:Arial,sans-serif!important;font-size:20px!important;overflow:visible!important}
body.transaction-page .number-field input{height:52px!important;line-height:52px!important;text-align:center!important}
body.transaction-page .retail-payment{display:grid!important;grid-template-columns:minmax(300px,1.65fr) minmax(160px,.8fr) minmax(170px,.8fr) 42px!important;gap:10px!important;align-items:start!important}
body.transaction-page .retail-payment>.mini-field{min-width:0!important;min-height:104px!important;grid-template-rows:24px 52px 28px!important}
body.transaction-page .retail-payment .step-picker-host-v153,body.transaction-page .retail-payment .money-input-wrap,body.transaction-page .retail-payment .select{width:100%!important;height:52px!important;min-height:52px!important}
body.transaction-page .retail-payment>.row-action{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;margin:32px auto 0!important;position:static!important;align-self:start!important;justify-self:center!important}
body.transaction-page .retail-payment-footer{align-items:center!important;gap:12px!important;flex-wrap:wrap!important}
@media(max-width:1240px){
 body.transaction-page .transaction-workbench .retail-item-main{grid-template-columns:70px minmax(0,1fr) 42px!important;grid-template-areas:'image product remove' 'qty qty qty' 'price discount total'!important}
 body.transaction-page .transaction-workbench .retail-item-main>.item-image-v13{grid-area:image!important}.transaction-workbench .retail-item-main>.product-field{grid-area:product!important}.transaction-workbench .retail-item-main>.quantity-field{grid-area:qty!important}.transaction-workbench .retail-item-main>.price-field{grid-area:price!important}.transaction-workbench .retail-item-main>.discount-field{grid-area:discount!important}.transaction-workbench .retail-item-main>.retail-line-total{grid-area:total!important}.transaction-workbench .retail-item-main>.row-action{grid-area:remove!important;grid-column:auto!important;grid-row:auto!important;margin:32px auto 0!important}
 body.transaction-page .retail-payment{grid-template-columns:minmax(0,1fr) minmax(170px,.7fr) 42px!important;grid-template-areas:'account amount remove' 'method method method'!important}
 body.transaction-page .retail-payment>.payment-account{grid-area:account!important}.transaction-workbench .retail-payment>.payment-amount{grid-area:amount!important}.transaction-workbench .retail-payment>.payment-method{grid-area:method!important}.transaction-workbench .retail-payment>.row-action{grid-area:remove!important;margin:32px auto 0!important}
}
@media(max-width:900px){
 body.transaction-page .transaction-workbench .retail-item-main,body.transaction-page .retail-payment{display:flex!important;flex-direction:column!important;gap:10px!important}
 body.transaction-page .transaction-workbench .retail-item-main>* ,body.transaction-page .retail-payment>*{width:100%!important}
 body.transaction-page .transaction-workbench .retail-item-main>.row-action,body.transaction-page .retail-payment>.row-action{width:38px!important;min-width:38px!important;align-self:flex-end!important;margin:0!important}
}

/* ---------- Party-group management ---------- */
.party-groups-page-v155{display:grid;grid-template-columns:minmax(360px,.9fr) minmax(520px,1.45fr);gap:18px;align-items:start}
.party-group-create-v155,.party-group-tree-card-v155{min-width:0;overflow:visible!important}
.party-group-form-v155{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:18px}
.party-group-form-v155 .full{grid-column:1/-1}
.party-group-tree-v155{padding:8px 16px 18px;display:grid;gap:7px}
.party-group-node-v155{margin-inline-start:calc((var(--level) - 1) * 18px);min-width:0}
.party-group-node-main-v155{display:grid;grid-template-columns:12px minmax(0,1fr) auto auto;gap:10px;align-items:center;min-height:64px;border:1px solid #e0e8ef;border-radius:12px;background:#fff;padding:8px 10px;position:relative}
.party-group-node-copy-v155{display:grid;gap:2px;min-width:0}.party-group-node-copy-v155 strong{font-size:13px}.party-group-node-copy-v155 small{font-size:10.5px;color:#7d8da0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.party-group-edit-v155{position:relative}.party-group-edit-v155>summary{list-style:none;cursor:pointer}.party-group-edit-v155>summary::-webkit-details-marker{display:none}
.party-group-edit-form-v155{position:absolute;z-index:5000;inset-inline-end:0;top:calc(100% + 8px);width:min(520px,calc(100vw - 32px));background:#fff;border:1px solid #d8e3ec;border-radius:14px;box-shadow:0 18px 42px rgba(14,40,64,.18);padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}
.party-group-edit-form-v155 .step-picker-host-v153{min-width:0}
@media(max-width:1000px){.party-groups-page-v155{grid-template-columns:1fr}.party-group-create-v155{order:1}.party-group-tree-card-v155{order:2}}
@media(max-width:680px){.party-group-form-v155{grid-template-columns:1fr}.party-group-form-v155 .full{grid-column:auto}.party-group-node-main-v155{grid-template-columns:10px minmax(0,1fr) auto}.party-group-node-main-v155>.tag{display:none}.party-group-edit-form-v155{position:fixed;inset:12px;width:auto;top:12px;height:max-content;max-height:calc(100dvh - 24px);overflow:auto;grid-template-columns:1fr}}

/* ---------- Dashboard ---------- */
.business-bar{width:36px!important;min-width:36px!important;border-radius:8px 8px 2px 2px!important}

/* ---------- AI evaluation settings ---------- */
.ai-eval-grid-v155{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.ai-eval-provider-v155{border:1px solid #dbe6ef;border-radius:14px;padding:14px;background:#fbfdff;display:grid;gap:10px}
.ai-eval-provider-v155 header{display:flex;align-items:center;justify-content:space-between;gap:10px}.ai-eval-provider-v155 header b{font-size:14px}.ai-eval-provider-v155 header span{font-size:10px;color:#708399}
.ai-key-row-v155{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.ai-key-row-v155 input{direction:ltr;text-align:left}
.ai-provider-actions-v155{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.ai-provider-actions-v155 .simple-check{margin-inline-start:auto}
.ai-local-warning-v155{padding:10px 12px;border-radius:11px;background:#fff8e8;border:1px solid #f0dfae;font-size:10.5px;line-height:1.9;color:#715b25}
@media(max-width:820px){.ai-eval-grid-v155{grid-template-columns:1fr}}

/* ---------- 0.15.5 QA pass: resolve legacy responsive rules deterministically ---------- */
@media(min-width:901px){
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .brand-v154 .sidebar-collapse{width:54px!important;height:54px!important;min-width:54px!important;flex:0 0 48px!important}
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .brand-v154 .brand-mark,
  .app-shell.sidebar-collapsed-v17.sidebar-hover-expanded-v153 .business-switcher-v151 .business-avatar{width:54px!important;height:54px!important;min-width:54px!important}
}

/* Large desktop: always one coherent row; legacy grid-template-areas must not leak in. */
@media(min-width:1181px){
  body.transaction-page .transaction-workbench .retail-item-main{
    grid-template-columns:70px minmax(230px,1fr) 120px 125px 115px 120px 36px!important;
    grid-template-areas:'image product qty price discount total remove'!important;
    gap:10px!important;
  }
  body.transaction-page .transaction-workbench .retail-item-main>.item-image-v13{grid-area:image!important}
  body.transaction-page .transaction-workbench .retail-item-main>.product-field{grid-area:product!important}
  body.transaction-page .transaction-workbench .retail-item-main>.quantity-field{grid-area:qty!important}
  body.transaction-page .transaction-workbench .retail-item-main>.price-field{grid-area:price!important}
  body.transaction-page .transaction-workbench .retail-item-main>.discount-field{grid-area:discount!important}
  body.transaction-page .transaction-workbench .retail-item-main>.retail-line-total{grid-area:total!important;min-width:0!important}
  body.transaction-page .transaction-workbench .retail-item-main>.row-action{grid-area:remove!important;grid-column:auto!important;grid-row:auto!important}
  body.transaction-page .retail-payment{
    grid-template-columns:minmax(280px,1.65fr) minmax(150px,.8fr) minmax(160px,.8fr) 42px!important;
    grid-template-areas:'account amount method remove'!important;
  }
  body.transaction-page .retail-payment>.payment-account{grid-area:account!important}
  body.transaction-page .retail-payment>.payment-amount{grid-area:amount!important}
  body.transaction-page .retail-payment>.payment-method{grid-area:method!important}
  body.transaction-page .retail-payment>.row-action{grid-area:remove!important}
}

/* Compact desktop/tablet: preserve alignment without forcing controls outside the content column. */
@media(max-width:1180px) and (min-width:901px){
  body.transaction-page .transaction-workbench .retail-item-main{
    grid-template-columns:70px minmax(0,1fr) 130px 130px 42px!important;
    grid-template-areas:'image product qty total remove' '. price discount total .'!important;
    gap:10px!important;
  }
  body.transaction-page .transaction-workbench .retail-item-main>.item-image-v13{grid-area:image!important}
  body.transaction-page .transaction-workbench .retail-item-main>.product-field{grid-area:product!important}
  body.transaction-page .transaction-workbench .retail-item-main>.quantity-field{grid-area:qty!important}
  body.transaction-page .transaction-workbench .retail-item-main>.price-field{grid-area:price!important}
  body.transaction-page .transaction-workbench .retail-item-main>.discount-field{grid-area:discount!important}
  body.transaction-page .transaction-workbench .retail-item-main>.retail-line-total{grid-area:total!important;min-width:0!important}
  body.transaction-page .transaction-workbench .retail-item-main>.row-action{grid-area:remove!important;grid-column:auto!important;grid-row:auto!important;margin:32px auto 0!important}
  body.transaction-page .retail-payment{
    grid-template-columns:minmax(0,1fr) minmax(150px,.55fr) 42px!important;
    grid-template-areas:'account account remove' 'amount method remove'!important;
  }
  body.transaction-page .retail-payment>.payment-account{grid-area:account!important}
  body.transaction-page .retail-payment>.payment-amount{grid-area:amount!important}
  body.transaction-page .retail-payment>.payment-method{grid-area:method!important}
  body.transaction-page .retail-payment>.row-action{grid-area:remove!important}
}

/* Party-group management must respond to usable content width, not only a narrow viewport. */
@media(max-width:1320px){
  .party-groups-page-v155{grid-template-columns:1fr!important}
  .party-group-create-v155{order:1}.party-group-tree-card-v155{order:2}
}
/* Hierarchy list must own the scrolling region; otherwise deep branches can fall outside the viewport. */
.step-browse-v153{min-height:0!important;overflow:hidden!important}
.step-list-v153{flex:1 1 auto!important;min-height:0!important;overflow:auto!important;scrollbar-gutter:stable}

/* 0.15.5 final responsive guardrails discovered during full Chromium audit. */
html,body{max-width:100%;overflow-x:hidden}
@media(max-width:850px){
  .login-shell{min-width:0!important;width:100%!important}
  .login-panel{min-width:0!important;width:100%!important;padding:20px!important}
  .login-card{width:min(430px,100%)!important;max-width:100%!important;min-width:0!important}
}
/* Keep inline Settings editors inside the scrollable table instead of allowing
   their controls to paint outside the viewport at tablet widths. */
@media(max-width:1100px){
  .settings-section-v17 .table-wrap .inline-edit-v17[open]{min-width:520px!important}
  .settings-section-v17 .table-wrap .inline-edit-v17 form{min-width:500px!important;flex-wrap:nowrap!important}
}
@media(max-width:620px){
  .bar-groups-v17{gap:5px!important;inset-inline:4px!important}
  .bar-pair-v17{gap:4px!important;padding-inline:1px!important}
  .business-bar{width:20px!important;min-width:20px!important}
  .bar-label-v17 b{font-size:10px!important}
  .bar-label-v17 small{font-size:8px!important}
}
/* Licensed font availability is an implementation detail; fall back to Vazirmatn silently
   so a missing optional font never covers financial controls or dashboard content. */
.font-load-alert{display:none!important}

/* AI preview for a user who has not connected a provider yet. */
.ai-demo-v155{margin-top:14px;border:1px dashed #b8cad9;border-radius:14px;background:#f8fbfd;overflow:hidden}
.ai-demo-v155>summary{cursor:pointer;padding:12px 14px;font-weight:800;color:#173d5d;list-style:none;display:flex;justify-content:space-between;align-items:center}
.ai-demo-v155>summary::-webkit-details-marker{display:none}.ai-demo-v155>summary:after{content:"⌄";font-size:18px;color:#5e7e98}
.ai-demo-body-v155{padding:0 14px 14px;display:grid;gap:10px}.ai-demo-body-v155>p{font-size:11px;color:#6d8296;margin:0}
.ai-demo-cards-v155{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.ai-demo-cards-v155 article{border:1px solid #e0e8ef;background:#fff;border-radius:12px;padding:11px;display:grid;gap:6px}.ai-demo-cards-v155 b{font-size:12px}.ai-demo-cards-v155 span{font-size:10.5px;line-height:1.8;color:#526d84}.ai-demo-cards-v155 small{font-size:9.5px;color:#8798a7}
@media(max-width:760px){.ai-demo-cards-v155{grid-template-columns:1fr}}
