/* ============================================================
   SMILES TO MILES — CENTRAL PREMIUM GREY + ORANGE THEME
   v3 • Public Website + Admin Console + CRM + Chatbot
   Visual layer only. No database/auth/business logic changes.
   ============================================================ */
:root{
  --stm-orange:#F48600;
  --stm-orange-2:#FF9B20;
  --stm-orange-deep:#D96D00;
  --stm-orange-soft:#FFF1DF;
  --stm-graphite:#5A5A5E;
  --stm-graphite-dark:#3E3E42;
  --stm-graphite-deep:#2D2D30;
  --stm-grey:#77777C;
  --stm-grey-soft:#F2F2F3;
  --stm-grey-pale:#F8F8F9;
  --stm-ink:#29292C;
  --stm-muted:#77777C;
  --stm-white:#FFFFFF;
  --stm-line:#E1E1E3;
  --stm-shadow:0 16px 44px rgba(45,45,48,.09);
  --stm-shadow-lg:0 28px 80px rgba(45,45,48,.18);
}

/* PUBLIC WEBSITE */
.stm-site{color:var(--stm-ink)}
.stm-site .stm-nav-shell{
  background:rgba(82,82,86,.92)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:0 18px 55px rgba(40,40,43,.20)!important;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
.stm-site .stm-public-header.is-scrolled .stm-nav-shell{background:rgba(70,70,74,.97)!important}
.stm-site .stm-primary-nav a{color:rgba(255,255,255,.94)!important}
.stm-site .stm-primary-nav a:hover,.stm-site .stm-primary-nav a.is-active{color:#fff!important}
.stm-site .stm-primary-nav a.is-active:after{background:var(--stm-orange)!important}
.stm-site .stm-nav-quote{background:var(--stm-orange)!important;color:#fff!important;box-shadow:0 12px 28px rgba(244,134,0,.24)!important}
.stm-site .stm-account-button{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.28)!important;color:#fff!important}
.stm-site .stm-account-avatar{background:var(--stm-orange)!important;color:#fff!important}
.stm-site .stm-account-menu{background:#fff!important;border:1px solid var(--stm-line)!important;box-shadow:var(--stm-shadow-lg)!important}
.stm-site .stm-account-menu a:hover{background:var(--stm-orange-soft)!important;color:var(--stm-orange)!important}
.stm-site .stm-account-menu-divider{height:1px;background:var(--stm-line);margin:5px 0}
.stm-site .stm-employee-login-link{font-weight:800!important;color:var(--stm-graphite-dark)!important}
.stm-site .stm-employee-login-link i{color:var(--stm-orange)!important}
.stm-site .stm-trust-wrap{background:linear-gradient(135deg,#3E3E42,#5A5A5E)!important}
.stm-site .stm-btn-primary,.stm-site .stm-btn.stm-btn-primary{background:linear-gradient(135deg,var(--stm-orange),var(--stm-orange-2))!important;color:#fff!important;box-shadow:0 12px 28px rgba(244,134,0,.22)!important}
.stm-site .stm-btn-primary:hover{background:var(--stm-orange-deep)!important}
.stm-site .stm-section-dark{background:linear-gradient(135deg,#3E3E42,#5A5A5E)!important}
.stm-site .stm-text-link,.stm-site .stm-package-body h3 a{color:var(--stm-graphite-dark)!important}
.stm-site .stm-text-link:hover,.stm-site .stm-package-body h3 a:hover{color:var(--stm-orange)!important}

/* PUBLIC NAV RESPONSIVE */
@media(max-width:900px){
  .stm-site .stm-primary-nav{background:rgba(70,70,74,.98)!important;border-color:rgba(255,255,255,.15)!important}
  .stm-site .stm-primary-nav a{color:#fff!important}
}

/* ADMIN CONSOLE */
body.admin-body,body.stm-admin-page{
  background:linear-gradient(135deg,#F0F0F1 0%,#FAFAFA 52%,#F3F3F4 100%)!important;
  color:var(--stm-ink)!important;
}
.stm-central-header-v2{
  background:rgba(82,82,86,.95)!important;
  border:1px solid rgba(255,255,255,.24)!important;
  box-shadow:0 18px 55px rgba(40,40,43,.18)!important;
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
}
.stm-central-brand-copy-v2 strong,.stm-central-title-v2{color:#fff!important}
.stm-central-brand-copy-v2 small,.stm-central-title-v2 span{color:#FFB15A!important}
.stm-central-title-v2{border-left-color:rgba(255,255,255,.20)!important}
.stm-central-nav-v2 a{color:rgba(255,255,255,.92)!important}
.stm-central-nav-v2 a:hover,.stm-central-nav-v2 a.active{background:rgba(244,134,0,.20)!important;color:#fff!important}
.stm-central-nav-v2 a.active{box-shadow:inset 0 -2px 0 var(--stm-orange),0 5px 15px rgba(244,134,0,.10)!important}
.stm-central-nav-v2 a i{color:#FFB15A!important}
.stm-central-nav-v2 a.nav-profile{border-left-color:rgba(255,255,255,.18)!important}
.stm-page-wrap{color:var(--stm-ink)!important}
.stm-page-panel{background:rgba(255,255,255,.97)!important;border:1px solid var(--stm-line)!important;border-radius:24px!important;box-shadow:var(--stm-shadow)!important}
.stm-page-heading h2{color:var(--stm-graphite-dark)!important}
.stm-page-heading p{color:var(--stm-muted)!important}
.stm-kpi{background:linear-gradient(180deg,#fff,#FAFAFA)!important;border:1px solid var(--stm-line)!important;border-radius:20px!important;box-shadow:0 10px 28px rgba(40,40,43,.055)!important;color:var(--stm-ink)!important}
.stm-kpi:hover{border-color:rgba(244,134,0,.40)!important;box-shadow:0 18px 38px rgba(40,40,43,.10)!important}
.stm-kpi small{color:var(--stm-orange)!important}
.stm-kpi strong{color:var(--stm-graphite-dark)!important}
.stm-kpi span{color:var(--stm-muted)!important}
.stm-btn,.stm-btn.primary{border-radius:13px!important;background:#fff!important;border:1px solid var(--stm-line)!important;color:var(--stm-graphite-dark)!important;box-shadow:none!important}
.stm-btn.primary{background:linear-gradient(135deg,var(--stm-orange),var(--stm-orange-2))!important;color:#fff!important;border-color:transparent!important;box-shadow:0 10px 24px rgba(244,134,0,.20)!important}
.stm-btn.primary:hover{background:var(--stm-orange-deep)!important}
.stm-table-wrap{border:1px solid var(--stm-line)!important;border-radius:18px!important;overflow:auto;background:#fff!important}
.stm-table th{background:#F1F1F2!important;color:#55555A!important;border-bottom:1px solid var(--stm-line)!important}
.stm-table td{border-bottom:1px solid #EEEEEF!important}
.stm-table tbody tr:hover{background:#FFF8EF!important}
.stm-field label{color:#4A4A4F!important}
.stm-field input,.stm-field select,.stm-field textarea{border:1px solid #D9D9DC!important;background:#fff!important;color:var(--stm-ink)!important;border-radius:12px!important}
.stm-field input:focus,.stm-field select:focus,.stm-field textarea:focus{border-color:var(--stm-orange)!important;box-shadow:0 0 0 4px rgba(244,134,0,.11)!important;outline:0!important}

/* CRM — all pages use the same system */
body:has(.crm-shell){background:linear-gradient(135deg,#F0F0F1 0%,#FAFAFA 52%,#F3F3F4 100%)!important;color:var(--stm-ink)!important}
.crm-side{background:linear-gradient(180deg,#5A5A5E 0%,#3D3D41 100%)!important;color:#fff!important;box-shadow:10px 0 35px rgba(40,40,43,.15)!important;border-right:1px solid rgba(255,255,255,.14)!important}
.crm-side .brand{border-bottom-color:rgba(255,255,255,.16)!important}
.crm-side .brand b{color:#fff!important}
.crm-side .brand small{color:#FFB15A!important}
.crm-side .nav a{color:rgba(255,255,255,.84)!important;border-left:3px solid transparent!important;border-radius:11px!important}
.crm-side .nav a:hover,.crm-side .nav a.active{background:rgba(244,134,0,.18)!important;color:#fff!important;border-left-color:var(--stm-orange)!important}
.crm-main{background:transparent!important}
.crm-main .top{background:rgba(82,82,86,.95)!important;border:1px solid rgba(255,255,255,.24)!important;border-radius:20px!important;box-shadow:0 18px 55px rgba(40,40,43,.16)!important;color:#fff!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.crm-main .eyebrow{color:#FFB15A!important}
.crm-main .title{color:#fff!important}
.crm-main .muted{color:rgba(255,255,255,.70)!important}
.crm-main .user-chip{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.20)!important;color:#fff!important}
.crm-main .card,.crm-main .section,.crm-main .panel,.crm-main .stm-panel{background:#fff!important;border:1px solid var(--stm-line)!important;border-radius:18px!important;box-shadow:var(--stm-shadow)!important}
.crm-main .card:hover{border-color:rgba(244,134,0,.35)!important}
.crm-main .stat{color:var(--stm-graphite-dark)!important}
.crm-main .stm-btn,.crm-main .btn{border-radius:12px!important}
.crm-main .stm-btn.primary,.crm-main .btn-primary{background:linear-gradient(135deg,var(--stm-orange),var(--stm-orange-2))!important;border-color:transparent!important;color:#fff!important;box-shadow:0 10px 24px rgba(244,134,0,.20)!important}
.crm-main input,.crm-main select,.crm-main textarea{background:#fff!important;border:1px solid #D9D9DC!important;color:var(--stm-ink)!important;border-radius:12px!important}
.crm-main input:focus,.crm-main select:focus,.crm-main textarea:focus{border-color:var(--stm-orange)!important;box-shadow:0 0 0 4px rgba(244,134,0,.11)!important;outline:0!important}
.crm-main table{background:#fff!important}
.crm-main table thead th{background:#F1F1F2!important;color:#55555A!important}
.crm-main table tbody tr:hover{background:#FFF8EF!important}
.crm-main .stm-badge{background:#F1F1F2!important;color:#55555A!important}
.crm-main .stm-ok{background:#EAF7EF!important;color:#217445!important}
.crm-main .stm-warn{background:#FFF1DF!important;color:#9A5B00!important}
.crm-main .stm-danger{background:#FDECEC!important;color:#A83232!important}

/* EMPLOYEE LOGIN */
.login-page{background:linear-gradient(135deg,#ECECEE 0%,#FAFAFA 55%,#F4F4F5 100%)!important}
.login-visual{background:linear-gradient(135deg,rgba(60,60,64,.90),rgba(91,91,95,.74)),url('/images/premium-worldwide-hero.jpg') center/cover no-repeat!important}
.login-visual:after{background:linear-gradient(180deg,rgba(45,45,48,.05),rgba(45,45,48,.70))!important}
.login-visual h1{color:#fff!important}
.login-visual p{color:rgba(255,255,255,.80)!important}
.login-panel{background:transparent!important}
.login-box{background:rgba(255,255,255,.97)!important;border:1px solid var(--stm-line)!important;border-radius:26px!important;box-shadow:var(--stm-shadow-lg)!important}
.login-box h2{color:var(--stm-graphite-dark)!important}
.login-box .eyebrow{color:var(--stm-orange)!important}
.login-box .muted,.login-box .footer-note{color:var(--stm-muted)!important}
.login-box .field label{color:#4A4A4F!important}
.login-box .field input{border:1px solid #D9D9DC!important;border-radius:13px!important;background:#fff!important}
.login-box .field input:focus{border-color:var(--stm-orange)!important;box-shadow:0 0 0 4px rgba(244,134,0,.11)!important;outline:0!important}
.login-box .btn-primary{background:linear-gradient(135deg,var(--stm-orange),var(--stm-orange-2))!important;border-color:transparent!important;color:#fff!important;box-shadow:0 12px 28px rgba(244,134,0,.22)!important}

/* CHATBOT — actual classes in ai-chatbot/assets/chatbot.css */
#stm-ai-chatbot{--stm-orange:var(--stm-orange)!important;--stm-dark:var(--stm-graphite-dark)!important;--stm-soft:#F7F7F8!important;--stm-border:var(--stm-line)!important}
#stm-ai-chatbot .stm-chat-launcher{background:linear-gradient(135deg,var(--stm-orange),var(--stm-orange-2))!important;color:#fff!important;box-shadow:0 18px 42px rgba(244,134,0,.27)!important}
#stm-ai-chatbot .stm-chat-launcher-icon{background:rgba(255,255,255,.17)!important}
#stm-ai-chatbot .stm-chat-panel{background:#fff!important;border:1px solid var(--stm-line)!important;border-radius:24px!important;box-shadow:0 30px 90px rgba(40,40,43,.24)!important}
#stm-ai-chatbot .stm-chat-header{background:linear-gradient(135deg,#5A5A5E,#3D3D41)!important;color:#fff!important}
#stm-ai-chatbot .stm-chat-close{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.14)!important}
#stm-ai-chatbot .stm-chat-body{background:linear-gradient(180deg,#F8F8F9,#F3F3F4)!important}
#stm-ai-chatbot .stm-msg-bubble{background:#fff!important;border-color:var(--stm-line)!important;color:var(--stm-ink)!important}
#stm-ai-chatbot .stm-msg-user .stm-msg-bubble{background:var(--stm-orange)!important;border-color:var(--stm-orange)!important;color:#fff!important}
#stm-ai-chatbot .stm-chat-suggestions{background:#fff!important;border-top-color:var(--stm-line)!important}
#stm-ai-chatbot .stm-chat-suggestions button{border-color:#F2C68F!important;background:#FFF8EF!important;color:#9A5B00!important}
#stm-ai-chatbot .stm-chat-suggestions button:hover{background:var(--stm-orange)!important;color:#fff!important;border-color:var(--stm-orange)!important}
#stm-ai-chatbot .stm-chat-input{background:#fff!important;border-top-color:var(--stm-line)!important}
#stm-ai-chatbot .stm-chat-input textarea{border-color:#D9D9DC!important;background:#fff!important;color:var(--stm-ink)!important}
#stm-ai-chatbot .stm-chat-input textarea:focus{border-color:var(--stm-orange)!important;box-shadow:0 0 0 4px rgba(244,134,0,.10)!important}
#stm-ai-chatbot .stm-chat-input>button,.stm-quote-submit{background:var(--stm-orange)!important;color:#fff!important}
#stm-ai-chatbot .stm-chat-disclaimer{background:#fff!important;color:#88888D!important}
#stm-ai-chatbot .stm-quote-card{background:#FFF9F2!important;border-top-color:#F2D4AE!important}
#stm-ai-chatbot .stm-quote-title{color:#9A5B00!important}
#stm-ai-chatbot .stm-quote-card input,#stm-ai-chatbot .stm-quote-card select,#stm-ai-chatbot .stm-quote-card textarea{border-color:#D9D9DC!important}
#stm-ai-chatbot .stm-quote-card input:focus,#stm-ai-chatbot .stm-quote-card select:focus,#stm-ai-chatbot .stm-quote-card textarea:focus{border-color:var(--stm-orange)!important;box-shadow:0 0 0 4px rgba(244,134,0,.10)!important}

/* SHARED RESPONSIVE */
@media(max-width:900px){
  .login-page{grid-template-columns:1fr!important}
  .login-visual{min-height:340px!important;padding:38px!important}
}
@media(max-width:700px){
  #stm-ai-chatbot{right:12px!important;bottom:12px!important}
  #stm-ai-chatbot .stm-chat-panel{width:min(430px,calc(100vw - 24px))!important}
}
