
/* CityCharm UI v0.70 — unified minimalist pastel design */
:root{
  --cc-bg:#fbf8f7;--cc-surface:#fffdfc;--cc-surface-2:#f7f1ef;--cc-blush:#f1e3e6;
  --cc-sage:#e7eee9;--cc-sand:#f3eee4;--cc-lilac:#eee9f1;--cc-ink:#3c3438;
  --cc-muted:#81767b;--cc-line:#eadfe1;--cc-accent:#b48291;--cc-accent-deep:#8f6572;
  --cc-success:#6e8d79;--cc-danger:#b77878;--cc-warning:#b09268;
  --cc-radius:18px;--cc-radius-sm:12px;--cc-shadow:0 10px 30px rgba(91,70,77,.055);
}
html{background:var(--cc-bg);scroll-behavior:smooth}
body{background:var(--cc-bg)!important;color:var(--cc-ink)!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Arial,sans-serif!important;line-height:1.55}
a{transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease}
::selection{background:var(--cc-blush);color:var(--cc-ink)}

/* Universal surfaces */
.card,.cc-card,.salon-card,.master-card,.brand-card,.category,.context,.channel,.month,.crm-client,.booking-calendar,.booking-list,.map-wrap,.branch,.hero-card,.stats-box{
  border-color:var(--cc-line)!important;background:var(--cc-surface)!important;box-shadow:none!important
}
.card,.cc-card,.context,.channel,.month,.crm-client,.booking-calendar,.map-wrap,.branch{border-radius:var(--cc-radius)!important}
.muted,.cc-muted,.service-meta,.map-note,small{color:var(--cc-muted)!important}
h1,h2,h3,h4{color:var(--cc-ink);letter-spacing:-.025em}
h1{font-weight:720!important} h2{font-weight:700!important} h3{font-weight:680!important}

/* Buttons */
.btn,.cta,.cc-submit,button.btn,button.cc-submit{
  border-radius:999px!important;box-shadow:none!important;font-weight:650!important;transition:.18s ease!important
}
.btn-primary,.btn:not(.btn-light):not(.btn-danger):not(.light):not(.danger),.cta,.cc-submit{
  background:var(--cc-accent)!important;color:#fff!important;border-color:var(--cc-accent)!important
}
.btn-primary:hover,.btn:not(.btn-light):not(.btn-danger):not(.light):not(.danger):hover,.cta:hover,.cc-submit:hover{
  background:var(--cc-accent-deep)!important;border-color:var(--cc-accent-deep)!important;transform:translateY(-1px)
}
.btn-light,.btn.light,.light.btn,.btn-soft{
  background:var(--cc-surface)!important;color:var(--cc-ink)!important;border:1px solid var(--cc-line)!important
}
.btn-light:hover,.btn.light:hover,.btn-soft:hover{background:var(--cc-surface-2)!important}
.btn-danger,.btn.danger,.danger.btn{background:#fbefef!important;color:#9c5d5d!important;border:1px solid #efdada!important}

/* Inputs */
input,select,textarea{
  background:var(--cc-surface)!important;border-color:var(--cc-line)!important;color:var(--cc-ink)!important;
  border-radius:13px!important;box-shadow:none!important;outline:none!important
}
input:focus,select:focus,textarea:focus{border-color:#cba8b2!important;box-shadow:0 0 0 3px rgba(180,130,145,.10)!important}
input[type=checkbox],input[type=radio]{accent-color:var(--cc-accent)}

/* Badges / alerts */
.badge,.pill,.eyebrow,.tab{background:var(--cc-surface-2)!important;color:var(--cc-ink)!important;border-color:var(--cc-line)!important}
.badge-green,.badge.owner,.badge.green{background:var(--cc-sage)!important;color:#557361!important}
.badge-gray,.badge.off{background:#f1edee!important;color:#786f73!important}
.alert{background:var(--cc-sage)!important;color:#587163!important;border:1px solid #d7e4db!important}
.errors,.err{background:#fbefef!important;color:#955f5f!important;border:1px solid #efdada!important}

/* Public top navigation */
.header,.topbar,.head{background:rgba(255,253,252,.94)!important;border-color:var(--cc-line)!important;backdrop-filter:blur(14px)}
.brand{color:var(--cc-ink)!important}.brand span{color:var(--cc-accent)!important}
.brand-mark{background:var(--cc-blush)!important;color:var(--cc-accent-deep)!important;box-shadow:none!important}
.nav a,.navlinks a{color:#62595d!important}.nav a:hover,.navlinks a:hover,.nav a.active{color:var(--cc-accent-deep)!important}

/* Homepage / public catalog */
.hero,.hero-placeholder{background:var(--cc-surface-2)!important}
.hero h1 span,.kicker,.link-arrow,.rating,.float-rating{color:var(--cc-accent-deep)!important}
.blob{background:var(--cc-blush)!important}
.pin{background:var(--cc-accent)!important}.pin.p2{background:#8fa79a!important}.pin.p3{background:#c8a7b1!important}
.category:hover,.salon-card:hover{border-color:#d9c5cb!important;box-shadow:var(--cc-shadow)!important}
.cta-box{background:#5a4d52!important}.cta-box:after{background:#c9a9b3!important}
.section.alt{background:#f8f3f1!important}.quick a{background:var(--cc-surface-2)!important}

/* Account navigation */
.cc-account-nav{position:sticky;top:0;z-index:60;background:rgba(251,248,247,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--cc-line)}
.cc-account-nav__inner{max-width:1120px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:18px;justify-content:space-between}
.cc-account-nav__brand{font-weight:780;font-size:20px;color:var(--cc-ink);text-decoration:none}
.cc-account-nav__links{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.cc-account-nav__links a{padding:8px 11px;border-radius:999px;text-decoration:none;color:#6c6267;font-size:14px}
.cc-account-nav__links a.active,.cc-account-nav__links a:hover{background:var(--cc-blush);color:var(--cc-accent-deep)}
.cc-account-nav__user{font-size:13px;color:var(--cc-muted)}

/* Admin / business cabinet */
.shell{background:var(--cc-bg)!important}
.sidebar,.old-admin.sidebar{background:#f7f1ef!important;color:var(--cc-ink)!important;border-right:1px solid var(--cc-line)!important}
.sidebar .brand,.old-admin .brand{color:var(--cc-ink)!important}
.sidebar .context{background:var(--cc-surface)!important;border-color:var(--cc-line)!important}
.nav .sub{color:#9a8d92!important;letter-spacing:.08em!important;font-size:11px!important}
.nav .sep{background:var(--cc-line)!important}
.sidebar .nav a,.old-admin .nav a{color:#655c60!important;border-radius:12px!important}
.sidebar .nav a:hover,.sidebar .nav a.active,.old-admin .nav a:hover,.old-admin .nav a.active{background:var(--cc-blush)!important;color:var(--cc-accent-deep)!important}
.sidebar .bottom,.old-admin .bottom{color:var(--cc-muted)!important}
.main,.content{background:var(--cc-bg)!important}
.metric{color:var(--cc-accent-deep)!important}
table{background:var(--cc-surface);border-radius:var(--cc-radius);overflow:hidden}
th,td{border-color:var(--cc-line)!important} th{color:var(--cc-muted)!important;background:#faf6f4}
.toolbar{padding:4px 0}

/* Tabs */
.tabs,.schedule-tabs{gap:8px!important}
.tab,.schedule-tabs a{border-radius:999px!important;background:var(--cc-surface)!important;border-color:var(--cc-line)!important;color:#675e62!important}
.tab.active,.schedule-tabs a.active{background:var(--cc-blush)!important;color:var(--cc-accent-deep)!important;border-color:#dec9cf!important}

/* Map + gallery */
.gallery-item,.salon-map,.map-demo{background:var(--cc-surface-2)!important}
.preview{background:#6d5a61!important}
.footer{background:#51464a!important;color:#eee6e8!important}

/* Pagination */
.pagination nav{display:flex;gap:6px;flex-wrap:wrap}.pagination a,.pagination span{border-color:var(--cc-line)!important;border-radius:10px!important}

/* Auth cards */
.box{border:1px solid var(--cc-line)!important;box-shadow:var(--cc-shadow)!important;background:var(--cc-surface)!important;border-radius:24px!important}

/* Mobile */
@media(max-width:900px){
  .sidebar{background:var(--cc-surface)!important}.cc-account-nav__inner{align-items:flex-start;flex-direction:column;gap:8px}.cc-account-nav__user{display:none}
}
@media(max-width:620px){
  .cc-account-nav__inner{padding:10px 14px}.cc-account-nav__links{width:100%;overflow:auto;flex-wrap:nowrap;padding-bottom:2px}.cc-account-nav__links a{white-space:nowrap}
  .card,.cc-card{padding:17px!important}h1{font-size:28px!important}
}
