:root{
  --ui-font-size:16px;
  --ui-control-height:52px;
  --ui-radius:16px;
  --ui-card-gap:16px;
  --ui-mobile-nav-font:12px;
}
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
body,button,input,select,textarea,optgroup,option,label,.btn,[class*="btn"],[class*="button"],[class*="nav"],[class*="form"]{
  font-family:var(--app-font,"Vazirmatn","Vazir",Tahoma,Arial,sans-serif)!important;
}
body{font-size:var(--ui-font-size);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
img,svg,video,canvas,iframe{max-width:100%}
form,fieldset,.container,main,section,article,.card,[class*="card"],[class*="panel"],[class*="shell"],[class*="grid"]{min-width:0}
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),select,textarea{
  display:block;width:100%;max-width:100%;min-width:0;height:auto;min-height:var(--ui-control-height);padding:12px 14px;border-radius:var(--ui-radius);line-height:1.6;font-size:16px!important;
}
textarea{min-height:110px;resize:vertical}
input::placeholder,textarea::placeholder{font-family:inherit!important;font-size:14px!important;color:#99a39d!important;opacity:1}
button,.btn,a.btn,[type="submit"],[type="button"]{min-height:44px;font-family:inherit!important}
select{padding-inline-end:40px}
table{max-width:100%}.table-wrap,[class*="table-wrap"],[class*="table-responsive"]{width:100%;overflow:auto;-webkit-overflow-scrolling:touch}
.mobile-bottom-nav,.smart-mobile-nav,.sp-mobile-nav,.action-mobile-nav{
  font-family:var(--app-font,"Vazirmatn","Vazir",Tahoma,Arial,sans-serif)!important;
  padding-bottom:max(8px,env(safe-area-inset-bottom));
}
.mobile-bottom-nav a,.smart-mobile-nav a,.sp-mobile-nav a,.action-mobile-nav a{
  font-family:inherit!important;min-width:0;text-align:center;
}
.mobile-bottom-nav span,.smart-mobile-nav span,.sp-mobile-nav span,.action-mobile-nav span{
  font-family:inherit!important;font-size:var(--ui-mobile-nav-font)!important;font-weight:700!important;line-height:1.35!important;white-space:nowrap;
}
.mobile-nav-icon,.smart-mobile-nav i,.sp-mobile-nav i,.action-mobile-nav i{flex:0 0 auto}
/* Prevent third-party or page-specific fixed widths from escaping */
[class*="field"],[class*="input"],[class*="form-row"],[class*="form-grid"],[class*="fields-grid"],[class*="choice-grid"]{min-width:0;max-width:100%}
@media(max-width:991px){
  body{font-size:15px}
  .container{width:100%!important;max-width:100%!important;padding-inline:14px!important}
  main>section,main>div{max-width:100%}
  [class*="form-grid"],[class*="fields-grid"],[class*="filter-grid"],[class*="detail-grid"],[class*="admin-grid"],[class*="account-grid"]{grid-template-columns:minmax(0,1fr)!important}
  [class*="form-row"]{flex-wrap:wrap!important}
  [class*="form-row"]>*{flex:1 1 100%!important;max-width:100%!important}
  .site-header .nav{min-width:0}
  .site-header .brand,.site-header .brand-text,.site-header .nav-actions{min-width:0}
  .site-header .brand-text b,.site-header .brand-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .vv-page,.valuation-page,.smart-ad-page,.adv2-page,.wallet-shell,.account-shell,.sp-page,.action-center-page{width:100%!important;max-width:100%!important;overflow:hidden}
  .vv-container,.valuation-container,.adv2-shell,.wallet-account-card,.account-panel,.account-card{max-width:100%!important;min-width:0!important}
  .vv-plate,.vv-plate-grid,[class*="plate"]{max-width:100%!important;min-width:0!important}
  .vv-plate input,.vv-plate select{min-width:0!important;width:100%!important}
  .floating-ai-advisor{max-width:calc(100vw - 24px)!important}
}
@media(max-width:640px){
  :root{--ui-font-size:15px;--ui-control-height:50px;--ui-radius:15px;--ui-card-gap:12px;--ui-mobile-nav-font:11px}
  input:not([type="checkbox"]):not([type="radio"]),select,textarea{font-size:16px!important}
  h1{font-size:clamp(24px,7vw,32px)}h2{font-size:clamp(20px,6vw,27px)}
  .mobile-bottom-nav,.smart-mobile-nav,.sp-mobile-nav,.action-mobile-nav{left:10px!important;right:10px!important;width:auto!important;max-width:calc(100vw - 20px)!important}
  .mobile-bottom-nav a,.smart-mobile-nav a,.sp-mobile-nav a,.action-mobile-nav a{padding-inline:2px!important}
  .site-footer{padding-bottom:110px}
}
