/* AnahtarApp front-end — clean, light, marketplace-grade (thumbtack / armut reference). */
:root{
  /* v13 (jul 27, client-approved): teal primary + cool neutrals, applied app-wide. */
  --aa-primary:#163c35; --aa-primary-d:#1f4e45; --aa-primary-soft:#e3f0eb;
  --aa-primary-grad:linear-gradient(135deg,#1f4e45 0%,#163c35 56%,#0d2622 100%);
  --aa-accent:#059669; --aa-accent-soft:#ecfdf5;
  --aa-ink:#10201d; --aa-ink-2:#5c6d69; --aa-muted:#93a19d;
  --aa-line:#e6eae8; --aa-bg:#f4f6f5; --aa-card:#ffffff; --aa-ok:#059669;
  --aa-orange:#d75000; --aa-orange-d:#d96d0e; --aa-orange-soft:#fdebd9;
  --aa-radius:18px; --aa-radius-sm:13px; --aa-radius-lg:24px;
  --aa-shadow-sm:0 1px 2px rgba(16,24,40,.04), 0 2px 6px rgba(16,24,40,.06);
  --aa-shadow:0 8px 18px -8px rgba(15,23,42,.10), 0 22px 44px -18px rgba(15,23,42,.16);
  --aa-shadow-lg:0 30px 72px -22px rgba(15,23,42,.30);
  --aa-ring:0 0 0 4px rgba(22,60,53,.16);
  /* v13: Inter for body/UI, Manrope for display — the client's final type system, applied app-wide. */
  --aa-font:'Inter','Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --aa-font-display:'Manrope','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
/* Display face on headings + key marketplace titles (app UI; the .aa-home homepage sets its own). */
.aa-app h1,.aa-app h2,.aa-app h3,.aa-app h4,
.aa-hero__title,.aa-section__title,.aa-how__step h3,.aa-wz-cat,.aa-topbar__logo,
.aa-authtab,.aa-value b,.aa-sitefooter h2{font-family:var(--aa-font-display);letter-spacing:-.015em}
/* Always render the marketplace in its designed LIGHT theme so it matches the reference sites
   regardless of the visitor's OS dark-mode setting (and so text contrast is always correct). */
.aa-app,.aa-hero{color-scheme:light;font-family:var(--aa-font)}
.aa-app *,.aa-hero *{box-sizing:border-box}

/* ---------- Hero ---------- */
.aa-hero{background:radial-gradient(1200px 420px at 50% -120px,#f6ece6 0,rgba(232,240,255,0) 70%),linear-gradient(180deg,#ffffff 0,var(--aa-bg) 100%);padding:56px 16px 64px}
.aa-hero__inner{max-width:720px;margin:0 auto;text-align:center}
.aa-hero__eyebrow{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid var(--aa-line);box-shadow:var(--aa-shadow-sm);color:var(--aa-ink-2);font-size:.82rem;font-weight:600;padding:6px 14px;border-radius:999px;margin-bottom:18px}
.aa-hero__eyebrow b{color:var(--aa-primary)}
.aa-hero__title{font-size:2.1rem;line-height:1.12;color:var(--aa-ink);margin:0 0 12px;font-weight:800;letter-spacing:-.025em}
.aa-hero__title em{color:var(--aa-primary);font-style:normal}
.aa-hero__subtitle{color:var(--aa-muted);margin:0 0 26px;font-size:1.08rem;line-height:1.5}
@media(min-width:640px){.aa-hero__title{font-size:2.85rem}}

.aa-app{max-width:600px;margin:0 auto;text-align:left}
.aa-card{background:var(--aa-card);border:1px solid var(--aa-line);border-radius:var(--aa-radius);box-shadow:var(--aa-shadow);overflow:hidden}

/* ---------- Top bar (logo + Log in / Sign up), Thumbtack-style header ---------- */
.aa-topbar{background:rgba(255,255,255,.78);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid var(--aa-line);font-family:var(--aa-font)}
/* Password strength meter (signup) */
.aa-pwbar{height:7px;border-radius:6px;background:var(--aa-line);overflow:hidden}
.aa-pwbar i{display:block;height:100%;width:0;border-radius:6px;transition:width .2s,background .2s}
.aa-pwlabel{display:block;margin-top:4px;font-size:.78rem;font-weight:600}
/* Lightbox (enlarge photo / play video) */
.aa-lightbox{position:fixed;inset:0;z-index:9999;background:rgba(8,12,20,.9);display:flex;align-items:center;justify-content:center;padding:16px;backdrop-filter:blur(2px)}
.aa-lightbox video{width:auto;height:auto;max-width:96vw;max-height:94vh;border-radius:10px;box-shadow:0 20px 60px rgba(0,0,0,.5);background:#000}
.aa-lightbox__stage{width:96vw;height:94vh;display:flex;align-items:center;justify-content:center;overflow:hidden}
.aa-lightbox__stage img{max-width:96vw;max-height:94vh;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);transition:transform .08s ease-out;will-change:transform;user-select:none}
.aa-lightbox__x{position:absolute;top:18px;right:22px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.16);color:#fff;font-size:1.3rem;cursor:pointer;z-index:2}
.aa-lightbox__x:hover{background:rgba(255,255,255,.3)}
.aa-lightbox__zoom{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:2}
.aa-lb-btn{width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.18);color:#fff;font-size:1.3rem;cursor:pointer;line-height:1}
.aa-lb-btn:hover{background:rgba(255,255,255,.34)}
/* Wizard dropdown must not be clipped by the card's overflow:hidden */
.aa-wizard{overflow:visible}
.aa-wizard .aa-wz-body{overflow:visible}
/* Gallery card video play overlay */
.aa-gcard{position:relative}
.aa-gcard__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.6);pointer-events:none}
/* Section divider in profile tabs */
.aa-secdivider{height:1px;background:var(--aa-line);margin:22px 0 18px}
/* Blue unread badge (conversation list — who messaged, unseen). Two classes beat the base .aa-unread. */
.aa-unread.aa-unread--blue{background:#c25b3f}
/* Chat read receipts: ✓ delivered/unread (grey) → ✓✓ read (blue), next to the time */
.aa-bub__tick{margin-left:5px;font-size:.78rem;color:#a89f88;letter-spacing:-1px}
.aa-bub__tick.is-read{color:#c25b3f}
/* Phone + live badge in the chat header */
.aa-msgphone{font-size:.85rem;color:var(--aa-primary);text-decoration:none;margin-left:6px}
.aa-msghead__badge{vertical-align:middle}
/* Admin chat-history media shown inline */
.aa-admsg__body .aa-chatmedia{margin-top:6px;width:180px;max-width:100%}
.aa-admsg__body .aa-chatmedia img,.aa-admsg__body .aa-chatmedia video{max-height:160px}
.aa-msgrow__avimg{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:0 0 auto}
/* Unlocked lead: quote + chat box inside My Tasks */
.aa-unlockedbox{margin-top:12px;padding-top:12px;border-top:1px dashed var(--aa-line)}
/* Modal */
.aa-modal{position:fixed;inset:0;z-index:9998;background:rgba(8,12,20,.55);display:flex;align-items:flex-start;justify-content:center;padding:5vh 16px;overflow:auto}
.aa-modal__box{background:#fff;border-radius:16px;width:560px;max-width:96vw;box-shadow:0 24px 70px rgba(0,0,0,.3)}
.aa-modal__head{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--aa-line)}
.aa-modal__x{border:0;background:none;font-size:1.2rem;cursor:pointer;color:var(--aa-muted)}
.aa-modal__body{padding:20px;max-height:78vh;overflow:auto}
.aa-admsg{border:1px solid var(--aa-line);border-radius:10px;padding:12px;margin-bottom:10px}
.aa-admsg__meta{font-size:.82rem;color:var(--aa-muted);margin-bottom:5px}
.aa-admsg__meta b{color:var(--aa-ink)}
.aa-admsg__body{color:var(--aa-ink);white-space:pre-wrap;word-break:break-word}
.aa-admsg__acts{display:flex;gap:8px;margin-top:8px}
/* Job-upload thumb: video preview + play overlay */
.aa-thumb{position:relative}
.aa-thumb video{width:100%;height:100%;object-fit:cover}
.aa-thumb .aa-gcard__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:1.4rem;color:#fff;text-shadow:0 2px 6px rgba(0,0,0,.7);pointer-events:none}
/* My Tasks feed: filter + matched (green) / non-matching (greyed, disabled) leads */
.aa-leadfilter{display:flex;flex-wrap:wrap;gap:8px}
.aa-lead--match{background:#f0fdf4;border-color:#bbf7d0}
.aa-lead--nomatch{background:#f4f5f7;border-color:#e4ddcc;opacity:.7;filter:grayscale(.35);pointer-events:none;user-select:none}
.aa-nomatchnote{margin-top:10px;font-size:.84rem;color:var(--aa-muted)}
/* Red count badge on sidebar nav items */
.aa-navbadge{margin-left:auto;flex:0 0 auto}
.aa-side__item{display:flex;align-items:center}
.aa-side__item .aa-side__ico,.aa-side__item .aa-side__ico+span{flex:0 0 auto}
.aa-side__brand--admin{display:flex;align-items:center;gap:12px;padding:18px 16px}
.aa-side__shield{width:46px;height:46px;border-radius:12px;background:#f6ece6;display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem;flex:0 0 auto}
.aa-uactions{white-space:nowrap}
.aa-uactions .aa-btn{padding:5px 11px;font-size:.8rem;margin:2px 4px 2px 0;min-height:auto}
.aa-topbar--global{position:sticky;top:0;z-index:60}
/* Shared site footer (how-it-works + value props), injected on every page */
.aa-sitefooter{margin-top:40px;border-top:1px solid var(--aa-line);background:#fff}
.aa-sitefooter .aa-how{margin-top:0;padding-top:36px}
.aa-footbar{max-width:1100px;margin:0 auto;padding:18px 20px 28px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--aa-line)}
.aa-footbar span{color:var(--aa-muted);font-size:.85rem}
.aa-topbar__inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 20px}
.aa-topbar__logo{display:inline-flex;align-items:center;font-weight:800;font-size:1.15rem;color:var(--aa-ink);text-decoration:none}
/* v13: client's official wordmark logo (anahtarapp + "Doğru İş Doğru Usta") replaces the key mark. */
.aa-topbar__logoimg{height:34px;width:auto;display:block}
@media(min-width:640px){.aa-topbar__logoimg{height:40px}}
.aa-topbar__nav{display:flex;align-items:center;gap:14px}
.aa-topbar__link{color:var(--aa-ink-2);font-weight:600;text-decoration:none;font-size:.95rem}
.aa-topbar__link:hover{color:var(--aa-primary)}
.aa-topbar__btn{flex:0 0 auto;padding:9px 18px;text-decoration:none}
.aa-topbar__userwrap{position:relative;display:inline-block}
.aa-topbar__user{display:inline-flex;align-items:center;gap:9px;text-decoration:none;padding:4px 12px 4px 4px;border-radius:30px;border:1px solid var(--aa-line);background:#fff;transition:.12s}
.aa-topbar__user:hover,.aa-topbar__userwrap:hover .aa-topbar__user{border-color:var(--aa-primary);box-shadow:var(--aa-shadow-sm)}
.aa-topbar__uname{color:var(--aa-ink);font-size:.92rem;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.aa-topbar__caret{color:var(--aa-muted);font-size:.7rem;margin-left:-2px}
/* Hover dropdown under the user name */
.aa-usermenu{position:absolute;top:calc(100% + 9px);right:0;min-width:206px;background:#fff;border:1px solid var(--aa-line);border-radius:12px;box-shadow:0 14px 34px rgba(2,32,71,.16);padding:6px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .14s,transform .14s,visibility .14s;z-index:80}
.aa-usermenu::before{content:"";position:absolute;top:-10px;left:0;right:0;height:10px}
.aa-topbar__userwrap:hover .aa-usermenu,.aa-topbar__userwrap:focus-within .aa-usermenu{opacity:1;visibility:visible;transform:none}
.aa-usermenu a{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:8px;color:var(--aa-ink);text-decoration:none;font-size:.92rem;font-weight:600}
.aa-usermenu a span{width:18px;text-align:center}
.aa-usermenu a:hover{background:var(--aa-bg);color:var(--aa-primary)}
.aa-usermenu__sep{border-top:1px solid var(--aa-line);margin-top:4px;padding-top:12px!important;color:#dc2626!important}

/* ---------- Auth (sign up / log in) ---------- */
.aa-authcard{max-width:420px;margin:32px auto}
.aa-authtabs{display:flex;gap:6px;background:var(--aa-bg);border-radius:12px;padding:4px;margin:0 0 18px}
.aa-authtab{flex:1;border:0;background:none;padding:10px;border-radius:9px;font-weight:700;font-family:inherit;color:var(--aa-muted);cursor:pointer}
.aa-authtab.is-on{background:#fff;color:var(--aa-primary);box-shadow:var(--aa-shadow-sm)}
.aa-googlebtn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px}
.aa-gicon{width:18px;height:18px;flex:0 0 auto}
/* Re-assert Google brand colours (a global svg{fill:currentColor} from the parent theme would otherwise flatten them) */
.aa-gicon path:nth-child(1){fill:#FFC107}
.aa-gicon path:nth-child(2){fill:#FF3D00}
.aa-gicon path:nth-child(3){fill:#4CAF50}
.aa-gicon path:nth-child(4){fill:#1976D2}
.aa-or{text-align:center;color:var(--aa-muted);font-size:.85rem;margin:14px 0;position:relative}
.aa-or:before,.aa-or:after{content:"";position:absolute;top:50%;width:42%;height:1px;background:var(--aa-line)}
.aa-or:before{left:0}.aa-or:after{right:0}
.aa-authlink{display:block;text-align:center;margin-top:14px;color:var(--aa-primary);font-size:.9rem;text-decoration:none}
.aa-authlink:hover{text-decoration:underline}

/* ---------- My Profile (Profile Details + Change Password), Listeo reference ---------- */
.aa-profilecols{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:780px){.aa-profilecols{grid-template-columns:1fr 1fr}}
.aa-flabel{display:block;font-size:.85rem;font-weight:600;color:var(--aa-ink-2);margin:0 0 5px}
.aa-pwnote{background:var(--aa-primary-soft);color:var(--aa-primary-d);border-radius:8px;padding:9px 12px;font-size:.85rem;margin-bottom:14px}

/* ---------- Role picker at signup (Hire a pro / Work as a pro) ---------- */
.aa-rolepick{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 14px}
.aa-rolecard{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;border:1.5px solid var(--aa-line);background:#fff;border-radius:12px;padding:14px;cursor:pointer;font-family:inherit;transition:.12s}
.aa-rolecard:hover{border-color:var(--aa-primary)}
.aa-rolecard.is-on{border-color:var(--aa-primary);background:var(--aa-primary-soft)}
.aa-rolecard__ic{font-size:1.5rem}
.aa-rolecard b{color:var(--aa-ink);font-size:.98rem}
.aa-rolecard small{color:var(--aa-muted);font-size:.78rem;line-height:1.2}

/* ---------- "How it works" + value sections (Thumbtack-style homepage) ---------- */
.aa-how,.aa-values{font-family:var(--aa-font);color:var(--aa-ink);padding:56px 16px}
.aa-how{background:#fff}
.aa-values{background:var(--aa-bg)}
.aa-how__inner,.aa-values__inner{max-width:1040px;margin:0 auto}
.aa-section__title{font-size:1.9rem;font-weight:800;text-align:center;margin:0 0 8px;letter-spacing:-.02em}
.aa-section__sub{text-align:center;color:var(--aa-muted);margin:0 0 36px;font-size:1.05rem}
.aa-how__steps{display:grid;grid-template-columns:1fr;gap:24px}
@media(min-width:760px){.aa-how__steps{grid-template-columns:repeat(3,1fr)}}
.aa-how__step{text-align:center;padding:8px}
.aa-how__num{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:var(--aa-primary);color:#fff;font-size:1.4rem;font-weight:800;margin-bottom:16px;box-shadow:0 8px 20px -6px rgba(194,91,63,.5)}
.aa-how__step h3{font-size:1.15rem;font-weight:700;margin:0 0 8px;color:var(--aa-ink)}
.aa-how__step p{color:var(--aa-muted);margin:0;line-height:1.55;font-size:.98rem}
.aa-values__inner{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:760px){.aa-values__inner{grid-template-columns:repeat(3,1fr)}}
.aa-value{background:#fff;border:1px solid var(--aa-line);border-radius:var(--aa-radius);box-shadow:var(--aa-shadow-sm);padding:26px 22px}
.aa-value__ic{font-size:1.9rem;margin-bottom:10px}
.aa-value b{display:block;font-size:1.1rem;color:var(--aa-ink);margin-bottom:8px}
.aa-value p{color:var(--aa-muted);margin:0;line-height:1.55;font-size:.96rem}

/* ---------- Trust strip ---------- */
.aa-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 22px;margin:22px auto 0;max-width:600px}
.aa-trust__item{display:inline-flex;align-items:center;gap:7px;color:var(--aa-ink-2);font-size:.9rem;font-weight:600}
.aa-trust__item svg{width:17px;height:17px;color:var(--aa-accent);flex:0 0 auto}

/* ---------- Search ---------- */
.aa-search{position:relative}
.aa-searchbox{position:relative;display:flex;align-items:center}
.aa-searchbox__icon{position:absolute;left:18px;width:22px;height:22px;color:var(--aa-muted);pointer-events:none}
.aa-input{width:100%;padding:18px 20px;font-size:1.08rem;font-family:inherit;border:1.5px solid var(--aa-line);border-radius:var(--aa-radius);background:#fff;color:var(--aa-ink);outline:none;box-shadow:var(--aa-shadow-sm);transition:border-color .15s,box-shadow .15s}
.aa-searchbox .aa-input{padding-left:50px}
.aa-input::placeholder{color:#a89f88}
.aa-input:focus{border-color:var(--aa-primary);box-shadow:0 0 0 4px var(--aa-primary-soft),var(--aa-shadow-sm)}
/* Password field with a show/hide eye toggle (login + signup) */
.aa-pwwrap{position:relative;display:block}
.aa-pwwrap .aa-input{padding-right:52px}
.aa-eye{position:absolute;top:0;right:0;height:100%;width:48px;display:flex;align-items:center;justify-content:center;border:0;background:transparent;color:#a89f88;cursor:pointer;padding:0;border-radius:0 var(--aa-radius) var(--aa-radius) 0;transition:color .15s}
.aa-eye:hover{color:var(--aa-muted)}
.aa-eye.is-on{color:var(--aa-primary)}
.aa-eye svg{display:block;pointer-events:none}
.aa-eye:focus-visible{outline:none;color:var(--aa-primary)}
.aa-suggest{list-style:none;margin:8px 0 0;padding:6px;position:absolute;left:0;right:0;background:#fff;border:1px solid var(--aa-line);border-radius:var(--aa-radius);box-shadow:var(--aa-shadow-lg);z-index:20;max-height:340px;overflow:auto}
.aa-suggest li{padding:12px 14px;border-radius:10px;cursor:pointer;color:var(--aa-ink);display:flex;align-items:center;gap:11px;font-weight:500}
.aa-suggest li:hover,.aa-suggest li[aria-selected="true"]{background:var(--aa-primary-soft)}
.aa-suggest .aa-sg-ico{font-size:1.15rem;width:24px;text-align:center;flex:0 0 auto}
.aa-suggest .aa-empty{color:var(--aa-muted);cursor:default}
.aa-dot{width:8px;height:8px;border-radius:50%;background:var(--aa-primary);flex:0 0 auto}

/* ---------- Popular categories grid (armut / thumbtack signature) ---------- */
.aa-cats__h{margin:30px 0 12px;font-size:.86rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--aa-muted);text-align:center}
.aa-cats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:560px){.aa-cats{grid-template-columns:repeat(4,1fr)}}
.aa-cat{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 12px;background:var(--aa-card);border:1px solid var(--aa-line);border-radius:var(--aa-radius);box-shadow:var(--aa-shadow-sm);cursor:pointer;transition:transform .14s,box-shadow .14s,border-color .14s;font-family:inherit}
.aa-cat:hover{transform:translateY(-3px);box-shadow:var(--aa-shadow);border-color:#e2c7b6}
.aa-cat__icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;font-size:1.7rem;background:var(--aa-primary-soft);border-radius:14px}
.aa-cat__name{font-size:.92rem;font-weight:600;color:var(--aa-ink);text-align:center;line-height:1.25}

/* wizard */
.aa-wizard{padding:0}
.aa-bar{height:5px;background:var(--aa-line)}
.aa-bar__fill{height:100%;background:var(--aa-primary);transition:width .25s}
.aa-wz-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--aa-line);background:linear-gradient(180deg,#fbfaf5,#fff)}
.aa-wz-cat{font-weight:800;color:var(--aa-ink);font-size:1.05rem}
.aa-summary{text-align:right;line-height:1.25;flex:0 0 auto}
.aa-summary b{color:var(--aa-primary);font-size:1.15rem;white-space:nowrap}
.aa-summary small{color:var(--aa-muted);display:block;font-size:.74rem;max-width:170px}
.aa-wz-body{padding:22px 20px}
.aa-q{margin:0 0 22px}
.aa-q__label{font-weight:700;color:var(--aa-ink);margin:0 0 12px;font-size:1.05rem}
.aa-opt{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1.5px solid var(--aa-line);border-radius:12px;margin:0 0 9px;cursor:pointer;transition:.12s;color:var(--aa-ink);font-size:1rem;background:var(--aa-card)}
.aa-opt:hover{border-color:var(--aa-primary)}
.aa-opt input{accent-color:var(--aa-primary);width:18px;height:18px;flex:0 0 auto}
.aa-opt.is-on{border-color:var(--aa-primary);background:rgba(194,91,63,.10)}
.aa-note{color:var(--aa-muted);font-size:.85rem;margin:6px 2px 0}
/* Wizard uses the green "service marketplace" accent (armut reference, PDF p03): progress, the
   live price, selected options and the Devam button are green — scoped to .aa-wizard only. */
.aa-wizard .aa-bar__fill{background:var(--aa-ok)}
.aa-wizard .aa-summary b{color:var(--aa-ok)}
.aa-wizard .aa-opt.is-on{border-color:var(--aa-ok);background:rgba(5,150,105,.10)}
.aa-wizard .aa-opt:hover{border-color:var(--aa-ok)}
.aa-wizard .aa-opt input{accent-color:var(--aa-ok)}
.aa-wz-foot .aa-btn--primary{background:var(--aa-ok);box-shadow:0 6px 16px -6px rgba(5,150,105,.5)}
.aa-wz-foot .aa-btn--primary:hover{background:#047857}
.aa-wz-help{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--aa-line);border-radius:999px;padding:5px 12px;font-size:.82rem;font-weight:600;color:var(--aa-ink-2);cursor:pointer;font-family:inherit}
.aa-wz-help:hover{border-color:var(--aa-ok);color:var(--aa-ok)}

/* location */
.aa-loc{position:relative}
.aa-loc input{margin-bottom:6px}
.aa-chip{display:inline-flex;align-items:center;gap:8px;background:#f6ece6;color:var(--aa-primary-d);border:1px solid #e9cfc1;padding:8px 12px;border-radius:999px;font-weight:600;margin-top:6px}

/* footer / buttons */
.aa-wz-foot{display:flex;gap:10px;padding:16px 20px;border-top:1px solid var(--aa-line);background:var(--aa-bg)}
.aa-btn{appearance:none;border:0;border-radius:12px;padding:14px 18px;font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;flex:1;transition:transform .12s,box-shadow .12s,background .12s,border-color .12s;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.aa-btn--primary{background:var(--aa-primary);color:#fff;box-shadow:0 6px 16px -6px rgba(194,91,63,.55)}
.aa-btn--primary:hover{background:var(--aa-primary-d);transform:translateY(-1px);box-shadow:0 10px 22px -8px rgba(194,91,63,.6)}
.aa-btn--primary:active{transform:translateY(0)}
.aa-btn--primary:disabled{background:#e2b3a2;cursor:not-allowed;box-shadow:none;transform:none}
.aa-btn--ghost{background:var(--aa-card);color:var(--aa-ink);border:1.5px solid var(--aa-line);flex:0 0 auto}
.aa-btn--ghost:hover{border-color:var(--aa-primary);color:var(--aa-primary)}
.aa-err{color:#dc2626;font-size:.85rem;margin:4px 2px 0}
.aa-done{padding:40px 24px;text-align:center}
.aa-done__icon{width:64px;height:64px;border-radius:50%;background:#ecfdf5;color:var(--aa-ok);display:flex;align-items:center;justify-content:center;font-size:34px;margin:0 auto 16px}
.aa-done h3{margin:0 0 8px;color:var(--aa-ink)}
.aa-done p{color:var(--aa-muted);margin:0}
/* rev 4 (jul 16): the registered phone on the completion card — stands out so it's easy to find. */
.aa-done .aa-donephone{margin:10px auto 0;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--aa-primary-soft);border:1px solid var(--aa-line);border-radius:999px;color:var(--aa-ink);font-weight:700}

/* ---------- Dashboards (master / customer) ---------- */
.aa-dash { max-width: 720px; margin: 0 auto; padding: 8px 0 40px; }
.aa-dash__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 8px; }
.aa-dash__head h2 { margin: 0; font-size: 1.4rem; }
.aa-dash__sub { margin: 18px 0 10px; font-size: 1.05rem; color: var(--aa-muted); }
.aa-wallet { display: flex; align-items: center; gap: 10px; background: #fff; border:1px solid var(--aa-line); box-shadow:var(--aa-shadow-sm); border-radius: 999px; padding: 6px 8px 6px 18px; font-size: .95rem; }
.aa-wallet b { font-size: 1.15rem; color: var(--aa-primary); }
/* On wide screens cards flow into multiple columns so the dashboard fills the width (like the
   document's full-width tables) instead of one very wide card per row. */
.aa-feed { display: grid; gap: 12px; grid-template-columns: repeat(auto-fill, minmax(330px, 1fr)); }
.aa-lead { background: var(--aa-card); color: var(--aa-ink); border: 1px solid var(--aa-line); border-radius: var(--aa-radius); padding: 18px; box-shadow: var(--aa-shadow-sm); transition: box-shadow .14s, transform .14s; display:flex; flex-direction:column; }
.aa-lead:hover { box-shadow: var(--aa-shadow); }
.aa-lead__top { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; margin-bottom: 6px; }
.aa-lead__cat { font-weight: 700; color: var(--aa-ink); }
.aa-lead__cust { color: var(--aa-ink); }
.aa-lead__est { color: var(--aa-primary); font-weight: 600; font-size: .92rem; white-space: nowrap; }
.aa-lead__loc { color: var(--aa-muted); font-size: .92rem; margin-bottom: 4px; }
.aa-lead__cust { font-size: .95rem; }
.aa-mask { color: var(--aa-muted); letter-spacing: 1px; font-variant-numeric: tabular-nums; }
.aa-revealed { margin-top: 10px; padding: 10px 12px; background: #ecfdf5; border: 1px solid #a7f3d0; border-radius: 10px; font-weight: 600; }
.aa-revealed a { color: #047857; text-decoration: none; }
/* rev 11/12: the customer's own free-text description, revealed after unlock. */
.aa-leaddesc { margin-top: 8px; padding: 10px 12px; background: #f3efe4; border: 1px solid var(--aa-line); border-radius: 10px; color: var(--aa-ink); font-size: .92rem; }
.aa-leaddesc__lbl { font-weight: 700; color: var(--aa-muted); }
.aa-badge { font-size: .78rem; padding: 3px 10px; border-radius: 999px; font-weight: 600; }
.aa-badge--pending { background: #fef9c3; color: #854d0e; }
.aa-badge--live { background: #efdcd2; color: #1e40af; }
.aa-badge--completed { background: #dcfce7; color: #166534; }
.aa-badge--cancelled, .aa-badge--expired { background: #fee2e2; color: #991b1b; }
.aa-err { color: #b91c1c; font-size: .9rem; }

/* ---------- Tabs ---------- */
.aa-tabs { display: flex; gap: 4px; border-bottom: 2px solid var(--aa-border, #e4ddcc); margin: 4px 0 18px; }
.aa-tab { background: none; border: none; padding: 10px 18px; font-size: .98rem; font-weight: 600; color: var(--aa-muted); cursor: pointer; border-bottom: 2px solid transparent; margin-bottom: -2px; }
.aa-tab.is-active { color: var(--aa-primary); border-bottom-color: var(--aa-primary); }
.aa-tabpane[hidden] { display: none; }

/* ---------- Master profile: selectable category chips ---------- */
.aa-hint { color: var(--aa-muted); font-size: .88rem; margin: 0 0 12px; }
.aa-chipgrid { display: flex; flex-wrap: wrap; gap: 8px; }
.aa-selchip { border: 1.5px solid var(--aa-border, #d8cfbb); background: #fff; color: #4e483c; border-radius: 999px; padding: 8px 16px; font-size: .92rem; cursor: pointer; transition: all .12s; }
.aa-selchip:hover { border-color: var(--aa-primary); }
.aa-selchip.is-on { background: var(--aa-primary); border-color: var(--aa-primary); color: #fff; }
.aa-selchip--pos.is-on { background: var(--aa-ok); border-color: var(--aa-ok); }
.aa-selchip--neg.is-on { background: #dc2626; border-color: #dc2626; }
.aa-savemsg { font-weight: 600; font-size: .92rem; }

/* ---------- SOS / emergency ---------- */
.aa-sos { display: flex; align-items: center; gap: 10px; padding: 12px 14px; margin-bottom: 16px; border: 1.5px solid #fecaca; background: #fef2f2; border-radius: 12px; cursor: pointer; font-weight: 600; color: #b91c1c; user-select: none; }
.aa-sos.is-on { background: #fee2e2; border-color: #ef4444; box-shadow: 0 0 0 3px rgba(239,68,68,.12); }
.aa-sos input { width: 18px; height: 18px; accent-color: #ef4444; }
.aa-lead--sos { border-color: #fca5a5; box-shadow: 0 0 0 1px #fca5a5; }
.aa-sosbadge { display: inline-block; background: #ef4444; color: #fff; font-size: .72rem; font-weight: 700; padding: 2px 8px; border-radius: 6px; vertical-align: middle; letter-spacing: .5px; }

/* ---------- Reputation ---------- */
.aa-rep { font-size: 1rem; }
.aa-stars { display: flex; align-items: center; gap: 8px; font-size: 1.05rem; }
.aa-starrow { color: #f59e0b; letter-spacing: 2px; font-size: 1.2rem; }
.aa-repcrit { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.aa-repcrit__item { background: #ede7d8; border-radius: 8px; padding: 4px 10px; font-size: .85rem; color: #5c5648; }

/* ---------- Booking / lifecycle actions ---------- */
.aa-jobactions { margin-top: auto; padding-top: 12px; display: flex; gap: 8px; flex-wrap: wrap; }
.aa-jobactions .aa-btn { width: 100%; }
.aa-lead__sched { margin-top: 6px; font-size: .9rem; color: var(--aa-primary); font-weight: 600; }
.aa-badge--assigned { background: #e0e7ff; color: #8a6a2e; }
.aa-inlinebox { margin-top: 14px; padding: 14px; background: #f3efe4; border: 1px solid var(--aa-border, #e4ddcc); border-radius: 12px; }
.aa-inlinebox .aa-q__label { margin-top: 10px; }
.aa-inlinebox .aa-q__label:first-child { margin-top: 0; }

/* ---------- Rating stars (input) ---------- */
.aa-ratecrit { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 6px 0; }
.aa-ratecrit__label { font-size: .95rem; color: #4e483c; }
.aa-ratestars { display: inline-flex; gap: 2px; }
.aa-ratestar { background: none; border: none; font-size: 1.5rem; line-height: 1; color: #d8cfbb; cursor: pointer; padding: 0 1px; transition: color .1s; }
.aa-ratestar.is-on { color: #f59e0b; }
.aa-ratestar:hover { color: #fbbf24; }

/* ============================================================================
 * Accessibility, dark mode, motion, and loading polish
 * ========================================================================== */

/* Visible keyboard focus on every interactive element (a11y: never rely on hover alone). */
.aa-app a:focus-visible,
.aa-app button:focus-visible,
.aa-app input:focus-visible,
.aa-app [tabindex]:focus-visible,
.aa-selchip:focus-visible,
.aa-tab:focus-visible,
.aa-ratestar:focus-visible {
  outline: 3px solid var(--aa-primary);
  outline-offset: 2px;
  border-radius: 8px;
}
/* Remove the default outline only where we provide a focus-visible ring. */
.aa-app button:focus:not(:focus-visible) { outline: none; }

/* Screen-reader-only utility for labels that should not show visually. */
.aa-sr-only {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

/* Minimum 44x44px touch targets for primary actions (WCAG 2.5.5). */
.aa-btn { min-height: 44px; }
.aa-ratestar { min-width: 36px; min-height: 36px; }

/* Skeleton loading shimmer (replaces bare "Yükleniyor…" where used). */
.aa-skeleton { background: linear-gradient(90deg, #ede7d8 25%, #e4ddcc 37%, #ede7d8 63%); background-size: 400% 100%; animation: aa-shimmer 1.2s ease-in-out infinite; border-radius: 10px; }
.aa-skel-line { height: 14px; margin: 8px 0; }
.aa-skel-card { height: 96px; margin-bottom: 12px; }
@keyframes aa-shimmer { 0% { background-position: 100% 0; } 100% { background-position: 0 0; } }

/* Respect reduced-motion: kill non-essential animation/transition. */
@media (prefers-reduced-motion: reduce) {
  .aa-app *, .aa-hero * { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
  .aa-skeleton { animation: none; }
}

/* Note: the marketplace front-end intentionally renders in a single, designed LIGHT theme
   (color-scheme:light on .aa-app/.aa-hero) to match the client's reference sites (thumbtack,
   armut) and to guarantee correct text contrast on every device. No OS dark-mode auto-flip. */

/* ---------- Chat widget ---------- */
.aa-chat { margin-top:14px; border:1px solid var(--aa-line); border-radius:12px; overflow:hidden; background:var(--aa-card); }
.aa-chat__log { max-height:280px; overflow-y:auto; padding:12px; display:flex; flex-direction:column; gap:8px; background:var(--aa-bg); }
.aa-msg { max-width:78%; padding:8px 12px; border-radius:14px; font-size:.92rem; display:flex; flex-direction:column; gap:2px; }
.aa-msg--me { align-self:flex-end; background:var(--aa-primary); color:#fff; border-bottom-right-radius:4px; }
.aa-msg--them { align-self:flex-start; background:#fff; border:1px solid var(--aa-line); border-bottom-left-radius:4px; }
.aa-msg__time { font-size:.7rem; opacity:.65; }
.aa-chat__row { display:flex; gap:8px; padding:10px; border-top:1px solid var(--aa-line); }
.aa-chat__input { flex:1; padding:10px 14px; font-size:.95rem; }
.aa-chat__send { flex:0 0 auto; }

/* ---------- Booking slot picker ---------- */
.aa-slots { display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.aa-slot { border:1.5px solid var(--aa-line); background:#fff; color:var(--aa-ink); border-radius:8px; padding:8px 14px; font-size:.92rem; cursor:pointer; font-variant-numeric:tabular-nums; }
.aa-slot:hover { border-color:var(--aa-primary); }
.aa-slot.is-on { background:var(--aa-primary); border-color:var(--aa-primary); color:#fff; }

/* ---------- Media uploader ---------- */
.aa-uploader__preview { display:flex; flex-wrap:wrap; gap:8px; margin-top:10px; }
.aa-thumb { width:72px; height:72px; border-radius:10px; overflow:hidden; display:flex; align-items:center; justify-content:center; font-size:1.6rem; background:#ede7d8; border:1px solid var(--aa-line); }
.aa-thumb img { width:100%; height:100%; object-fit:cover; }

/* ---------- Settings rows ---------- */
.aa-setrow { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:8px 0; }
.aa-setrow__label { flex:1 1 160px; font-size:.92rem; color:#4e483c; }
.aa-setrow__input { flex:0 0 110px; padding:8px 12px; }

/* ---------- Help accordion ---------- */
.aa-acc { max-width:720px; margin:24px auto; }
.aa-acc__item { border:1px solid var(--aa-line); border-radius:12px; margin-bottom:10px; overflow:hidden; background:var(--aa-card); }
.aa-acc__q { width:100%; text-align:left; padding:16px 18px; font-weight:600; background:none; border:none; cursor:pointer; font-size:1rem; color:var(--aa-ink); display:flex; justify-content:space-between; }
.aa-acc__a { padding:0 18px; max-height:0; overflow:hidden; transition:max-height .25s, padding .25s; color:var(--aa-muted); }
.aa-acc__item.is-open .aa-acc__a { max-height:300px; padding:0 18px 16px; }
/* rev 48 (jul 16): two audience-grouped FAQ blocks SIDE-BY-SIDE (masters left, customers right);
   they stack on narrow screens. Each group is wrapped in .aa-faqgroup so the grid has 2 column children. */
.aa-faqgroups { display:grid; gap:24px; max-width:980px; margin:24px auto; }
@media(min-width:760px){ .aa-faqgroups{ grid-template-columns:1fr 1fr; align-items:start; } }
.aa-faqgroup__h { margin:0 0 10px; font-size:1.15rem; color:var(--aa-ink); }
.aa-faqgroups .aa-acc { margin:0; max-width:none; }
.aa-cols { display:grid; gap:16px; max-width:960px; margin:24px auto; }
@media(min-width:760px){ .aa-cols{ grid-template-columns:1fr 1fr; } }
/* rev 21 (jul 16): the "Set Unavailability" start/end datetime fields sit as one tidy control group. */
.aa-setrow--dt { display:flex; flex-wrap:wrap; gap:12px; align-items:flex-end; margin:8px 0; }
.aa-dtfield { display:flex; flex-direction:column; gap:4px; flex:1 1 220px; }
.aa-dtfield .aa-input { width:100%; }
/* rev 60 (jul 16): a non-selectable parent-trade header above matched subcategories in the picker. */
.aa-catgrouphd { padding:8px 10px 2px; font-size:.78rem; font-weight:700; letter-spacing:.02em; text-transform:uppercase; color:var(--aa-muted); }
/* rev 32 (jul 16): homepage SOS explanation section (own class, unaffected by .aa-sosentry{display:none}). */
.aa-sosinfo { max-width:960px; margin:36px auto; padding:24px; border:1.5px solid #fecaca; border-radius:var(--aa-radius,16px); background:linear-gradient(135deg,#fff5f5,#fff); }
.aa-sosinfo__title { margin:0 0 6px; color:#b91c1c; font-size:1.25rem; }
.aa-sosinfo__lead { margin:0 0 16px; color:var(--aa-muted); }
.aa-sosinfo__grid { list-style:none; padding:0; margin:0 0 18px; display:grid; gap:10px; grid-template-columns:1fr; }
@media(min-width:560px){ .aa-sosinfo__grid{ grid-template-columns:1fr 1fr; } }
@media(min-width:900px){ .aa-sosinfo__grid{ grid-template-columns:1fr 1fr 1fr; } }
.aa-sosinfo__grid li { background:var(--aa-card,#fff); border:1px solid var(--aa-line,#e4ddcc); border-radius:10px; padding:10px 12px; font-size:.9rem; color:var(--aa-ink); }
.aa-sosinfo__steps { margin:0 0 16px; padding-left:20px; color:var(--aa-ink); display:grid; gap:6px; }
.aa-sosinfo__cta { display:inline-flex; }

/* ---------- Customer reputation in lead card ---------- */
/* rev 43: a non-negative customer's warning is BLUE ("safe to unlock"); only a genuine red alert
   (negative reviews) turns it red. */
.aa-custrep { margin-top:6px; font-size:.85rem; color:#1e40af; background:#f6ece6; border:1px solid #efdcd2; border-radius:8px; padding:5px 10px; }
.aa-custrep--bad { background:#fef2f2; color:#b91c1c; border-color:#fecaca; font-weight:600; }
.aa-mrbadge { display:inline-block; background:#cb6a4d; color:#fff; font-size:.72rem; font-weight:700; padding:2px 8px; border-radius:6px; vertical-align:middle; }
.aa-mr.is-on { background:#efdcd2 !important; border-color:#cb6a4d !important; }

/* ---------- Profile completion + badges + stats ---------- */
.aa-progress { height:10px; background:var(--aa-line); border-radius:999px; overflow:hidden; margin:6px 0; }
.aa-progress__fill { height:100%; background:linear-gradient(90deg,#10b981,#059669); transition:width .4s; }
.aa-badgerow { display:flex; flex-wrap:wrap; gap:8px; margin-top:12px; }
.aa-trustbadge { background:#fffbeb; border:1px solid #fde68a; color:#92400e; border-radius:999px; padding:5px 12px; font-size:.85rem; font-weight:600; }
.aa-statbanner { display:flex; gap:10px; margin-bottom:16px; }
.aa-statcell { flex:1; background:var(--aa-card); border:1px solid var(--aa-line); border-radius:12px; padding:14px 10px; text-align:center; }
.aa-statcell b { display:block; font-size:1.4rem; color:var(--aa-primary); }
.aa-statcell span { font-size:.78rem; color:var(--aa-muted); }

/* ---------- SOS home entry ---------- */
.aa-sosentry { max-width:600px; margin:26px auto 0; background:linear-gradient(135deg,#f8717155,#ef444422),#fff; border:1.5px solid #fecaca; color:var(--aa-ink); border-radius:var(--aa-radius); padding:16px 20px; display:flex; align-items:center; justify-content:space-between; gap:16px; box-shadow:var(--aa-shadow-sm); text-align:left; }
.aa-sosentry h3 { margin:0 0 3px; font-size:1.05rem; color:#b91c1c; display:flex; align-items:center; gap:8px; }
.aa-sosentry p { margin:0; color:var(--aa-ink-2); font-size:.88rem; line-height:1.4; }
.aa-sosentry .aa-btn { background:linear-gradient(135deg,#ef4444,#dc2626); color:#fff; flex:0 0 auto; font-weight:700; box-shadow:0 6px 16px -6px rgba(220,38,38,.6); }
.aa-sosentry .aa-btn:hover { transform:translateY(-1px); }

/* ---------- Sidebar dashboard shell (Listeo / Service Finder reference) ---------- */
/* Full-bleed: dashboards fill the whole viewport (Listeo / Service Finder are full-width), breaking
   out of any centered theme container via the 100vw + negative-margin technique. */
.aa-shell{display:grid;grid-template-columns:1fr;gap:18px;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);box-sizing:border-box;padding:18px clamp(16px,3vw,40px) 56px;color-scheme:light;font-family:var(--aa-font);color:var(--aa-ink)}
.aa-shell *{box-sizing:border-box}
/* base .aa-side (mobile: a normal in-flow block that scrolls with the page; overflow:hidden clips its
   children to the rounded corners). MUST be declared BEFORE the desktop rule below. */
.aa-side{background:var(--aa-card);border:1px solid var(--aa-line);border-radius:var(--aa-radius);box-shadow:var(--aa-shadow-sm);overflow:hidden}
@media(min-width:840px){.aa-shell{grid-template-columns:264px minmax(0,1fr);align-items:start}
  /* rev 64/65: the left menu is a SELF-CONTAINED scroll panel pinned just below the global topbar, so
     every menu item (incl. the bottom BOOKING ones) is reachable by scrolling the sidebar itself —
     independent of the right-hand content length. This is declared AFTER the base .aa-side above so its
     overflow-y:auto WINS over the base overflow:hidden (equal specificity → later source wins). The rev-64
     order had it BEFORE the base rule, so overflow:hidden clipped the menu with no scroll — the bug the
     client saw ("only a few items, no scroll"). */
  .aa-side{position:sticky;top:72px;max-height:calc(100vh - 88px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}}
.aa-side__brand{display:flex;flex-direction:column;gap:2px;font-weight:800;font-size:1.05rem;color:var(--aa-ink);padding:18px 18px 14px;border-bottom:1px solid var(--aa-line)}
.aa-side__brand small{font-weight:600;font-size:.74rem;color:var(--aa-muted);letter-spacing:.04em;text-transform:uppercase}
.aa-side__nav{display:flex;flex-direction:column;padding:8px}
/* Avatar + status badge (green=registered, gray=not) */
.aa-avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--aa-primary-soft);color:var(--aa-primary);overflow:visible;flex:0 0 auto}
.aa-avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.aa-avatar__txt{font-weight:800}
.aa-avatar__svg{width:64%;height:64%;opacity:.55}
.aa-avatar--sm{width:32px;height:32px;font-size:.9rem}
.aa-avatar--md{width:44px;height:44px;font-size:1.1rem}
.aa-avatar--lg{width:84px;height:84px;font-size:2rem}
.aa-avatar__badge{position:absolute;right:-1px;bottom:-1px;width:32%;height:32%;min-width:11px;min-height:11px;border-radius:50%;background:#a89f88;border:2.5px solid #fff;box-shadow:0 0 0 .5px rgba(0,0,0,.06)}
.aa-avatar__badge.is-on{background:#10b981}
.aa-side__brand--user{display:flex;align-items:center;gap:12px}
.aa-side__who{display:flex;flex-direction:column;min-width:0}
.aa-side__who b{font-size:.98rem;color:var(--aa-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aa-side__who small{font-weight:600;font-size:.72rem;color:var(--aa-muted);letter-spacing:.04em;text-transform:uppercase}
.aa-photorow{display:flex;align-items:center;gap:16px;margin:6px 0 18px}
.aa-photobtns{display:flex;flex-direction:column;gap:6px}
/* Messages conversation list */
.aa-convrow{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:left;background:none;border:0;border-radius:10px;padding:12px 14px;cursor:pointer;font-family:inherit;border-bottom:1px solid var(--aa-line)}
.aa-convrow:hover,.aa-convrow.is-open{background:var(--aa-primary-soft)}
.aa-convitem:last-child .aa-convrow{border-bottom:0}
.aa-convrow__main{display:flex;flex-direction:column;gap:2px;min-width:0}
.aa-convrow__main b{color:var(--aa-ink);font-size:.98rem}
.aa-convrow__main small{color:var(--aa-muted);font-size:.76rem}
.aa-convrow__last{color:var(--aa-ink-2);font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:340px}
.aa-convrow__time{color:var(--aa-muted);font-size:.74rem;white-space:nowrap;flex:0 0 auto}
.aa-reviewrow{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--aa-line)}
.aa-reviewrow:last-child{border-bottom:0}
.aa-reviewrow small{display:block}
.aa-reviewrow__badges{flex:0 0 auto}
/* Multi-tab Edit Profile (Service Finder reference) */
.aa-edittabs{display:flex;gap:4px;overflow-x:auto;border-bottom:2px solid var(--aa-line);margin-bottom:18px;padding-bottom:0}
.aa-edittab{flex:0 0 auto;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-2px;padding:10px 14px;font-size:.92rem;font-weight:600;font-family:inherit;color:var(--aa-muted);cursor:pointer;white-space:nowrap}
.aa-edittab:hover{color:var(--aa-ink)}
.aa-edittab.is-on{color:var(--aa-primary);border-bottom-color:var(--aa-primary)}
.aa-editbody textarea.aa-input{resize:vertical;min-height:80px}
/* Profile media gallery (Category tab): photo/video cards */
.aa-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;margin:10px 0}
.aa-gcard{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;border:1px solid var(--aa-line);background:#000;box-shadow:var(--aa-shadow-sm)}
.aa-gcard img,.aa-gcard video{width:100%;height:100%;object-fit:cover;display:block;background:#000}
.aa-gcard__del{position:absolute;top:6px;right:6px;width:24px;height:24px;border:0;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;font-size:.8rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.aa-gcard__del:hover{background:#dc2626}
/* Month calendar (Bookings Calendar View) */
.aa-viewswitch{display:flex;gap:8px;margin-bottom:14px}
.aa-cal__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.aa-cal__head b{font-size:1.1rem;color:var(--aa-ink)}
.aa-cal__head .aa-btn{flex:0 0 auto;padding:6px 14px;min-height:auto}
.aa-cal__legend{display:flex;flex-wrap:wrap;gap:12px;font-size:.78rem;color:var(--aa-muted);margin-bottom:10px}
.aa-cal__legend span{display:inline-flex;align-items:center;gap:5px}
.aa-caldot{width:10px;height:10px;border-radius:50%;display:inline-block}
.aa-caldot--pending{background:#f59e0b}.aa-caldot--live{background:var(--aa-primary)}.aa-caldot--assigned{background:#6366f1}.aa-caldot--completed{background:#10b981}.aa-caldot--cancelled,.aa-caldot--expired{background:#ef4444}
.aa-cal__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.aa-cal__wd{text-align:center;font-size:.72rem;font-weight:700;color:var(--aa-muted);padding:4px 0}
.aa-cal__cell{min-height:74px;border:1px solid var(--aa-line);border-radius:8px;padding:4px;font-size:.78rem;overflow:hidden}
.aa-cal__cell--blank{border-color:transparent}
.aa-cal__num{display:inline-block;width:22px;height:22px;line-height:22px;text-align:center;border-radius:50%;color:var(--aa-ink-2);font-weight:600}
.aa-cal__num.is-today{background:var(--aa-primary);color:#fff}
.aa-cal__ev{margin-top:2px;padding:1px 5px;border-radius:5px;font-size:.68rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aa-cal__ev--pending{background:#f59e0b}.aa-cal__ev--live{background:var(--aa-primary)}.aa-cal__ev--assigned{background:#6366f1}.aa-cal__ev--completed{background:#10b981}.aa-cal__ev--cancelled,.aa-cal__ev--expired{background:#ef4444}
.aa-cal__more{font-size:.66rem;color:var(--aa-muted);margin-top:2px}
.aa-slbtn{flex:0 0 auto;background:none;border:0;font-size:1.05rem;cursor:pointer;opacity:.45;filter:grayscale(1);transition:.12s;padding:0 2px}
.aa-slbtn:hover{opacity:.9;filter:none}
.aa-slbtn.is-on{opacity:1;filter:none}
.aa-notifrow{display:flex;align-items:center;gap:12px;padding:11px 12px;border-bottom:1px solid var(--aa-line)}
.aa-notifrow:last-child{border-bottom:0}
.aa-notifrow__ic{font-size:1.1rem;flex:0 0 auto}
.aa-notifrow b{display:block;color:var(--aa-ink);font-size:.95rem}
.aa-notifrow small{color:var(--aa-muted);font-size:.76rem}
.aa-quoterow{display:flex;gap:8px;align-items:center;margin-top:8px}
.aa-quoterow .aa-input{flex:1;padding:8px 12px;margin:0}
select.aa-input{appearance:auto;cursor:pointer}
.aa-listthumbs{display:flex;gap:6px;margin-top:8px}
.aa-listthumb{width:54px;height:54px;border-radius:8px;object-fit:cover;display:inline-flex;align-items:center;justify-content:center;background:var(--aa-bg);border:1px solid var(--aa-line);font-size:1.3rem}
/* Public browse */
#aa-browse{display:block;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);box-sizing:border-box;padding:30px max(24px,4vw) 60px;font-family:var(--aa-font);color:var(--aa-ink)}
#aa-browse *{box-sizing:border-box}
.aa-browsehead{margin-bottom:18px}
.aa-browsetitle{font-size:2rem;font-weight:800;color:var(--aa-ink);margin:0}
.aa-browsesub{color:var(--aa-muted);margin:6px 0 0}
.aa-searchbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}
.aa-searchbar .aa-input{flex:1;min-width:170px;margin:0}
.aa-searchbar .aa-btn{flex:0 0 auto}
.aa-browsegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}
.aa-lcard{border:1px solid var(--aa-line);border-radius:14px;overflow:hidden;background:#fff;cursor:pointer;transition:.15s;display:flex;flex-direction:column}
.aa-lcard:hover{box-shadow:0 10px 28px rgba(2,32,71,.12);transform:translateY(-3px)}
.aa-lcard__cover{height:150px;background-size:cover;background-position:center;background-color:var(--aa-bg)}
.aa-lcard__cover--ph{display:flex;align-items:center;justify-content:center;font-size:2.6rem;font-weight:800;color:#d8cfbb;background:linear-gradient(135deg,#f6ece6,#f3efe4)}
.aa-lcard__body{padding:14px 16px;display:flex;flex-direction:column;gap:6px;flex:1}
.aa-lcard__cat{font-size:.78rem;color:var(--aa-muted)}
.aa-lcard__title{font-size:1.05rem;font-weight:700;color:var(--aa-ink);margin:0;line-height:1.3}
.aa-lcard__master{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px;font-size:.85rem}
.aa-lcard__who{display:inline-flex;align-items:center;gap:7px;color:var(--aa-ink-2)}
.aa-lcard__who img,.aa-lcard__ph{width:24px;height:24px;border-radius:50%;object-fit:cover}
.aa-lcard__ph{background:var(--aa-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}
.aa-lcard__rate{color:#d97706;font-weight:600;white-space:nowrap}
.aa-lcard__foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:8px;border-top:1px solid var(--aa-line)}
.aa-lcard__foot b{color:var(--aa-ink)}
.aa-lcard__view{color:var(--aa-primary);font-weight:700;font-size:.85rem}
.aa-detail{display:grid;grid-template-columns:1fr 360px;gap:26px;margin-top:18px}
.aa-detail__main{min-width:0}
.aa-detgal{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}
.aa-detgal img,.aa-detgal video{width:100%;height:200px;object-fit:cover;border-radius:12px;background:#000}
.aa-detgal--ph{height:240px;display:flex;align-items:center;justify-content:center;font-size:4rem;font-weight:800;color:#d8cfbb;background:linear-gradient(135deg,#f6ece6,#f3efe4);border-radius:12px}
.aa-detcat{color:var(--aa-muted);margin-top:16px;font-size:.9rem}
.aa-dettitle{font-size:1.7rem;font-weight:800;color:var(--aa-ink);margin:4px 0 10px}
.aa-detdesc{color:var(--aa-ink-2);line-height:1.6;white-space:pre-wrap}
.aa-detail__side{position:sticky;top:20px;align-self:start}
.aa-detmaster{display:flex;align-items:center;gap:12px}
.aa-detmaster__av{width:54px;height:54px;border-radius:50%;object-fit:cover}
.aa-detmaster__av--ph{background:var(--aa-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:1.4rem;font-weight:700}
.aa-detmaster__rate{color:#d97706;font-size:.85rem;font-weight:600;margin-top:2px}
.aa-detprice{margin-top:12px;font-size:1.2rem;font-weight:800;color:var(--aa-ink)}
.aa-bookok{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857;border-radius:10px;padding:14px;text-align:center;line-height:1.5}
@media(max-width:820px){.aa-detail{grid-template-columns:1fr}.aa-detail__side{position:static}}
/* Booking Settings — sections + radio groups */
.aa-setsec{font-size:1rem;font-weight:800;color:var(--aa-primary);margin:0 0 14px;padding-bottom:8px;border-bottom:1px solid var(--aa-line)}
.aa-radiogrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}
.aa-radio{display:flex;align-items:center;gap:9px;border:1px solid var(--aa-line);border-radius:30px;padding:11px 16px;cursor:pointer;transition:.12s}
.aa-radio:hover{border-color:var(--aa-primary)}
.aa-radio.is-on{border-color:var(--aa-primary);background:#f5f8ff}
.aa-radio span{font-weight:600;color:var(--aa-ink)}
.aa-radio input{accent-color:var(--aa-primary)}
/* Provider profile banner */
.aa-provbanner{display:flex;align-items:center;gap:20px;margin:18px 0 8px;padding:26px;border-radius:16px;background:linear-gradient(120deg,#1e3a8a,#c25b3f);color:#fff}
.aa-provbanner__av{width:96px;height:96px;border-radius:50%;object-fit:cover;border:4px solid rgba(255,255,255,.5);flex:0 0 auto}
.aa-provbanner__av--ph{width:96px;height:96px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.2);font-size:2.4rem;font-weight:800;border:4px solid rgba(255,255,255,.5);flex:0 0 auto}
.aa-provbanner__info h1{margin:0;font-size:1.6rem;font-weight:800}
.aa-provbanner__meta{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px;font-size:.92rem;opacity:.95}
.aa-provbanner__cat{background:rgba(255,255,255,.18);padding:2px 12px;border-radius:14px}
.aa-provbanner__rate{color:#fde68a;font-weight:700}
.aa-provsocial{display:flex;gap:8px;margin-top:12px}
.aa-provsocial span{width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.18);display:inline-flex;align-items:center;justify-content:center;font-weight:700;cursor:default}
@media(max-width:600px){.aa-provbanner{flex-direction:column;text-align:center}.aa-provbanner__meta,.aa-provsocial{justify-content:center}}
/* Home link (all panels) */
.aa-side__home{display:flex;align-items:center;gap:8px;margin:0 12px 8px;padding:9px 12px;border-radius:9px;font-weight:700;font-size:.9rem;color:var(--aa-ink-2);background:var(--aa-bg);border:1px solid var(--aa-line);text-decoration:none;transition:.12s}
.aa-side__home:hover{background:var(--aa-primary);color:#fff;border-color:var(--aa-primary)}
/* Master Wallet — earnings + payout */
.aa-feechip{background:#f6ece6;color:#c25b3f;border:1px solid #e9cfc1;border-radius:20px;padding:3px 12px;font-size:.78rem;font-weight:700}
.aa-earnlist{display:flex;flex-direction:column}
.aa-earnrow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--aa-line)}
.aa-earnrow:last-child{border-bottom:0}
.aa-earnrow b{color:var(--aa-ink);display:block}
.aa-earnrow small{color:var(--aa-muted);font-size:.76rem}
.aa-earnnet{color:#16a34a;font-weight:700;white-space:nowrap}
.aa-payopt{display:block;border:1px solid var(--aa-line);border-radius:10px;padding:13px 14px;margin-bottom:10px;cursor:pointer}
.aa-payopt.is-on{border-color:var(--aa-primary);background:#f5f8ff}
.aa-payopt>input{margin-right:8px}
.aa-payopt>span{font-weight:700;color:var(--aa-ink)}
.aa-payfield{margin-top:10px}
/* Messages — two-pane */
.aa-msgshell{display:grid;grid-template-columns:320px 1fr;gap:0;border:1px solid var(--aa-line);border-radius:14px;overflow:hidden;background:#fff;min-height:540px}
.aa-msglist{border-right:1px solid var(--aa-line);overflow-y:auto;max-height:640px}
.aa-msgrow{display:flex;align-items:center;gap:11px;width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--aa-line);padding:13px 14px;cursor:pointer}
.aa-msgrow:hover{background:var(--aa-bg)}
.aa-msgrow.is-active{background:#f6ece6}
.aa-msgrow__av{width:40px;height:40px;border-radius:50%;background:var(--aa-primary);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;flex:0 0 auto}
.aa-msgrow__main{flex:1;min-width:0}
.aa-msgrow__main b{display:block;color:var(--aa-ink);font-size:.92rem}
.aa-msgrow__main small{color:var(--aa-muted);font-size:.76rem;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aa-msgrow__time{color:var(--aa-muted);font-size:.72rem;white-space:nowrap;align-self:flex-start;margin-top:3px}
.aa-msgthread{display:flex;flex-direction:column;min-height:540px;max-height:680px}
.aa-msgthread__empty{margin:auto;color:var(--aa-muted);padding:40px;text-align:center}
.aa-msgthread__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-bottom:1px solid var(--aa-line)}
.aa-msgthread__head b{color:var(--aa-ink)}
.aa-msgtag{color:var(--aa-muted);font-size:.78rem;border:1px solid var(--aa-line);border-radius:14px;padding:2px 9px;margin-left:6px}
.aa-msgthread__hide{background:none;border:0;color:var(--aa-primary);font-weight:600;cursor:pointer;font-size:.85rem}
.aa-msgthread__log{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:14px;background:var(--aa-bg)}
.aa-bub{display:flex;gap:9px;max-width:78%}
.aa-bub--me{align-self:flex-start}                              /* my messages on the LEFT */
.aa-bub--them{align-self:flex-end;flex-direction:row-reverse}   /* the other party on the RIGHT */
.aa-bub__av{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:0 0 auto}
.aa-bub__av--ph{background:#a89f88;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:.82rem}
.aa-bub--me .aa-bub__av--ph{background:var(--aa-primary)}
.aa-bub__wrap{display:flex;flex-direction:column;gap:3px}
.aa-bub__text{background:#fff;border:1px solid var(--aa-line);border-radius:12px;padding:9px 13px;color:var(--aa-ink);line-height:1.45;white-space:pre-wrap;word-break:break-word}
.aa-bub--me .aa-bub__text{background:#f6ece6;border-color:#cdddff}
.aa-bub__text a{color:var(--aa-primary)}
.aa-bub__time{font-size:.7rem;color:var(--aa-muted)}
.aa-bub--them .aa-bub__time{text-align:right}
/* Image/video sent in chat → clickable card */
.aa-chatmedia{position:relative;width:200px;max-width:60vw;border-radius:12px;overflow:hidden;cursor:zoom-in;border:1px solid var(--aa-line);background:#000}
.aa-chatmedia img,.aa-chatmedia video{display:block;width:100%;max-height:240px;object-fit:cover}
.aa-chatmedia .aa-gcard__play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.6)}
.aa-msgthread__composer{border-top:1px solid var(--aa-line);padding:14px 18px}
.aa-msgthread__input{width:100%;resize:vertical;margin:0 0 10px}
.aa-msgthread__actions{display:flex;align-items:center;justify-content:space-between;gap:10px}
.aa-attachbtn{background:none;border:0;color:var(--aa-ink-2);font-weight:600;cursor:pointer;font-size:.88rem}
.aa-attachbtn:hover{color:var(--aa-primary)}
@media(max-width:760px){.aa-msgshell{grid-template-columns:1fr}.aa-msglist{max-height:240px}}
/* Customer Dashboard (booking-platform style) */
.aa-dashhead{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.aa-crumb{color:var(--aa-muted);font-size:.85rem}
.aa-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}
.aa-kpi{border:1px solid var(--aa-line);border-radius:14px;padding:20px 18px;display:flex;align-items:center;justify-content:space-between;background:#fff}
.aa-kpi__label{display:block;color:var(--aa-ink-2);font-size:.92rem;font-weight:600}
.aa-kpi__num{display:block;font-size:1.85rem;line-height:1.1;margin-top:6px;color:var(--aa-ink)}
.aa-kpi__ic{font-size:2rem;opacity:.9}
.aa-kpi--green{background:#f0fdf4;border-color:#bbf7d0}.aa-kpi--green .aa-kpi__num{color:#16a34a}
.aa-kpi--blue{background:#f6ece6;border-color:#e9cfc1}.aa-kpi--blue .aa-kpi__num{color:#c25b3f}
.aa-kpi--yellow{background:#fffbeb;border-color:#fde68a}.aa-kpi--yellow .aa-kpi__num{color:#d97706}
.aa-kpi--red{background:#fef2f2;border-color:#fecaca}.aa-kpi--red .aa-kpi__num{color:#dc2626}
.aa-dashrow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.aa-dashpanel{padding:18px}
.aa-panelhead{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.aa-pill--sm{padding:4px 12px;font-size:.78rem}
.aa-actrow{display:flex;gap:11px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--aa-line)}
.aa-actrow:last-child{border-bottom:0}
.aa-actrow__ic{font-size:1.05rem;flex:0 0 auto;margin-top:1px}
.aa-actrow span{color:var(--aa-ink);font-size:.9rem;display:block}
.aa-actrow small{color:var(--aa-muted);font-size:.76rem}
.aa-sumrow{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--aa-line)}
.aa-sumrow:last-child{border-bottom:0}
.aa-sumrow span{color:var(--aa-ink-2)}
.aa-sumrow b{color:var(--aa-ink);font-size:1.05rem}
.aa-vchart{display:flex;align-items:flex-end;gap:10px;height:170px;padding:8px 4px 0}
.aa-vbarcol{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;height:100%}
.aa-vbarwrap{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center}
.aa-vbar{width:60%;max-width:42px;background:linear-gradient(180deg,#60a5fa,#c25b3f);border-radius:6px 6px 0 0;min-height:3px;transition:height .2s}
.aa-vbarcol small{color:var(--aa-muted);font-size:.72rem}
.aa-vchart__legend{margin-top:10px;font-size:.8rem;color:var(--aa-muted)}
.aa-leg{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin-right:4px}
.aa-leg--v{background:#c25b3f}
@media(max-width:900px){.aa-kpis{grid-template-columns:repeat(2,1fr)}.aa-dashrow{grid-template-columns:1fr}}
.aa-side__head{font-size:.68rem;font-weight:800;letter-spacing:.08em;color:var(--aa-muted);padding:12px 14px 4px;text-transform:uppercase}
.aa-pagetitle{font-size:1.3rem;font-weight:800;margin:0 0 16px;color:var(--aa-ink)}
.aa-table{width:100%;border-collapse:collapse;font-size:.9rem}
.aa-table th{text-align:left;padding:10px 12px;border-bottom:2px solid var(--aa-line);color:var(--aa-ink-2);font-weight:700;white-space:nowrap}
.aa-table td{padding:10px 12px;border-bottom:1px solid var(--aa-line);color:var(--aa-ink)}
.aa-table tr:hover td{background:var(--aa-primary-soft)}
.aa-side__item{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:none;border:0;border-radius:10px;padding:11px 14px;font-size:.96rem;font-weight:600;font-family:inherit;color:var(--aa-ink-2);cursor:pointer;transition:.12s}
.aa-side__item:hover{background:var(--aa-primary-soft);color:var(--aa-primary)}
.aa-side__item.is-active{background:var(--aa-primary);color:#fff}
.aa-side__ico{font-size:1.1rem;width:22px;text-align:center;flex:0 0 auto}
.aa-switchwrap{padding:10px;border-top:1px solid var(--aa-line);display:flex;flex-direction:column;gap:6px}
.aa-switch{display:flex;align-items:center;gap:8px;text-decoration:none;font-size:.88rem;font-weight:600;color:var(--aa-ink-2);padding:9px 12px;border-radius:10px;border:1px solid var(--aa-line);transition:.12s}
.aa-switch:hover{border-color:var(--aa-primary);color:var(--aa-primary)}
.aa-switch--cta{background:var(--aa-accent-soft);border-color:#a7f3d0;color:var(--aa-ok)}
.aa-switch--cta:hover{background:var(--aa-ok);color:#fff;border-color:var(--aa-ok)}
.aa-main{min-width:0}
.aa-main__bar{display:flex;justify-content:flex-end;margin-bottom:14px}
/* On narrow screens the sidebar becomes a horizontal scroll strip above the content. */
@media(max-width:839px){
  .aa-side{position:static}
  .aa-side__brand{display:none}
  .aa-side__nav{flex-direction:row;overflow-x:auto;gap:6px}
  .aa-side__item{flex:0 0 auto;border:1px solid var(--aa-line)}
  .aa-side__item .aa-side__ico{display:none}
}

/* ---------- Weekly availability grid (Service Finder reference, PDF p17) ---------- */
.aa-availgrid__scroll{overflow-x:auto;margin-top:10px;border:1px solid var(--aa-line);border-radius:12px}
.aa-availgrid{border-collapse:collapse;width:100%;min-width:520px;font-size:.82rem}
.aa-availgrid th{background:var(--aa-bg);color:var(--aa-ink-2);font-weight:700;padding:9px 6px;text-align:center;border-bottom:1px solid var(--aa-line);position:sticky;top:0}
.aa-availgrid__time{color:var(--aa-muted);font-variant-numeric:tabular-nums;text-align:right!important;padding-right:12px!important;white-space:nowrap;background:var(--aa-card)}
.aa-availgrid td{border-bottom:1px solid #ede7d8;border-left:1px solid #ede7d8;height:26px}
.aa-availgrid__cell.is-open{background:rgba(16,185,129,.22)}
.aa-availgrid__cell.is-open:hover{background:rgba(16,185,129,.42)}
.aa-availgrid__cell.is-closed{background:repeating-linear-gradient(45deg,#f3efe4,#f3efe4 5px,#ede7d8 5px,#ede7d8 10px)}
.aa-availgrid__cell.is-blocked{background:rgba(239,68,68,.20)}
.aa-availgrid__cell.is-blocked:hover{background:rgba(239,68,68,.34)}
.aa-availgrid__cell.is-past{background:#ede7d8;opacity:.55}
.aa-availgrid th.is-today{color:var(--aa-primary)}
.aa-availgrid th.is-today small{color:var(--aa-primary)}
/* Availability week header + nav */
.aa-availhead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.aa-availnav{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.aa-availrange{font-weight:700;color:var(--aa-ink-2);margin-left:6px;font-variant-numeric:tabular-nums}
.aa-availnav .aa-btn{padding:5px 12px;font-size:.85rem}
/* Business Hours editor rows */
.aa-bhrow{display:flex;align-items:center;gap:14px;padding:11px 4px;border-bottom:1px solid var(--aa-line);flex-wrap:wrap}
.aa-bhrow.is-off{opacity:.6}
.aa-bhrow__day{font-weight:700;min-width:96px;color:var(--aa-ink)}
.aa-bhrow__times{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.aa-bhrow__lbl{font-size:.82rem;color:var(--aa-muted)}
.aa-bh__time{width:auto;min-width:88px;padding:7px 10px}
.aa-toggle{border:1.5px solid var(--aa-border,#d8cfbb);background:#fff;color:#857c68;border-radius:999px;padding:5px 18px;font-weight:700;font-size:.85rem;cursor:pointer;min-width:56px}
.aa-toggle.is-on{background:var(--aa-primary);border-color:var(--aa-primary);color:#fff}
/* Regions picker + chips */
.aa-regionpick{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:10px 0}
.aa-regionpick .aa-input{width:auto;min-width:170px}
.aa-regionchips{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.aa-areachip{display:inline-flex;align-items:center;gap:8px;background:var(--aa-accent-soft,#f6ece6);color:#8a6a2e;border:1px solid #c7d2fe;border-radius:999px;padding:6px 8px 6px 12px;font-size:.88rem;font-weight:600}
.aa-areachip__x{border:0;background:#c7d2fe;color:#8a6a2e;border-radius:50%;width:20px;height:20px;line-height:18px;cursor:pointer;font-size:.95rem;padding:0}
.aa-areachip__x:hover{background:#a5b4fc}
/* Admin checkbox row (e.g. approve master for Browse) */
.aa-checkrow{display:flex;align-items:center;gap:8px;margin:8px 0;cursor:pointer;font-weight:600;color:var(--aa-ink)}
.aa-checkrow input{width:18px;height:18px;cursor:pointer}
/* Real-time toast notifications (top-right, auto-dismiss ~3s) */
.aa-toasts{position:fixed;top:18px;right:18px;z-index:99999;display:flex;flex-direction:column;gap:10px;pointer-events:none;max-width:340px}
.aa-toast{background:#2a2620;color:#fff;padding:12px 16px;border-radius:12px;box-shadow:0 10px 30px rgba(2,6,23,.28);font-size:.92rem;font-weight:600;line-height:1.35;opacity:0;transform:translateX(24px);transition:opacity .3s ease,transform .3s ease}
.aa-toast.is-show{opacity:1;transform:translateX(0)}

/* ---------- Operator panel ([anahtarapp_admin]) ---------- */
.aa-adminwrap{color-scheme:light;font-family:var(--aa-font);width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);box-sizing:border-box;padding:18px clamp(16px,3vw,40px) 56px;color:var(--aa-ink)}
.aa-adminwrap *{box-sizing:border-box}
.aa-admincards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
@media(min-width:600px){.aa-admincards{grid-template-columns:repeat(4,1fr)}}
.aa-admincard{background:var(--aa-card);border:1px solid var(--aa-line);border-radius:var(--aa-radius);box-shadow:var(--aa-shadow-sm);padding:18px 14px;text-align:center}
.aa-admincard b{display:block;font-size:1.9rem;font-weight:800;color:var(--aa-ink);line-height:1.1}
.aa-admincard span{font-size:.82rem;color:var(--aa-muted)}
.aa-admincard--warn b{color:#b45309}
.aa-admincard--ok b{color:var(--aa-ok)}
.aa-admincard--bad b{color:#b91c1c}
.aa-subfilter{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 16px}
.aa-pill{border:1.5px solid var(--aa-line);background:var(--aa-card);color:var(--aa-ink-2);border-radius:999px;padding:7px 15px;font-size:.9rem;font-weight:600;font-family:inherit;cursor:pointer;transition:.12s}
.aa-pill:hover{border-color:var(--aa-primary)}
.aa-pill.is-on{background:var(--aa-primary);border-color:var(--aa-primary);color:#fff}

/* ---------- Unread badge ---------- */
.aa-unread { display:inline-block; min-width:18px; height:18px; line-height:18px; text-align:center; background:#ef4444; color:#fff; border-radius:999px; font-size:.72rem; font-weight:700; padding:0 5px; margin-left:6px; }

/* ============================================================================
   MODERN REFRESH 2026 — a sophisticated presentation layer (CSS only; no markup
   or logic changes). References the same design language as the brief's examples
   (Thumbtack / Listeo / Service Finder): airy whitespace, soft layered shadows,
   gradient accents and gentle micro-interactions — using original assets only.
   ============================================================================ */
:root{--aa-ease:cubic-bezier(.2,.7,.3,1)}
body{background:var(--aa-bg)}
.aa-app,.aa-hero,.aa-shell,.aa-adminwrap,#aa-browse{ -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility }

/* Topbar chrome */
.aa-topbar__logo{letter-spacing:-.02em}
.aa-topbar__link{font-size:.93rem;font-weight:600;transition:color .15s}
.aa-topbar__user{box-shadow:var(--aa-shadow-sm)}

/* Buttons — gradient depth + smoother lift */
.aa-btn{border-radius:14px;letter-spacing:-.01em;transition:transform .16s var(--aa-ease),box-shadow .2s,filter .18s,background .18s,border-color .15s}
.aa-btn--primary{background:var(--aa-primary-grad);box-shadow:0 10px 22px -10px rgba(194,91,63,.6),inset 0 1px 0 rgba(255,255,255,.2)}
.aa-btn--primary:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:0 18px 34px -12px rgba(194,91,63,.55),inset 0 1px 0 rgba(255,255,255,.24)}
.aa-btn--primary:active{transform:translateY(0);filter:brightness(.98)}
.aa-btn--ghost{background:#fff;border:1.5px solid var(--aa-line);box-shadow:var(--aa-shadow-sm)}
.aa-btn--ghost:hover{transform:translateY(-1px);box-shadow:var(--aa-shadow);border-color:#e2c7b6;color:var(--aa-primary)}

/* Surfaces — soft depth + hover lift */
.aa-card{border-radius:var(--aa-radius);box-shadow:var(--aa-shadow)}
.aa-value,.aa-cat,.aa-lead,.aa-lcard,.aa-kpi{transition:transform .2s var(--aa-ease),box-shadow .22s,border-color .2s}
.aa-value{border-radius:var(--aa-radius);box-shadow:var(--aa-shadow-sm)}
.aa-value:hover,.aa-lead:hover{transform:translateY(-3px);box-shadow:var(--aa-shadow)}

/* Hero — layered gradient mesh, larger display type, glass eyebrow */
.aa-hero{position:relative;overflow:hidden;padding:74px 16px 80px;background:
  radial-gradient(760px 340px at 16% -12%,rgba(99,102,241,.16),transparent 62%),
  radial-gradient(720px 340px at 90% -4%,rgba(14,165,233,.13),transparent 62%),
  linear-gradient(180deg,#ffffff 0%,var(--aa-bg) 100%)}
.aa-hero::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(rgba(194,91,63,.06) 1px,transparent 1px);background-size:22px 22px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 75%);mask-image:linear-gradient(180deg,#000,transparent 75%)}
.aa-hero__inner{position:relative;z-index:1}
.aa-hero__title{font-size:2.45rem;line-height:1.08;letter-spacing:-.038em;font-weight:800}
@media(min-width:640px){.aa-hero__title{font-size:3.3rem}}
.aa-hero__eyebrow{background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 6px 18px -6px rgba(15,23,42,.14)}
.aa-hero__subtitle{font-size:1.12rem}

/* Inputs — premium focus glow */
.aa-input{border-radius:14px;transition:border-color .15s,box-shadow .15s,background .15s}
.aa-input:focus{border-color:var(--aa-primary);box-shadow:var(--aa-ring),var(--aa-shadow-sm)}

/* Category tiles — gradient icon chip, deeper lift */
.aa-cat{border-radius:16px}
.aa-cat:hover{transform:translateY(-4px);box-shadow:var(--aa-shadow);border-color:#e2c7b6}
.aa-cat__icon{background:linear-gradient(135deg,#f6ece6,#ecdccf);box-shadow:inset 0 0 0 1px rgba(194,91,63,.08);border-radius:15px}

/* Section headings + how-it-works */
.aa-section__title{font-size:2.2rem;letter-spacing:-.03em}
.aa-how__num{background:var(--aa-primary-grad);box-shadow:0 14px 28px -8px rgba(194,91,63,.55)}

/* Browse listing cards — premium */
.aa-browsetitle{letter-spacing:-.03em}
.aa-lcard{border-radius:var(--aa-radius);box-shadow:var(--aa-shadow-sm)}
.aa-lcard:hover{transform:translateY(-5px);box-shadow:var(--aa-shadow);border-color:#d3def3}
.aa-lcard__cover{position:relative;height:160px}
.aa-lcard__cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(11,18,32,.14))}
.aa-lcard__title{letter-spacing:-.01em}

/* Panel sidebar — modern rail + gradient active pill */
.aa-side{border-radius:var(--aa-radius);box-shadow:var(--aa-shadow-sm)}
.aa-side__item{border-radius:12px;transition:background .15s,color .15s,box-shadow .15s,transform .12s}
.aa-side__item.is-active{background:var(--aa-primary-grad);color:#fff;box-shadow:0 10px 22px -10px rgba(194,91,63,.6)}
.aa-side__item:not(.is-active):hover{transform:translateX(2px)}

/* Tabs / pills / auth tabs */
.aa-pill{border-radius:999px;transition:.15s var(--aa-ease)}
.aa-pill.is-on{background:var(--aa-primary-grad);border-color:transparent;box-shadow:0 8px 18px -8px rgba(194,91,63,.5)}
.aa-authtab.is-on{box-shadow:0 4px 12px -3px rgba(15,23,42,.16)}
.aa-edittab.is-on,.aa-tab.is-active{border-bottom-width:2.5px}

/* KPI cards + dashboard polish */
.aa-kpi{border-radius:16px;box-shadow:var(--aa-shadow-sm)}
.aa-kpi:hover{transform:translateY(-2px);box-shadow:var(--aa-shadow)}
.aa-wallet{box-shadow:var(--aa-shadow-sm)}

/* Provider profile banner — richer gradient + subtle sheen */
.aa-provbanner{background:
  radial-gradient(420px 200px at 88% -30%,rgba(255,255,255,.22),transparent 60%),
  linear-gradient(120deg,#172e7a 0%,#1e40af 45%,#c25b3f 100%);
  box-shadow:0 24px 48px -22px rgba(30,64,175,.6);border-radius:var(--aa-radius)}

/* Modal — deeper, softer */
.aa-modal__box{border-radius:var(--aa-radius);box-shadow:var(--aa-shadow-lg)}

/* Chat bubbles — slightly rounder + softer */
.aa-bub__text{border-radius:14px}
.aa-bub--me .aa-bub__text{background:linear-gradient(135deg,#f6ece6,#e3edff);border-color:#cdddff}

/* Wizard header gradient + chip refinement */
.aa-chip{border-radius:999px}
.aa-feechip{border-radius:999px}

/* Respect reduced-motion */
@media(prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}

/* ============================================================================
   PHOTO-GALLERY CATEGORY GRID + BIG HERO AD (presentation only — no JS/PHP).
   The "scenes" below are ORIGINAL CSS gradients (no third-party photos used).
   To show REAL service photos (people painting / moving / cleaning) behind a
   tile, replace the gradient on the matching `.aa-cat:nth-child(...)` with a
   LICENSED image, e.g.  background-image:url(/wp-content/uploads/painting.jpg);
   (your own photo, or a royalty-free/commercial-licensed one). The scraped
   Thumbtack assets in img_src are intentionally NOT used (copyright/trademark).
   ============================================================================ */

/* ---- Big hero "advertisement" band: bolder, branded, full-bleed feel ---- */
.aa-hero{padding:84px 16px 90px;background:
  radial-gradient(820px 360px at 14% -16%,rgba(194,91,63,.18),transparent 60%),
  radial-gradient(760px 360px at 92% -8%,rgba(16,185,129,.13),transparent 60%),
  radial-gradient(900px 500px at 50% 120%,rgba(99,102,241,.10),transparent 60%),
  linear-gradient(180deg,#ffffff 0%,#f3f6fc 60%,var(--aa-bg) 100%)}
.aa-hero__title{font-size:2.7rem}
@media(min-width:640px){.aa-hero__title{font-size:3.7rem;line-height:1.04}}
.aa-hero__eyebrow{font-size:.86rem;padding:7px 16px}
.aa-hero__subtitle{font-size:1.18rem;max-width:560px;margin-left:auto;margin-right:auto}
/* floating "service chips" motif — pure CSS, evokes a marketplace of many trades */
.aa-hero__inner::before,.aa-hero__inner::after{content:"";position:absolute;border-radius:18px;
  background:#fff;box-shadow:var(--aa-shadow);opacity:.9;z-index:0}
@media(min-width:1024px){
  .aa-hero__inner{position:relative}
  .aa-hero__inner::before{width:64px;height:64px;left:-150px;top:24px;
    background:linear-gradient(135deg,#fb7185,#e11d48);transform:rotate(-8deg)}
  .aa-hero__inner::after{width:58px;height:58px;right:-160px;top:64px;
    background:linear-gradient(135deg,#22d3ee,#0891b2);transform:rotate(10deg)}
}

/* ---- Category tiles → image-style gallery cards (text over a scene) ---- */
.aa-cats__h{margin-top:38px;font-size:.9rem}
.aa-cats{gap:14px}
.aa-cat{position:relative;overflow:hidden;min-height:152px;padding:14px;border:0;border-radius:18px;
  display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;text-align:left;
  background-size:cover;background-position:center;box-shadow:var(--aa-shadow-sm);
  transition:transform .2s var(--aa-ease),box-shadow .22s}
.aa-cat::before{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(8,12,20,0) 28%,rgba(8,12,20,.30) 60%,rgba(8,12,20,.7) 100%)}
.aa-cat:hover{transform:translateY(-5px);box-shadow:var(--aa-shadow)}
/* jul-16: 8 DISTINCT service photos across the popular grid so no two tiles ever repeat the same
   image (catSlug alone collapsed most categories onto the single "repair" photo). The order aligns the
   two obvious matches with the default alphabetical category order (Bahçe→garden = 3rd, Boyacı→painter
   = 6th); the rest are varied real service photos. A per-category dedicated photo for every one of the
   24+ trades needs a dedicated image per category — provide them and we map each precisely. */
.aa-cat{background-image:linear-gradient(140deg,#4e483c,#2a2620)} /* last-resort fallback only */
.aa-cat:nth-child(8n+1){background-image:url(/wp-content/uploads/aa-moving.jpg)}
.aa-cat:nth-child(8n+2){background-image:url(/wp-content/uploads/aa-cleaning.jpg)}
.aa-cat:nth-child(8n+3){background-image:url(/wp-content/uploads/aa-gardening.jpg)}
.aa-cat:nth-child(8n+4){background-image:url(/wp-content/uploads/aa-plumbing.jpg)}
.aa-cat:nth-child(8n+5){background-image:url(/wp-content/uploads/aa-electrical.jpg)}
.aa-cat:nth-child(8n+6){background-image:url(/wp-content/uploads/aa-painting.jpg)}
.aa-cat:nth-child(8n+7){background-image:url(/wp-content/uploads/aa-repair.jpg)}
.aa-cat:nth-child(8n+8){background-image:url(/wp-content/uploads/aa-hero.jpg)}
.aa-cat__icon{position:absolute;top:10px;right:12px;z-index:1;width:auto;height:auto;background:none;
  box-shadow:none;border-radius:0;font-size:2.5rem;opacity:.92;filter:drop-shadow(0 3px 8px rgba(0,0,0,.35))}
.aa-cat__name{position:relative;z-index:1;color:#fff;font-size:1.02rem;font-weight:800;line-height:1.18;
  letter-spacing:-.01em;text-shadow:0 2px 10px rgba(0,0,0,.5)}
@media(min-width:560px){.aa-cat{min-height:168px}}

/* ============================================================================
   GRANULAR DETAIL PASS — fine, modern finishing across every element
   (CSS only; no markup/logic changes). Transforms the look at the detail level:
   typography, selection, focus rings, scrollbars, depth, micro-interactions.
   ============================================================================ */
:root{--aa-ink-grad:linear-gradient(90deg,#211e18,#3a352c)}

/* Type rhythm + selection */
.aa-app,.aa-hero,.aa-shell,.aa-adminwrap,#aa-browse{letter-spacing:-.005em}
.aa-hero ::selection,.aa-shell ::selection,#aa-browse ::selection,.aa-app ::selection{background:rgba(194,91,63,.18)}
.aa-pagetitle{letter-spacing:-.025em;font-weight:800}
.aa-dash__sub{color:var(--aa-ink-2);font-weight:700;letter-spacing:-.01em}

/* Accessible focus ring on every interactive element */
.aa-btn:focus-visible,.aa-input:focus-visible,.aa-side__item:focus-visible,.aa-pill:focus-visible,
.aa-tab:focus-visible,.aa-edittab:focus-visible,.aa-authtab:focus-visible,.aa-cat:focus-visible,
.aa-topbar__btn:focus-visible,.aa-msgrow:focus-visible{outline:none;box-shadow:var(--aa-ring)}

/* Custom, slim scrollbars inside panels/lists */
.aa-msglist,.aa-msgthread__log,.aa-suggest,.aa-modal__body,.aa-side{scrollbar-width:thin;scrollbar-color:#d8cfbb transparent}
.aa-msglist::-webkit-scrollbar,.aa-msgthread__log::-webkit-scrollbar,.aa-modal__body::-webkit-scrollbar{width:9px;height:9px}
.aa-msglist::-webkit-scrollbar-thumb,.aa-msgthread__log::-webkit-scrollbar-thumb,.aa-modal__body::-webkit-scrollbar-thumb{background:#cdd6e3;border-radius:9px;border:2px solid transparent;background-clip:content-box}
.aa-msglist::-webkit-scrollbar-thumb:hover,.aa-msgthread__log::-webkit-scrollbar-thumb:hover{background:#9fb0c6;background-clip:content-box}

/* Buttons — subtle top-sheen + crisper sizing */
.aa-btn{padding:13px 20px;position:relative;isolation:isolate}
.aa-btn--primary::before{content:"";position:absolute;inset:0;border-radius:inherit;z-index:-1;
  background:linear-gradient(180deg,rgba(255,255,255,.22),transparent 42%);opacity:.9}
.aa-topbar__btn{border-radius:12px;box-shadow:0 8px 18px -8px rgba(194,91,63,.6)}

/* Inputs / selects — deeper field, animated label feel */
.aa-input{padding:15px 16px;font-size:1rem;background:#fff;border-color:#e3e8f0}
.aa-input:hover:not(:focus){border-color:#cdd7e6}
select.aa-input{background-image:linear-gradient(45deg,transparent 50%,var(--aa-muted) 50%),linear-gradient(135deg,var(--aa-muted) 50%,transparent 50%);background-position:calc(100% - 20px) 1.25em,calc(100% - 15px) 1.25em;background-size:5px 5px,5px 5px;background-repeat:no-repeat;-webkit-appearance:none;appearance:none;padding-right:42px}
.aa-flabel{letter-spacing:.01em;color:var(--aa-ink-2)}

/* Cards & surfaces — hairline + tint + depth */
.aa-card,.aa-kpi,.aa-value,.aa-lead,.aa-side,.aa-msgshell{border-color:#eaeef5}
.aa-card{background:linear-gradient(180deg,#ffffff,#fdfefe)}

/* Section bands — generous, refined */
.aa-how,.aa-values{padding:64px 16px}
.aa-section__sub{font-size:1.06rem}
.aa-value{padding:28px 24px;border-radius:18px}
.aa-value__ic{display:inline-flex;width:54px;height:54px;align-items:center;justify-content:center;border-radius:15px;background:linear-gradient(135deg,#f6ece6,#ecdccf);font-size:1.6rem;margin-bottom:14px;box-shadow:inset 0 0 0 1px rgba(194,91,63,.08)}

/* Sidebar — branded rail, icon chips, refined sections */
.aa-side__brand{padding:20px 18px 16px}
.aa-side__head{font-size:.66rem;letter-spacing:.12em;margin-top:6px}
.aa-side__item{font-size:.95rem;padding:10px 13px;margin:1px 0}
.aa-side__ico{font-size:1rem;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:var(--aa-bg);box-shadow:inset 0 0 0 1px var(--aa-line);transition:.15s}
.aa-side__item:hover .aa-side__ico{background:#fff}
.aa-side__item.is-active .aa-side__ico{background:rgba(255,255,255,.22);box-shadow:none}

/* Tabs / pills / chips — pill-perfect */
.aa-tabs{border-bottom-color:#eaeef5}
.aa-tab{font-size:.96rem;letter-spacing:-.01em}
.aa-pill{padding:8px 16px}
.aa-chip{box-shadow:var(--aa-shadow-sm)}
.aa-badge{letter-spacing:.01em;box-shadow:inset 0 0 0 1px rgba(0,0,0,.03)}

/* KPI tiles — bigger numbers, accent rail */
.aa-kpi{padding:22px 20px;position:relative;overflow:hidden}
.aa-kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--aa-primary-grad);opacity:.85}
.aa-kpi__num{font-size:2rem;font-weight:800;letter-spacing:-.03em}
.aa-kpi--green::before{background:linear-gradient(180deg,#34d399,#059669)}
.aa-kpi--blue::before{background:var(--aa-primary-grad)}
.aa-kpi--yellow::before{background:linear-gradient(180deg,#fbbf24,#d97706)}
.aa-kpi--red::before{background:linear-gradient(180deg,#f87171,#dc2626)}

/* Chat — softer, modern bubbles */
.aa-msgthread__log{background:linear-gradient(180deg,#f7f9fd,#f3f6fc)}
.aa-bub__text{box-shadow:0 1px 2px rgba(15,23,42,.05);border-radius:16px}
.aa-bub--them .aa-bub__text{border-top-right-radius:6px}
.aa-bub--me .aa-bub__text{border-top-left-radius:6px}
.aa-msgrow.is-active{background:linear-gradient(90deg,#f6ece6,#f6f9ff);box-shadow:inset 3px 0 0 var(--aa-primary)}

/* Provider banner — refined ring + glow already; add avatar ring sheen */
.aa-provbanner__av,.aa-provbanner__av--ph{box-shadow:0 0 0 4px rgba(255,255,255,.55),0 14px 26px -10px rgba(0,0,0,.4)}

/* Modal — backdrop blur + spring entrance */
.aa-modal{backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.aa-modal__box{animation:aa-pop .26s var(--aa-ease)}
@keyframes aa-pop{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}

/* Listing detail price + book CTA emphasis */
.aa-detprice{font-size:1.35rem}
.aa-detail__side .aa-card{border-color:#e6ebf4}

/* Footer — refined */
.aa-sitefooter{background:linear-gradient(180deg,#fff,#fbfcff)}
.aa-footbar span{font-weight:500}

/* Toast — frosted, modern */
.aa-toast{border-radius:14px;background:linear-gradient(180deg,#111a2e,#211e18);box-shadow:0 18px 40px -14px rgba(2,6,23,.5),inset 0 1px 0 rgba(255,255,255,.06)}

/* Browse search bar — elevated control group */
.aa-searchbar{background:#fff;padding:12px;border:1px solid var(--aa-line);border-radius:20px;box-shadow:var(--aa-shadow-sm)}
.aa-searchbar .aa-input{box-shadow:none;border-color:#e8edf5}

/* Generic table polish (admin lists) */
.aa-app table th,.aa-shell table th,.aa-adminwrap table th{letter-spacing:.02em}

/* Gentle entrance for cards/sections on first paint */
@media(prefers-reduced-motion:no-preference){
  .aa-cat,.aa-value,.aa-lcard,.aa-kpi{animation:aa-rise .5s var(--aa-ease) both}
  @keyframes aa-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  .aa-cat:nth-child(2){animation-delay:.04s}.aa-cat:nth-child(3){animation-delay:.08s}
  .aa-cat:nth-child(4){animation-delay:.12s}.aa-cat:nth-child(5){animation-delay:.16s}
  .aa-cat:nth-child(6){animation-delay:.2s}.aa-cat:nth-child(7){animation-delay:.24s}.aa-cat:nth-child(8){animation-delay:.28s}
}


/* ---- Phase-3: master SOS dock (fixed) ---- */
.aa-sosdock{position:fixed;right:18px;bottom:18px;z-index:9000;display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:320px}
.aa-sostoggle{border:0;border-radius:999px;padding:10px 18px;font-weight:800;font-family:inherit;cursor:pointer;box-shadow:var(--aa-shadow);background:#fff;color:#857c68;font-size:.9rem;transition:.15s}
.aa-sostoggle.is-on{background:linear-gradient(135deg,#34d399,#059669);color:#fff}
.aa-sosinc{display:flex;flex-direction:column;gap:8px;width:300px}
.aa-sosrow{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:14px;padding:10px 12px;box-shadow:var(--aa-shadow);animation:aa-pop .22s var(--aa-ease)}
.aa-sosrow b{display:block;color:#dc2626;font-size:.9rem}
.aa-sosrow small{color:var(--aa-muted);font-size:.78rem}

/* ===== Real service photos (Pexels — free for commercial use, no attribution required) ===== */
/* jul-16: category tile photos are now assigned by TYPE via .aa-cat[data-cat=…] (see above), not by
   grid position, so photos match the category and newly-added categories are never left flat. */
.aa-cat::before{background:linear-gradient(180deg,rgba(8,12,20,.10) 0%,rgba(8,12,20,.32) 45%,rgba(8,12,20,.74) 100%)}
/* Big hero advertisement: full-bleed service photo + scrim + white headline. */
.aa-hero{background:linear-gradient(180deg,rgba(10,16,30,.60),rgba(10,16,30,.66)),url(/wp-content/uploads/aa-hero.jpg) center 28%/cover no-repeat}
.aa-hero::after{opacity:.16}
.aa-hero__title,.aa-hero__subtitle{color:#fff}
.aa-hero__title em{color:#e9cfc1}
.aa-hero__subtitle{color:rgba(255,255,255,.92)}
.aa-hero__eyebrow{background:rgba(255,255,255,.16);color:#fff;border-color:rgba(255,255,255,.28);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.aa-hero__eyebrow b{color:#e9cfc1}

/* ============================================================================
   MOTION & LIFE — make every page feel alive (CSS only; no markup/logic changes).
   Tasteful, GPU-friendly (transform/opacity), and disabled under reduced-motion.
   ============================================================================ */
@keyframes aa-heropan{0%,100%{background-position:center 24%}50%{background-position:center 36%}}
@keyframes aa-fadeup{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes aa-float1{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-13px) rotate(-8deg)}}
@keyframes aa-float2{0%,100%{transform:translateY(0) rotate(10deg)}50%{transform:translateY(-15px) rotate(10deg)}}
@keyframes aa-shine{0%{transform:translateX(-130%) skewX(-18deg)}60%,100%{transform:translateX(360%) skewX(-18deg)}}
@keyframes aa-pulse{0%,100%{box-shadow:0 8px 22px -8px rgba(5,150,105,.5),0 0 0 0 rgba(16,185,129,.45)}50%{box-shadow:0 8px 22px -8px rgba(5,150,105,.5),0 0 0 12px rgba(16,185,129,0)}}
@keyframes aa-spin{to{transform:rotate(360deg)}}
@keyframes aa-sos{0%,100%{transform:scale(1);box-shadow:0 8px 22px -8px rgba(239,68,68,.5),0 0 0 0 rgba(239,68,68,.4)}50%{transform:scale(1.03);box-shadow:0 8px 22px -8px rgba(239,68,68,.5),0 0 0 14px rgba(239,68,68,0)}}

/* Hero = living advertisement: slow photo drift + staggered headline reveal + floating chips */
.aa-hero{animation:aa-heropan 30s ease-in-out infinite}
.aa-hero__eyebrow{animation:aa-fadeup .6s var(--aa-ease) both}
.aa-hero__title{animation:aa-fadeup .75s var(--aa-ease) .08s both}
.aa-hero__subtitle{animation:aa-fadeup .75s var(--aa-ease) .18s both}
.aa-hero__inner::before{animation:aa-float1 5.5s ease-in-out infinite}
.aa-hero__inner::after{animation:aa-float2 6.5s ease-in-out infinite}

/* Category gallery tiles: photo zooms on hover (alive), icon lifts, name slides up */
.aa-cat{background-size:108%;transition:background-size .6s var(--aa-ease),transform .22s var(--aa-ease),box-shadow .24s}
.aa-cat:hover{background-size:126%;transform:translateY(-6px)}
.aa-cat__icon{transition:transform .3s var(--aa-ease)}
.aa-cat:hover .aa-cat__icon{transform:scale(1.12) rotate(-4deg)}
.aa-cat__name{transition:transform .3s var(--aa-ease)}
.aa-cat:hover .aa-cat__name{transform:translateY(-2px)}

/* Browse listing cover: gentle zoom on card hover */
.aa-lcard__cover{background-size:106%;transition:background-size .55s var(--aa-ease)}
.aa-lcard:hover .aa-lcard__cover{background-size:120%}

/* Primary buttons: a light "shine" sweeps across on hover */
.aa-btn--primary{overflow:hidden}
.aa-btn--primary::after{content:"";position:absolute;top:0;left:0;width:34%;height:100%;z-index:1;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);transform:translateX(-130%) skewX(-18deg);pointer-events:none}
.aa-btn--primary:hover::after{animation:aa-shine .9s var(--aa-ease)}

/* Topbar links: animated underline */
.aa-topbar__link{position:relative}
.aa-topbar__link::after{content:"";position:absolute;left:0;bottom:-5px;height:2px;width:100%;border-radius:2px;
  background:var(--aa-primary-grad);transform:scaleX(0);transform-origin:left;transition:transform .26s var(--aa-ease)}
.aa-topbar__link:hover::after{transform:scaleX(1)}

/* Cards: colored hover glow + lift across panels and detail pages */
.aa-card,.aa-lead,.aa-value,.aa-kpi,.aa-lcard,.aa-cat{will-change:transform}
.aa-lead:hover,.aa-value:hover,.aa-kpi:hover{box-shadow:var(--aa-shadow),0 10px 30px -12px rgba(194,91,63,.28)}

/* Sidebar active pill: subtle sheen sweep */
.aa-side__item.is-active{position:relative;overflow:hidden}
.aa-side__item.is-active::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.18) 50%,transparent 70%);transform:translateX(-100%);animation:aa-shine 3.2s var(--aa-ease) 1s infinite}

/* Provider banner (detail page): slow living sheen */
.aa-provbanner{position:relative;overflow:hidden}
.aa-provbanner::before{content:"";position:absolute;top:-60%;left:-20%;width:60%;height:220%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.16),transparent);transform:rotate(8deg);animation:aa-shine 7s ease-in-out 2s infinite}

/* SOS: emergency card + dock toggle pulse (alive, attention-drawing) */
.aa-sostoggle.is-on{animation:aa-pulse 2.2s ease-in-out infinite}
.aa-sosrow .aa-btn--primary{animation:aa-sos 1.6s ease-in-out infinite}
.aa-sos.is-on,.aa-lead--sos{position:relative}

/* Section reveal: staggered rise for grids on first paint (kept subtle) */
@media(prefers-reduced-motion:no-preference){
  .aa-how__step,.aa-value{animation:aa-fadeup .6s var(--aa-ease) both}
  .aa-how__step:nth-child(2){animation-delay:.08s}.aa-how__step:nth-child(3){animation-delay:.16s}
  .aa-value:nth-child(2){animation-delay:.08s}.aa-value:nth-child(3){animation-delay:.16s}
  .aa-kpi:nth-child(2){animation-delay:.05s}.aa-kpi:nth-child(3){animation-delay:.1s}.aa-kpi:nth-child(4){animation-delay:.15s}
}

/* Inputs: focus lifts the field slightly */
.aa-input:focus{transform:translateY(-1px)}
.aa-searchbox .aa-input:focus{transform:none}

/* Lightbox spinner-free smooth fade */
.aa-lightbox{animation:aa-fadeup .2s ease both}

/* Pills/tabs: springy active */
.aa-pill.is-on,.aa-authtab.is-on,.aa-side__item.is-active{transition:transform .2s var(--aa-ease),background .2s,box-shadow .2s}

/* ============================================================================
   REFINEMENT PASS (feedback): calmer motion, no blinking, bigger photo tiles w/o
   icons, frosted hero search, more photos on detail pages, richer header/footer.
   ============================================================================ */
/* 1) No blinking on SOS buttons / banners — keep only the one-time hover shine */
.aa-sostoggle.is-on{animation:none}
.aa-sosrow .aa-btn--primary{animation:none}
.aa-provbanner::before{animation:none}
.aa-side__item.is-active::after{animation:none}

/* 2) Calmer motion overall */
@keyframes aa-heropan{0%,100%{background-position:center 30%}50%{background-position:center 34%}}
.aa-hero{animation:aa-heropan 46s ease-in-out infinite}
.aa-cat:hover{background-size:116%;transform:translateY(-5px)}
@keyframes aa-float1{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-7px) rotate(-8deg)}}
@keyframes aa-float2{0%,100%{transform:translateY(0) rotate(10deg)}50%{transform:translateY(-8px) rotate(10deg)}}

/* 3) Remove emoji icons on category tiles */
.aa-cat__icon{display:none}

/* 4) Bigger category gallery tiles + light heading over the photo hero */
.aa-cats{gap:16px}
.aa-cat{min-height:212px;border-radius:20px;align-items:flex-start}
@media(min-width:560px){.aa-cat{min-height:262px}}
.aa-cat__name{font-size:1.18rem}
.aa-cats__h{color:rgba(255,255,255,.82);margin-top:30px}

/* 5) Hide the trust strip (illegible over the photo, redundant) */
.aa-trust{display:none}

/* 6) Search bar sits naturally on the hero photo — elevated, soft */
.aa-hero .aa-searchbox .aa-input{background:rgba(255,255,255,.97);border:1px solid rgba(255,255,255,.65);
  box-shadow:0 24px 52px -16px rgba(6,12,24,.62),0 2px 8px rgba(6,12,24,.28);border-radius:16px}
.aa-hero .aa-searchbox .aa-input:focus{box-shadow:0 0 0 4px rgba(255,255,255,.34),0 24px 52px -16px rgba(6,12,24,.62)}
.aa-hero .aa-searchbox__icon{color:#857c68}

/* 7) More photos on the PUBLIC detail pages */
.aa-browsehead{position:relative;overflow:hidden;padding:46px 34px;border-radius:24px;color:#fff;margin-bottom:24px;
  background:linear-gradient(120deg,rgba(10,16,30,.76),rgba(10,16,30,.5)),url(/wp-content/uploads/aa-hero.jpg) center 30%/cover}
.aa-browsetitle{color:#fff}
.aa-browsesub{color:rgba(255,255,255,.9)}
.aa-provbanner{background:linear-gradient(120deg,rgba(15,26,60,.88),rgba(194,91,63,.66)),url(/wp-content/uploads/aa-repair.jpg) center/cover}

/* 8) Header refinement — gradient logo, spacing, soft sticky shadow */
.aa-topbar__inner{padding:14px 24px}
.aa-topbar__logo{font-size:1.2rem;letter-spacing:-.02em;background:linear-gradient(135deg,#a6452d,#0ea5e9);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.aa-topbar--global{box-shadow:0 1px 0 rgba(15,23,42,.05),0 10px 30px -22px rgba(15,23,42,.5)}

/* 8) Footer refinement — dark, columned (HTML adds .aa-foot) */
.aa-foot{background:linear-gradient(180deg,#0d1426,#211e18);color:#d8cfbb;padding:52px 24px 16px;font-family:var(--aa-font)}
.aa-foot__cols{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:34px}
@media(max-width:760px){.aa-foot__cols{grid-template-columns:1fr;gap:24px}}
.aa-foot__brand{font-weight:800;font-size:1.25rem;color:#fff;text-decoration:none;letter-spacing:-.02em}
.aa-foot__tag{color:#a89f88;line-height:1.65;margin:12px 0 0;font-size:.93rem;max-width:340px}
.aa-foot h4{color:#fff;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;margin:0 0 14px}
.aa-foot__link{display:block;color:#d8cfbb;text-decoration:none;padding:5px 0;font-size:.93rem;transition:color .15s,transform .15s}
.aa-foot__link:hover{color:#fff;transform:translateX(3px)}
.aa-foot__bottom{max-width:1100px;margin:34px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#857c68;font-size:.85rem}

/* ============================================================================
   FEEDBACK ROUND 2 — bug fixes + detail-page color + modern SVG icons + split auth.
   ============================================================================ */
/* (A) Category tiles were tiling the photo (background-size:108% + repeat). Cover, no repeat. */
.aa-cat{background-size:cover!important;background-repeat:no-repeat!important;background-position:center}
.aa-cat:hover{background-size:cover!important;transform:translateY(-6px) scale(1.012)}

/* (B) "Add Credit" button collapsed (inline flex:0). Restore proper width. */
#aa-topup{flex:0 0 auto!important;white-space:nowrap;min-width:max-content;padding:9px 16px!important}
.aa-wallet{flex-wrap:nowrap}

/* (C) Remove the homepage Emergency entry card (2nd image). */
.aa-sosentry{display:none!important}

/* (D) Every tab switch fades/rises in — the lively feel of opening a new page. */
.aa-tabpane:not([hidden]){animation:aa-tabin .42s var(--aa-ease)}
@keyframes aa-tabin{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* (E) Detail / panel pages: drop the flat all-white for a soft tinted canvas + accented headings. */
.aa-shell,.aa-adminwrap{background:
  radial-gradient(900px 440px at 100% -8%,rgba(194,91,63,.07),transparent 60%),
  radial-gradient(820px 440px at -8% 2%,rgba(16,185,129,.05),transparent 60%),
  linear-gradient(180deg,#eef2f9,#eeebe2)}
.aa-pagetitle{position:relative;padding-left:15px}
.aa-pagetitle::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:5px;height:1.05em;border-radius:3px;background:var(--aa-primary-grad)}
.aa-card,.aa-side,.aa-kpi,.aa-lead,.aa-value{background:linear-gradient(180deg,#ffffff,#fbfcff)}
.aa-detail__side .aa-card{background:linear-gradient(180deg,#fff,#f4f8ff)}

/* (F) Split-screen auth (signup/login): photo panel on the left, form card on the right. */
@media(min-width:920px){
  #aa-auth{position:relative;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);overflow:hidden;min-height:calc(100vh - 72px);display:flex;align-items:center;justify-content:flex-end;padding:46px 9vw 46px 0}
  #aa-auth::before{content:"";position:absolute;left:0;top:24px;bottom:24px;width:48%;border-radius:0 30px 30px 0;
    background:linear-gradient(150deg,rgba(13,22,50,.62),rgba(194,91,63,.46)),url(/wp-content/uploads/aa-hero.jpg) center/cover;
    box-shadow:var(--aa-shadow-lg)}
  #aa-auth .aa-authcard{position:relative;z-index:1;margin:0;width:430px}
}

/* (G) MODERN ICON SET — replace the emoji nav icons with clean line SVGs (CSS mask, inherits color). */
.aa-side__ico{font-size:0!important;color:var(--aa-ink-2)}
.aa-side__item:hover .aa-side__ico{color:var(--aa-primary)}
.aa-side__item.is-active .aa-side__ico{color:#fff}
.aa-side__ico::after{content:"";display:block;width:18px;height:18px;background:currentColor;
  -webkit-mask:var(--ic,var(--ic-d)) center/contain no-repeat;mask:var(--ic,var(--ic-d)) center/contain no-repeat}
.aa-side__ico{--ic-d:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="profile"] .aa-side__ico,.aa-side__item[data-tab="account"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4 4-6 8-6s8 2 8 6'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="dashboard"] .aa-side__ico,.aa-side__item[data-tab="overview"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='9' rx='1'/%3E%3Crect x='14' y='3' width='7' height='5' rx='1'/%3E%3Crect x='14' y='12' width='7' height='9' rx='1'/%3E%3Crect x='3' y='16' width='7' height='5' rx='1'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="feed"] .aa-side__ico,.aa-side__item[data-tab="requests"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='4' width='12' height='17' rx='2'/%3E%3Cpath d='M9 4V3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v1M9 10h6M9 14h6'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="mmessages"] .aa-side__ico,.aa-side__item[data-tab="messages"] .aa-side__ico,.aa-side__item[data-tab="conversations"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11 7l-5 2 2-5a8 8 0 1 1 14-4z'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="applied"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 2-7 20-4-9-9-4z'/%3E%3Cpath d='M22 2 11 13'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="shortlist"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h12a1 1 0 0 1 1 1v17l-7-4-7 4V4a1 1 0 0 1 1-1z'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="faqs"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M9.5 9a2.5 2.5 0 0 1 4 2c0 1.5-2 2-2 3.2M12 17h.01'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="bsettings"] .aa-side__ico,.aa-side__item[data-tab="settings"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M12 2v3M12 19v3M2 12h3M19 12h3M5 5l2 2M17 17l2 2M19 5l-2 2M7 17l-2 2'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="availability"] .aa-side__ico,.aa-side__item[data-tab="schedule"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 9h18M8 3v4M16 3v4'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="unavail"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 9h18M8 3v4M16 3v4M10 14l4 4M14 14l-4 4'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="jobs"] .aa-side__ico,.aa-side__item[data-tab="bookings"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 9h18M8 3v4M16 3v4M9 15l2 2 4-4'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="addlisting"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='3'/%3E%3Cpath d='M12 8v8M8 12h8'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="mylistings"] .aa-side__ico,.aa-side__item[data-tab="services"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 9 5-9 5-9-5 9-5zM3 13l9 5 9-5'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="wallet"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='13' rx='2'/%3E%3Cpath d='M16 12h.5M3 10h18'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="invoice"] .aa-side__ico,.aa-side__item[data-tab="invoices"] .aa-side__ico,.aa-side__item[data-tab="quotation"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h4'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="hours"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="notifications"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8a6 6 0 1 0-12 0c0 7-3 9-3 9h18s-3-2-3-9'/%3E%3Cpath d='M10.5 21a2 2 0 0 0 3 0'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="regions"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s7-6 7-11a7 7 0 1 0-14 0c0 5 7 11 7 11z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="reviews"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 2.7 5.6 6.1.9-4.4 4.3 1 6.1L12 17l-5.4 2.9 1-6.1L2.2 9.5l6.1-.9z'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="favorites"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-4.5-9.5-9A5 5 0 0 1 12 6a5 5 0 0 1 9.5 6c-2.5 4.5-9.5 9-9.5 9z'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="stats"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 17 6-6 4 4 8-8M21 7v5h-5'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="approve"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="reports"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 21V4M5 4h12l-2 4 2 4H5'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="refunds"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12a9 9 0 1 0 3-6.7L3 8M3 3v5h5'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="users"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M3 21c0-3.5 3-5.5 6-5.5s6 2 6 5.5M17 6a3.5 3.5 0 0 1 0 7M21 21c0-2.5-1.5-4-3.5-4.7'/%3E%3C/svg%3E")}
.aa-side__item[data-tab="finance"] .aa-side__ico{--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 2v20M16 7a4 4 0 0 0-4-2c-2 0-4 1-4 3s2 3 4 3 4 1 4 3-2 3-4 3a4 4 0 0 1-4-2'/%3E%3C/svg%3E")}

/* ============================================================================
   PANEL & AUTH ELEGANCE — imagery + refined layout, sidebar hover underline.
   ============================================================================ */
/* Sidebar tab hover = animated underline under the label (the Browse-Masters effect). */
.aa-side__item{position:relative}
.aa-side__item>span:last-child{position:relative;display:inline-block}
.aa-side__item>span:last-child::after{content:"";position:absolute;left:0;bottom:-3px;height:2px;width:100%;border-radius:2px;background:var(--aa-primary-grad);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--aa-ease)}
.aa-side__item:hover>span:last-child::after{transform:scaleX(1)}
.aa-side__item.is-active>span:last-child::after{display:none}

/* Sidebar: soft gradient surface + a cover-photo header behind the avatar & name. */
.aa-side{background:linear-gradient(180deg,#ffffff,#f6faff)}
.aa-side__brand--user{position:relative;overflow:hidden;border-radius:16px;padding:20px 16px;margin-bottom:8px;color:#fff;
  background:linear-gradient(155deg,rgba(13,22,50,.74),rgba(194,91,63,.5)),url(/wp-content/uploads/aa-hero.jpg) center/cover;box-shadow:var(--aa-shadow-sm)}
.aa-side__brand--user .aa-side__who b{color:#fff}
.aa-side__brand--user .aa-side__who small{color:rgba(255,255,255,.85)}
.aa-side__brand--user .aa-avatar{box-shadow:0 0 0 3px rgba(255,255,255,.45)}
.aa-side__brand--admin{position:relative;overflow:hidden;border-radius:16px;padding:20px 16px;margin-bottom:8px;color:#fff;
  background:linear-gradient(155deg,rgba(2,6,23,.82),rgba(15,23,42,.66)),url(/wp-content/uploads/aa-repair.jpg) center/cover}
.aa-side__brand--admin .aa-side__who b,.aa-side__brand--admin .aa-side__who small{color:#fff}
.aa-side__brand--admin .aa-side__shield{filter:drop-shadow(0 2px 6px rgba(0,0,0,.4))}

/* Main header bar: refined glass strip with a clearer balance figure. */
.aa-main__bar{background:linear-gradient(120deg,#ffffff,#f6ece6);border:1px solid var(--aa-line);border-radius:16px;padding:13px 18px;box-shadow:var(--aa-shadow-sm)}
.aa-wallet{font-weight:600}
.aa-wallet>b{color:var(--aa-primary);font-size:1.18rem}

/* Decorative tint blob on the main canvas (kept behind content). */
.aa-main{position:relative}
.aa-main::before{content:"";position:absolute;right:-50px;top:-26px;width:260px;height:260px;border-radius:50%;
  background:radial-gradient(circle,rgba(194,91,63,.09),transparent 70%);pointer-events:none;z-index:0}
.aa-main>.aa-main__bar,.aa-main>.aa-tabpane{position:relative;z-index:1}

/* KPI cards: gradient surface, colored accent rail, hover lift. */
.aa-admincard{position:relative;overflow:hidden;background:linear-gradient(180deg,#ffffff,#f7faff);transition:transform .18s var(--aa-ease),box-shadow .2s}
.aa-admincard::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--aa-primary-grad)}
.aa-admincard--ok::before{background:linear-gradient(180deg,#10b981,#059669)}
.aa-admincard--warn::before{background:linear-gradient(180deg,#f59e0b,#d97706)}
.aa-admincard--bad::before{background:linear-gradient(180deg,#ef4444,#dc2626)}
.aa-admincard:hover{transform:translateY(-3px);box-shadow:var(--aa-shadow)}

/* Auth: brand wordmark on the photo panel + safe mobile stacking. */
@media(min-width:920px){
  #aa-auth::after{content:"AnahtarApp · trusted pros, minutes away";position:absolute;left:5vw;bottom:8vh;z-index:1;max-width:34vw;
    color:#fff;font-weight:800;font-size:1.5rem;line-height:1.25;letter-spacing:-.01em;text-shadow:0 2px 18px rgba(0,0,0,.45)}
}

/* ============================================================================
   FEEDBACK ROUND 4 — themed task cards, modern brand/role/KPI icons, brighter
   imagery, 60/40 auth, sidebar background, chat background, no button blink.
   ============================================================================ */
/* (E) Remove the hover "blink": drop the instant brightness jump; keep the soft shine sweep. */
.aa-btn--primary:hover{filter:none}
.aa-btn--primary::after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent)}

/* (B) Modern app-style brand mark (gradient rounded square + white key). */
.aa-brandmark{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:8px;
  background:var(--aa-primary-grad);margin-right:9px;vertical-align:-7px;box-shadow:0 5px 12px -4px rgba(194,91,63,.65);-webkit-text-fill-color:initial}
.aa-brandmark svg{width:16px;height:16px}
.aa-foot__brand .aa-brandmark{box-shadow:0 5px 12px -4px rgba(0,0,0,.5)}

/* (A) Auth: photo panel 60% + brighter image, form in the right 40%, modern role icons. */
@media(min-width:920px){
  #aa-auth{padding:46px 6vw 46px 0}
  #aa-auth::before{width:60%;
    background:linear-gradient(150deg,rgba(194,91,63,.30),rgba(13,22,50,.34)),url(/wp-content/uploads/aa-cleaning.jpg) center/cover}
  #aa-auth .aa-authcard{width:min(440px,40vw)}
  #aa-auth::after{max-width:46vw}
}
.aa-rolecard__ic{color:var(--aa-primary)}
.aa-rolecard__ic svg{width:26px;height:26px}
.aa-rolecard.is-on .aa-rolecard__ic{color:var(--aa-primary)}

/* (C) Brighter sidebar cover photo behind avatar + name. */
.aa-side__brand--user{background:linear-gradient(155deg,rgba(194,91,63,.40),rgba(13,22,50,.50)),url(/wp-content/uploads/aa-cleaning.jpg) center/cover}

/* (F) Faint, bright image behind the whole sidebar nav. */
.aa-side{background:linear-gradient(180deg,rgba(255,255,255,.93),rgba(247,250,255,.96)),url(/wp-content/uploads/aa-cleaning.jpg) center/cover}

/* (H/I/K) THEMED TASK CARDS — a work-type photo header on every .aa-lead card, two per row. */
.aa-feed{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:720px){.aa-feed{grid-template-columns:repeat(2,minmax(0,1fr))}}
.aa-lead{position:relative;overflow:hidden}
/* rev 63: every job card's banner is one of the ORIGINAL service photos, chosen per category in JS
   (--aa-lead-bg) so the same photo repeats as little as possible across cards. */
.aa-lead[data-cat]::before{content:"";display:block;height:108px;margin:-18px -18px 14px -18px;border-radius:0;
  background:var(--aa-lead-bg,url(/wp-content/uploads/aa-repair.jpg)) center/cover no-repeat;box-shadow:inset 0 -40px 40px -28px rgba(0,0,0,.28)}
/* Disabled / out-of-trade cards: kill the colour (grey photo + grey surface). */
.aa-lead--nomatch{background:#f3f4f6;border-color:#e4ddcc}
.aa-lead--nomatch::before{filter:grayscale(1) brightness(1.04) contrast(.92);opacity:.55}
.aa-lead--nomatch .aa-lead__cat,.aa-lead--nomatch .aa-lead__est,.aa-lead--nomatch .aa-lead__loc{color:#9aa3af}

/* (I) Listings grid two-per-row as well. */
.aa-lcards,.aa-listings{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:720px){.aa-lcards,.aa-listings{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* (J) Bright image behind the chat thread (kept very light for readability). */
.aa-msgshell{background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(244,248,255,.94)),url(/wp-content/uploads/aa-cleaning.jpg) center/cover}
.aa-msglist{background:rgba(255,255,255,.82)}

/* (M) Customer dashboard KPI icons → modern line icons (mask, colour per card). */
.aa-kpi__ic{font-size:0!important;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center}
.aa-kpi__ic::after{content:"";width:27px;height:27px;background:currentColor;
  -webkit-mask:var(--ic) center/contain no-repeat;mask:var(--ic) center/contain no-repeat}
.aa-kpi--green .aa-kpi__ic{color:#10b981;--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='6' y='4' width='12' height='17' rx='2'/%3E%3Cpath d='M9 4V3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v1M9 10h6M9 14h4'/%3E%3C/svg%3E")}
.aa-kpi--blue .aa-kpi__ic{color:#c25b3f;--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s4-7 10-7 10 7 10 7-4 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}
.aa-kpi--yellow .aa-kpi__ic{color:#f59e0b;--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 2.7 5.6 6.1.9-4.4 4.3 1 6.1L12 17l-5.4 2.9 1-6.1L2.2 9.5l6.1-.9z'/%3E%3C/svg%3E")}
.aa-kpi--red .aa-kpi__ic{color:#ef4444;--ic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-4.5-9.5-9A5 5 0 0 1 12 6a5 5 0 0 1 9.5 6c-2.5 4.5-9.5 9-9.5 9z'/%3E%3C/svg%3E")}

/* (L) Master dashboard KPI cards → a subtle modern icon top-right of each (by position). */
.aa-admincard{padding-right:46px}
.aa-admincard::after{content:"";position:absolute;right:14px;top:14px;width:22px;height:22px;opacity:.55;background:var(--aa-primary);
  -webkit-mask:var(--kic) center/contain no-repeat;mask:var(--kic) center/contain no-repeat}
.aa-admincard--ok::after{background:#059669}.aa-admincard--warn::after{background:#d97706}.aa-admincard--bad::after{background:#dc2626}
.aa-admincards .aa-admincard:nth-child(1){--kic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 2-7 20-4-9-9-4z'/%3E%3Cpath d='M22 2 11 13'/%3E%3C/svg%3E")}
.aa-admincards .aa-admincard:nth-child(2){--kic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m8 12 3 3 5-6'/%3E%3C/svg%3E")}
.aa-admincards .aa-admincard:nth-child(3){--kic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E")}
.aa-admincards .aa-admincard:nth-child(4){--kic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m15 9-6 6M9 9l6 6'/%3E%3C/svg%3E")}
.aa-admincards .aa-admincard:nth-child(5){--kic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='6' width='18' height='13' rx='2'/%3E%3Cpath d='M16 12h.5M3 10h18'/%3E%3C/svg%3E")}
.aa-admincards .aa-admincard:nth-child(6){--kic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m12 3 2.7 5.6 6.1.9-4.4 4.3 1 6.1L12 17l-5.4 2.9 1-6.1L2.2 9.5l6.1-.9z'/%3E%3C/svg%3E")}
.aa-admincards .aa-admincard:nth-child(7){--kic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4 4-6 8-6 1.4 0 2.7.3 3.8.8'/%3E%3Cpath d='m16 18 2 2 4-4'/%3E%3C/svg%3E")}
.aa-admincards .aa-admincard:nth-child(8){--kic:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 4h10v4a5 5 0 0 1-10 0z'/%3E%3Cpath d='M7 6H4v2a3 3 0 0 0 3 3M17 6h3v2a3 3 0 0 1-3 3M9 18h6M10 18v-3M14 18v-3M8 21h8'/%3E%3C/svg%3E")}

/* ============================================================================
   FEEDBACK ROUND 5 — new banner/cover images, square category tiles w/ zoom,
   one-line hero w/o floating chips, aligned brand mark, per-mode auth photos,
   wizard "page" transition, scroll-reveal.
   ============================================================================ */
/* (1) Browse "Find a Master" banner — a different image. */
.aa-browsehead{background:linear-gradient(120deg,rgba(10,16,30,.74),rgba(194,91,63,.5)),url(/wp-content/uploads/aa-repair.jpg) center 35%/cover}

/* (2) Category tiles: square + a clear zoom on hover (drop the tall min-heights). */
.aa-cats{align-items:start}
.aa-cat{min-height:0!important;aspect-ratio:1/1;align-self:start;transition:transform .25s var(--aa-ease),box-shadow .25s}
@media(min-width:560px){.aa-cat{min-height:0!important;aspect-ratio:1/1}}
.aa-cat:hover{transform:translateY(-6px) scale(1.05);z-index:2;box-shadow:0 26px 46px -16px rgba(10,16,30,.5)}

/* (3a) Remove the red/blue floating chips in the hero. */
.aa-hero__inner::before,.aa-hero__inner::after{display:none!important}
/* (3b) Hero headline on a single line (scales down to fit on wide screens). */
@media(min-width:720px){.aa-hero__title{white-space:nowrap;font-size:clamp(1.8rem,4.7vw,3.4rem)}}

/* (4) Brand mark + wordmark on one baseline (header + footer). */
.aa-topbar__logo,.aa-foot__brand{display:inline-flex;align-items:center;line-height:1}
.aa-brandmark{vertical-align:0;margin-right:9px}

/* (2b) Choosing a category/type transitions to a clean full "page" (hero hidden, light canvas). */
.aa-hero__inner:has(.aa-app:not([data-step="search"])) .aa-hero__eyebrow,
.aa-hero__inner:has(.aa-app:not([data-step="search"])) .aa-hero__title,
.aa-hero__inner:has(.aa-app:not([data-step="search"])) .aa-hero__subtitle{display:none}
.aa-hero:has(.aa-app:not([data-step="search"])){background:#eef2f9!important;animation:none}
.aa-hero:has(.aa-app:not([data-step="search"])) .aa-hero__inner{padding-top:18px}
.aa-app:not([data-step="search"]){animation:aa-fadeup .45s var(--aa-ease)}

/* Auth: brighter, DIFFERENT side photo for Sign Up vs Log In. */
@media(min-width:920px){
  #aa-auth[data-mode="signup"]::before{background:linear-gradient(150deg,rgba(194,91,63,.28),rgba(13,22,50,.30)),url(/wp-content/uploads/aa-cleaning.jpg) center/cover}
  #aa-auth[data-mode="login"]::before{background:linear-gradient(150deg,rgba(210,168,92,.26),rgba(27,25,21,.46)),url(/wp-content/uploads/aa-painting.jpg) center/cover}
}

/* (image 5) Panel top cover — a different image for both panels. */
.aa-side__brand--user{background:linear-gradient(155deg,rgba(16,90,60,.46),rgba(13,30,40,.5)),url(/wp-content/uploads/aa-gardening.jpg) center/cover}

/* (image 6) Sidebar nav — a brighter image behind the menu (a touch more visible). */
.aa-side{background:linear-gradient(180deg,rgba(255,255,255,.86),rgba(247,250,255,.92)),url(/wp-content/uploads/aa-cleaning.jpg) center/cover}

/* (image 7) Chat — let the background image show a little more (kept readable). */
.aa-msgshell{background:linear-gradient(180deg,rgba(255,255,255,.80),rgba(244,248,255,.86)),url(/wp-content/uploads/aa-cleaning.jpg) center/cover}

/* Scroll-reveal (enabled by .aa-srl on <html>; respects reduced-motion). */
.aa-srl .aa-srl-item{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.aa-srl .aa-srl-item.is-in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.aa-srl .aa-srl-item{opacity:1!important;transform:none!important}}

/* ============================================================================
   FEEDBACK ROUND 6 — visible chat background, transparent hero search,
   2x category tiles, decorated header & footer.
   ============================================================================ */
/* (1) Chat: show a real background image in the message area (bubbles stay solid/readable). */
.aa-msglist{background:#fff}
.aa-msgthread__log{background:linear-gradient(180deg,rgba(255,255,255,.68),rgba(244,248,255,.76)),url(/wp-content/uploads/aa-cleaning.jpg) center/cover}

/* (2) Schedule "Upcoming" cards already use .aa-lead (2-up + themed photo via data-cat). */

/* (3) Hero search box: transparent on the photo (white text + light border). */
.aa-hero .aa-searchbox .aa-input{background:transparent;border:1.5px solid rgba(255,255,255,.55);box-shadow:none;color:#fff}
.aa-hero .aa-searchbox .aa-input::placeholder{color:rgba(255,255,255,.8)}
.aa-hero .aa-searchbox .aa-input:focus{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.9);box-shadow:0 0 0 4px rgba(255,255,255,.18);color:#fff}
.aa-hero .aa-searchbox__icon{color:rgba(255,255,255,.85)}

/* (6) Category tiles at ~2x size: two per row (each tile twice as wide → square → twice as tall). */
@media(min-width:560px){.aa-cats{grid-template-columns:repeat(2,1fr);gap:20px}}
.aa-cat__name{font-size:1.5rem}
.aa-cat:hover{transform:translateY(-8px) scale(1.05)}

/* (4) Header: modern ornament — soft gradient, faint dot field, gradient accent underline. */
.aa-topbar--global{position:relative;background:
  radial-gradient(420px 120px at 100% 0%,rgba(194,91,63,.06),transparent 70%),
  linear-gradient(180deg,#ffffff,#f8fbff)}
.aa-topbar--global::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
  background-image:radial-gradient(rgba(194,91,63,.12) 1px,transparent 1px);background-size:20px 20px;
  -webkit-mask:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent);mask:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent)}
.aa-topbar--global::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:linear-gradient(90deg,transparent,rgba(194,91,63,.55),rgba(14,165,233,.55),transparent)}
.aa-topbar__inner{position:relative;z-index:1}

/* (5) Footer: modern ornament — top accent, radial glow, faint dot grid. */
.aa-foot{position:relative;overflow:hidden}
.aa-foot::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:24px 24px;opacity:.6}
.aa-foot::after{content:"";position:absolute;left:0;right:0;top:0;height:160px;pointer-events:none;
  background:radial-gradient(600px 160px at 18% 0%,rgba(194,91,63,.28),transparent 70%),radial-gradient(520px 150px at 88% 0%,rgba(16,185,129,.18),transparent 70%)}
.aa-foot__cols,.aa-foot__bottom{position:relative;z-index:1}
.aa-foot{border-top:2px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(194,91,63,.6),rgba(14,165,233,.6),transparent) 1}

/* ============================================================================
   FEEDBACK ROUND 7 — categories back to a single smaller row, dark chat background.
   ============================================================================ */
/* (1) Category tiles: one horizontal row (4 across) at ~70% scale, with a clear hover zoom. */
@media(min-width:560px){.aa-cats{grid-template-columns:repeat(4,1fr);gap:14px}}
.aa-cat__name{font-size:1.15rem}
.aa-cat:hover{transform:translateY(-6px) scale(1.07)}

/* (2) Chat: dark image background (bubbles keep their own surface; meta text lightened). */
.aa-msgthread__log{background:linear-gradient(180deg,rgba(12,17,31,.62),rgba(12,17,31,.74)),url(/wp-content/uploads/aa-hero.jpg) center/cover}
.aa-msgthread__log .aa-bub__time{color:rgba(255,255,255,.74)}
.aa-msgthread__log .aa-bub__tick{color:rgba(255,255,255,.55)}
.aa-msgthread__log .aa-bub__tick.is-read{color:#7cc0ff}
.aa-msgthread__log .aa-hint{color:rgba(255,255,255,.8)}

/* ============================================================================
   FEEDBACK ROUND 8 — bigger category tiles + zoom, living hero, animated soft
   gradient headline, softer font, themed 2-up builder cards.
   ============================================================================ */
/* (5) Softer typeface site-wide (Nunito loaded in <head>). */
:root{ --aa-font:'Nunito','Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif; }

/* (1)(2) Homepage category tiles ~1.3x bigger (taller) + clear zoom on hover. */
.aa-cat{aspect-ratio:10/13}
.aa-cat__name{font-size:1.3rem}
.aa-cat:hover{transform:translateY(-8px) scale(1.09);z-index:3;box-shadow:0 30px 60px -18px rgba(10,16,30,.55)}

/* (3) Hero "big ad" alive — slow living drift + breathing zoom. */
@keyframes aa-heropan{0%{background-position:center 24%;background-size:118%}50%{background-position:center 42%;background-size:130%}100%{background-position:center 24%;background-size:118%}}
.aa-hero{animation:aa-heropan 26s ease-in-out infinite}

/* (4) Hero headline — artistic flowing gradient (alive / "video" feel), stays readable. */
@keyframes aa-titleflow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
.aa-hero__title{
  background:linear-gradient(100deg,#ffffff 0%,#cfe9ff 22%,#ffffff 45%,#e1e7ff 68%,#ffffff 100%);
  background-size:240% auto;-webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
  filter:drop-shadow(0 3px 16px rgba(8,14,30,.5));
  animation:aa-fadeup .8s var(--aa-ease) .06s both, aa-titleflow 7s ease-in-out infinite;
}
@media(prefers-reduced-motion:reduce){.aa-hero{animation:none}.aa-hero__title{animation:aa-fadeup .6s both}}

/* (8) Admin "Job Categories" builder cards — 2 per row + work-type photo background. */
.aa-catcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.aa-catcard{position:relative;overflow:hidden;border:0;border-radius:18px;min-height:150px;padding:16px;color:#fff;
  background:#1f2937 center/cover no-repeat;box-shadow:var(--aa-shadow);transition:transform .2s var(--aa-ease),box-shadow .2s}
.aa-catcard:hover{transform:translateY(-4px);box-shadow:0 24px 48px -18px rgba(10,16,30,.5)}
.aa-catcard::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,16,30,.22),rgba(10,16,30,.8))}
.aa-catcard>*{position:relative;z-index:1}
.aa-catcard b{color:#fff;font-size:1.18rem}
.aa-catcard .aa-hint{color:rgba(255,255,255,.86)}
.aa-catcard .aa-btn--ghost{background:rgba(255,255,255,.16);color:#fff;border:1px solid rgba(255,255,255,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.aa-catcard .aa-btn--ghost:hover{background:rgba(255,255,255,.3)}
/* rev 15c: operator category cards get a UNIQUE per-category background set inline in JS — a real cover
   photo when one is assigned, otherwise a distinct gradient — so the 150+ builder cards never repeat. */

/* ============================================================================
   CLIENT REVISION ROUND (July) — new components
   ============================================================================ */
/* B2/B1: lead detail teaser + photo strip + post-unlock gallery */
.aa-lead__details{margin:8px 0 2px;display:flex;flex-direction:column;gap:3px}
.aa-lead__detrow{font-size:.86rem;color:var(--aa-ink-2,#4e483c);line-height:1.35}
.aa-lead__q{font-weight:600;color:var(--aa-ink)}
.aa-lead__more{font-size:.78rem;color:var(--aa-muted);margin-top:2px}
.aa-lead__photos{margin:8px 0 2px}
.aa-lead__photostrip{display:flex;gap:6px;flex-wrap:wrap}
.aa-lead__photostrip.is-locked{filter:blur(5px);pointer-events:none;opacity:.9}
.aa-lead__photocap{font-size:.78rem;color:var(--aa-muted);margin-top:6px}
.aa-lead__gallery{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.aa-mediathumb{width:58px;height:58px;border-radius:10px;background-size:cover;background-position:center;background-color:var(--aa-bg,#ede7d8);border:1px solid var(--aa-line);display:inline-flex;align-items:center;justify-content:center;font-size:1.3rem;color:#857c68;text-decoration:none;flex:0 0 auto}
.aa-lead__gallery .aa-mediathumb{width:76px;height:76px;cursor:zoom-in}
a.aa-mediathumb{cursor:pointer}
.aa-lead__bid{margin:8px 0 2px;font-weight:600;color:#047857;font-size:.9rem}
/* B3/B4: (the 3 tabs reuse .aa-subfilter / .aa-pill already defined) */

/* C1/C2: searchable category picker */
.aa-selchips{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 10px;min-height:8px}
.aa-selchip__x{font-weight:700;margin-left:2px;opacity:.7}
.aa-selchip:hover .aa-selchip__x{opacity:1}
.aa-catcount{font-size:.85rem;color:var(--aa-muted);font-weight:600;margin:0 0 8px}
.aa-catresults{max-height:260px;overflow-y:auto;border:1px solid var(--aa-line);border-radius:12px;padding:6px;margin-top:8px;display:flex;flex-direction:column;gap:4px}
.aa-catrow{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;padding:10px 12px;border:1px solid transparent;border-radius:9px;background:#fff;color:var(--aa-ink);font-weight:500;font-family:inherit;font-size:.95rem;cursor:pointer;transition:background .12s,border-color .12s}
.aa-catrow:hover{background:var(--aa-primary-soft)}
.aa-catrow.is-on{background:var(--aa-primary-soft);border-color:var(--aa-primary);font-weight:600}
.aa-catrow[disabled]{cursor:default;opacity:.75}
.aa-catrow--sub{margin-left:18px;border-left:2px solid var(--aa-line);padding-left:14px} /* rev 2: subcategory indent under its main trade */
.aa-catrow__mark{flex:0 0 auto;width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;background:var(--aa-bg,#ede7d8);color:var(--aa-muted)}
.aa-catrow.is-on .aa-catrow__mark{background:var(--aa-primary);color:#fff}
.aa-catcaphint{margin-top:8px;font-size:.85rem;color:#b45309;background:#fffbeb;border:1px solid #fde68a;border-radius:9px;padding:8px 10px}

/* C3: spaced Save row (Category tab) */
.aa-savebar{margin-top:18px;display:flex;align-items:center;gap:12px;flex-wrap:wrap}

/* C4: profile strength scorecard */
.aa-strength{margin-top:6px}
.aa-scorelist{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}
.aa-scoreitem{display:flex;align-items:center;gap:10px;padding:7px 4px;border-bottom:1px solid var(--aa-line);color:var(--aa-muted)}
.aa-scoreitem:last-child{border-bottom:0}
.aa-scoreitem.is-on{color:var(--aa-ink)}
.aa-scoreitem__mark{flex:0 0 auto;width:20px;text-align:center;font-weight:700;color:#d8cfbb}
.aa-scoreitem.is-on .aa-scoreitem__mark{color:#047857}
.aa-scoreitem__label{flex:1}
.aa-scoreitem__pts{flex:0 0 auto;font-weight:600;font-size:.85rem}
.aa-scoreitem.is-on .aa-scoreitem__pts{color:#047857}

/* D1: candidate quote pill on Choose-Master chips */
.aa-selchip__quote{font-weight:700;opacity:.85;margin-left:6px}

/* E1: Approval Queue table + bulk approve */
.aa-bulkbar{display:flex;justify-content:flex-end;margin-top:12px}
.aa-jobtable{width:100%;border-collapse:collapse;font-size:.9rem}
.aa-jobtable th,.aa-jobtable td{padding:9px 12px;text-align:left;border-bottom:1px solid var(--aa-line);white-space:nowrap}
.aa-jobtable th{font-size:.76rem;letter-spacing:.02em;text-transform:uppercase;color:var(--aa-muted);font-weight:700}
.aa-jobtable tbody tr:hover{background:var(--aa-primary-soft)}
.aa-jobtable .aa-colchk{width:34px;text-align:center}
.aa-jobtable .aa-colchk input{width:16px;height:16px;cursor:pointer}
.aa-jobtable .aa-colact{white-space:nowrap}
.aa-jobtable .aa-colact .aa-btn{padding:6px 12px;font-size:.82rem;width:auto}

/* rev 17: favourite heart on browse cards */
.aa-lcard{position:relative}
.aa-lcard__fav{position:absolute;top:10px;right:10px;z-index:2;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 4px 12px rgba(2,32,71,.18);cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:transform .12s}
.aa-lcard__fav:hover{transform:scale(1.12)}
/* rev 17: heart on the master shop page (customer→master) + "favourite customer" button (master→customer). */
.aa-provbanner__fav{position:absolute;top:14px;right:16px;z-index:3;width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 4px 12px rgba(2,32,71,.22);cursor:pointer;font-size:1.05rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:transform .12s}
.aa-provbanner__fav:hover{transform:scale(1.12)}
.aa-favcust.is-on{border-color:#f59e0b;color:#b45309;background:#fffbeb}
/* rev 6: muted "posted at" line on lead cards (shares .aa-lead__loc styling) */
.aa-lead__posted{opacity:.85;font-size:.85rem}

/* rev 10: before/after project editor + public showcase */
.aa-ba-strip{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.aa-ba-thumb{position:relative;width:64px;height:64px;border-radius:10px;background-size:cover;background-position:center;background-color:var(--aa-bg,#ede7d8);border:1px solid var(--aa-line);flex:0 0 auto}
.aa-ba-x{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border:0;border-radius:50%;background:#dc2626;color:#fff;font-size:.7rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.aa-ba-add{width:64px;height:64px;border:1.5px dashed #c7d2e4;border-radius:10px;background:#fff;color:#a89f88;font-size:1.6rem;line-height:1;cursor:pointer;flex:0 0 auto}
.aa-ba-add:hover{border-color:var(--aa-primary);color:var(--aa-primary)}
/* public showcase (detailView) */
.aa-project{border:1px solid var(--aa-line);border-radius:14px;overflow:hidden;margin-bottom:16px;background:#fff}
.aa-project__cap{padding:10px 14px;font-weight:600;color:var(--aa-ink);border-bottom:1px solid var(--aa-line)}
.aa-project__pair{display:grid;grid-template-columns:1fr 1fr;gap:0}
.aa-project__side{padding:10px}
.aa-project__side+.aa-project__side{border-left:1px solid var(--aa-line)}
.aa-project__lbl{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--aa-muted);font-weight:700;margin-bottom:6px}
.aa-project__imgs{display:flex;gap:6px;flex-wrap:wrap}
.aa-project__imgs img{width:88px;height:88px;object-fit:cover;border-radius:8px;cursor:zoom-in;background:#000}
/* rev 23/40: shop-page verified badges + per-master FAQ */
.aa-vbadge{display:inline-flex;align-items:center;gap:4px;background:#ecfdf5;border:1px solid #a7f3d0;color:#047857;border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:600;margin-right:6px}
.aa-faqitem{border:1px solid var(--aa-line);border-radius:12px;padding:12px 14px;margin-bottom:10px;background:#fff}
.aa-faqitem__q{font-weight:700;color:var(--aa-ink);margin-bottom:4px}
.aa-faqitem__a{color:var(--aa-ink-2,#4e483c)}

/* ---- rev 22: subcategories (main trade -> specific service) ---- */
/* Search suggestion rows carry the parent trade under the subcategory name. */
.aa-suggest .aa-sg-txt{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.aa-suggest .aa-sg-name{font-weight:600}
.aa-suggest .aa-sg-parent{font-size:.78rem;color:var(--aa-muted);font-weight:500}

/* The "which service?" step shown after tapping a main trade that owns subcategories. */
/* jul-16 UI polish: the category-select card had NO padding (content sat flush to the edges → cramped).
   Give it generous breathing room, a bigger softer search field, and roomier tiles with a hover lift. */
.aa-subcat{display:flex;flex-direction:column;gap:16px;padding:32px 30px}
@media(max-width:560px){.aa-subcat{padding:22px 18px;gap:14px}}
.aa-subcat .aa-wz-cat{font-size:1.2rem;letter-spacing:-.01em}
.aa-subcat>.aa-hint{margin:-8px 0 4px;font-size:.95rem;color:var(--aa-muted)}
.aa-subcat>.aa-input{padding:14px 16px;border-radius:12px;font-size:1rem}
.aa-subcat__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;max-height:56vh;overflow:auto;padding:4px 2px}
.aa-subcat__item{display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid var(--aa-line);border-radius:14px;background:#fff;cursor:pointer;font:inherit;font-weight:600;color:var(--aa-ink);text-align:left;transition:transform .12s ease,border-color .12s,box-shadow .12s,background .12s}
.aa-subcat__item:hover{background:var(--aa-primary-soft);border-color:var(--aa-primary);transform:translateY(-2px);box-shadow:0 10px 22px -12px rgba(194,91,63,.55)}
.aa-subcat__back{align-self:flex-start;margin-top:6px}

/* Master trade picker: show the parent trade inline on a subcategory row. */
.aa-catrow__parent{color:var(--aa-muted);font-weight:500}

/* ---- rev 42/50/54: pre-unlock decision signals on the lead card ---- */
/* How many masters already paid to contact this customer. Amber once saturated (6th+ bidder). */
.aa-leadsat{margin-top:6px;font-size:.82rem;color:var(--aa-muted);display:flex;align-items:center;gap:6px}
.aa-leadsat--warn{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:6px 9px;font-weight:600}
/* "The customer is comparing prices and may not hire." */
.aa-lead__mrnote{font-style:italic;opacity:.85}

/* ---- rev 42: in-app confirm (window.confirm can be suppressed by the browser, which would
   turn the pre-charge WARNING into a silent BLOCK on the unlock the master wanted). ---- */
.aa-modalback{position:fixed;inset:0;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}
.aa-confirm{background:#fff;border-radius:14px;box-shadow:var(--aa-shadow-lg);max-width:440px;width:100%;padding:20px}
.aa-modal__body p{margin:0 0 10px;color:var(--aa-ink);line-height:1.45}
.aa-modal__body p:first-child{font-weight:700}
.aa-modal__row{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}
.aa-modal__row .aa-btn{width:auto;min-width:120px}

/* ---- rev 34: signup consent (KVKK/GDPR) checkboxes ---- */
.aa-consentbox{display:flex;gap:9px;align-items:flex-start;margin:2px 0 10px;font-size:.86rem;color:var(--aa-muted);line-height:1.4;cursor:pointer}
.aa-consentbox input{margin-top:3px;flex:0 0 auto}
.aa-consentbox a{color:var(--aa-primary);text-decoration:underline}

/* ---- rev 8: offers on the customer request card ---- */
.aa-offerline{margin:8px 0}
.aa-offerline__btn{background:var(--aa-primary-soft);border:1px solid var(--aa-line);border-radius:9px;padding:8px 12px;font:inherit;font-weight:600;color:var(--aa-primary);cursor:pointer;width:100%;text-align:left}
.aa-offerline__hd{font-weight:700;color:var(--aa-primary);font-size:.92rem;margin-bottom:2px}
.aa-offerlist{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.aa-offerrow{display:flex;justify-content:space-between;gap:12px;padding:8px 11px;border:1px solid var(--aa-line);border-radius:8px;background:#fff;font-size:.9rem}
.aa-offerrow__name{font-weight:600;color:var(--aa-ink)}
.aa-offerrow__q{color:var(--aa-primary);font-weight:600;white-space:nowrap}
/* ---- rev 51: cancel (danger) button ---- */
.aa-btn--danger{color:#b91c1c;border-color:#fecaca}
.aa-btn--danger:hover{background:#fef2f2;border-color:#fca5a5}

/* ---- rev 47: complaint evidence gallery (admin queue) ---- */
.aa-reportgal{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.aa-reportgal__item{width:88px;height:88px;object-fit:cover;border-radius:8px;border:1px solid var(--aa-line);background:#000}

/* ---- rev 1: SMS-login separator on the auth form ---- */
.aa-authsep{text-align:center;color:var(--aa-muted);font-size:.82rem;margin:16px 0 10px;position:relative}

/* =========================================================================
 * rev 66 (jul 22): HOMEPAGE REDESIGN — client-provided HTML (hero / SOS /
 * farklar-SSS). ALL rules are scoped under `.aa-home` so the app UI (wizard,
 * panels, browse, auth, modals) is untouched. The functional core is preserved:
 * `#aa-app` still hosts the real search + live categories + wizard; `#aa-sos-btn`
 * still binds to app.js wireSos(); the FAQ/why text is still operator-editable.
 * Palette + type come from the client's design system (stone/iron/brass/rust).
 * ========================================================================= */
.aa-home{
  --hp-stone:#EEEBE2; --hp-iron-950:#1B1915; --hp-iron-900:#23211C; --hp-iron-800:#332F27; --hp-iron-700:#443E33;
  --hp-brass-400:#D2A85C; --hp-brass-500:#B8863C; --hp-rust-500:#C25B3F; --hp-rust-600:#A6452D;
  --hp-ink-900:#211E18; --hp-ink-700:#4E483C; --hp-line-dark:#4A4536; --hp-green-500:#5FA872;
  background:var(--hp-stone); color:var(--hp-ink-900);
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
.aa-home *{box-sizing:border-box}
.aa-home h1,.aa-home h2,.aa-home h3,.aa-home h4{font-family:'Space Grotesk',sans-serif;letter-spacing:-.015em;margin:0}

/* ---------- Shared dark panel + decorative rings ---------- */
.aa-home .aa-hero__inner,.aa-home .aa-sosinfo__inner,.aa-home .aa-farklar__panel{
  background:var(--hp-iron-950); border-radius:36px; position:relative; overflow:hidden;
}
.aa-home .aa-hero__inner::before,.aa-home .aa-sosinfo__inner::before,.aa-home .aa-farklar__panel::before{
  content:""; position:absolute; top:-160px; left:-120px; width:420px; height:420px; border-radius:50%;
  border:1px solid rgba(210,168,92,.15); pointer-events:none;
}
.aa-home .aa-hero__inner::after,.aa-home .aa-sosinfo__inner::after,.aa-home .aa-farklar__panel::after{
  content:""; position:absolute; bottom:-200px; right:-140px; width:420px; height:420px; border-radius:50%;
  border:1px solid rgba(194,91,63,.2); pointer-events:none;
}

/* ---------- SECTION 1: HERO ---------- */
.aa-home .aa-hero{max-width:1180px; margin:0 auto; padding:56px 28px; background:none}
.aa-home .aa-hero__inner{max-width:none; margin:0; padding:56px 44px 52px; text-align:center}
.aa-home .aa-hero__pattern{position:absolute; inset:0; width:100%; height:100%; opacity:.07; pointer-events:none}
.aa-home .aa-hero__eyebrow{
  position:relative; z-index:1; display:inline-flex; align-items:center; gap:9px; box-shadow:none;
  background:rgba(255,255,255,.06); border:1px solid rgba(210,168,92,.35); border-radius:999px;
  padding:9px 20px; margin-bottom:26px; font-size:13.5px; font-weight:500; color:#DCD6C6;
}
.aa-home .aa-hero__eyebrow b{color:var(--hp-stone); font-weight:700}
.aa-home .aa-hero__sep{color:var(--hp-brass-500)}
.aa-home .aa-hero__tag{color:var(--hp-brass-400)}
.aa-home .aa-hero__title{position:relative; z-index:1; font-size:clamp(32px,4.8vw,54px); line-height:1.06; font-weight:700; color:var(--hp-stone); margin:0 0 16px; text-wrap:balance}
.aa-home .aa-hero__subtitle{position:relative; z-index:1; font-size:17.5px; color:#C9C2B0; max-width:520px; line-height:1.6; margin:0 auto 34px}

/* Hero interactive mount (app.js renderSearch output) re-skinned to the client's look */
.aa-home .aa-hero .aa-app{position:relative; z-index:1; max-width:1040px; margin:0 auto}
.aa-home .aa-hero .aa-search{position:relative; max-width:640px; margin:0 auto}
/* rev 66f: the category grid uses the wide #aa-app width (8 across); the search box + the wizard steps
   (which render into the same #aa-app) stay a comfortable 640px, centered. */
.aa-home .aa-hero #aa-app .aa-card{max-width:640px; margin-left:auto; margin-right:auto}
.aa-home .aa-hero .aa-searchbox{
  position:relative; display:flex; align-items:center; gap:10px;
  background:var(--hp-stone); border-radius:999px; padding:6px 8px 6px 22px;
  box-shadow:0 24px 50px -28px rgba(0,0,0,.6); outline:2px solid transparent; outline-offset:2px; transition:outline-color .15s ease;
}
.aa-home .aa-hero .aa-searchbox:focus-within{outline-color:#3B82F6}
.aa-home .aa-hero .aa-searchbox__icon{position:static; width:18px; height:18px; color:var(--hp-ink-700); flex-shrink:0; margin:0}
.aa-home .aa-hero .aa-search .aa-input,
.aa-home .aa-hero .aa-searchbox .aa-input{
  border:none; outline:none; box-shadow:none; background:transparent; color:#211E18;
  font-size:15.5px; padding:13px 0; border-radius:0; flex:1; min-width:0;
}
.aa-home .aa-hero .aa-search .aa-input:focus,
.aa-home .aa-hero .aa-search .aa-input:focus-visible{border:none; box-shadow:none; outline:none}
.aa-home .aa-hero .aa-search .aa-input::placeholder{color:#8A8371}
.aa-home .aa-hero .aa-suggest{background:#fff; border:1px solid #d9d2c2; border-radius:18px; box-shadow:0 24px 50px -20px rgba(0,0,0,.5); text-align:left}

/* Popular categories — client's flat dark tiles (operator photos, set inline, still win gracefully) */
.aa-home .aa-hero .aa-cats__h{position:relative; z-index:1; font-family:'IBM Plex Mono',monospace; font-size:12.5px; font-weight:500; letter-spacing:.08em; text-transform:uppercase; color:#8F8875; margin:32px 0 20px; text-align:center}
.aa-home .aa-hero .aa-popular{position:relative; z-index:1}
/* rev 66d (client decision): homepage category tiles = FLAT DARK (no photos), sized up. This overrides
   the base photo-tile rules for the HERO ONLY (category cards elsewhere in the app are untouched).
   All !important below beat the earlier .aa-cat photo/overlay rules and the background-size:cover!important. */
/* rev 66f (client): 8 tiles per row on desktop, each a perfect SQUARE (aspect-ratio 1:1). Responsive down. */
.aa-home .aa-hero .aa-cats{grid-template-columns:repeat(4,1fr); gap:10px}
@media(min-width:560px){.aa-home .aa-hero .aa-cats{grid-template-columns:repeat(6,1fr)}}
@media(min-width:900px){.aa-home .aa-hero .aa-cats{grid-template-columns:repeat(8,1fr)}}
.aa-home .aa-hero .aa-cat{
  background:var(--hp-iron-800) !important; background-image:none !important; background-size:auto !important;
  border:1px solid var(--hp-line-dark); border-radius:16px; padding:13px; min-height:0; aspect-ratio:1 / 1; box-shadow:none;
  display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; gap:8px; overflow:hidden;
}
.aa-home .aa-hero .aa-cat::before{display:none !important;}
.aa-home .aa-hero .aa-cat:hover{background:var(--hp-iron-700) !important; border-color:var(--hp-brass-500); transform:translateY(-3px); box-shadow:none}
.aa-home .aa-hero .aa-cat__icon{position:static !important; display:flex !important; width:40px; height:40px; border-radius:11px; background:rgba(184,134,60,.16) !important; align-items:center; justify-content:center; font-size:20px; flex:0 0 auto; box-shadow:none; text-shadow:none;}
.aa-home .aa-hero .aa-cat__name{position:static !important; z-index:auto; color:#EDE9DD !important; font-family:'Outfit',sans-serif; font-size:12.5px; font-weight:600; letter-spacing:-.01em; line-height:1.25; text-align:left; text-shadow:none; overflow:hidden; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; word-break:break-word;}

/* ---------- SECTION 2: SOS ---------- */
.aa-home .aa-sosinfo{max-width:1180px; margin:0 auto; padding:8px 28px 40px; background:none; border:none; border-radius:0}
.aa-home .aa-sosinfo__inner{padding:60px 44px 56px}
.aa-home .aa-sosinfo__tag{position:relative; z-index:1; display:inline-flex; align-items:center; gap:10px; background:var(--hp-rust-500); color:#fff; font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:13px; padding:8px 18px 8px 8px; border-radius:999px; margin-bottom:24px}
.aa-home .aa-sosinfo__hole{width:26px; height:26px; border-radius:50%; background:var(--hp-iron-950); display:inline-flex; align-items:center; justify-content:center}
.aa-home .aa-sosinfo__title{position:relative; z-index:1; color:var(--hp-stone); font-size:clamp(28px,3.6vw,40px); font-weight:700; max-width:660px; line-height:1.18; margin:0 0 14px; text-wrap:balance}
.aa-home .aa-sosinfo__lead{position:relative; z-index:1; color:#C9C2B0; font-size:16.5px; max-width:640px; line-height:1.65; margin:0 0 36px}
.aa-home .aa-sosinfo__lead strong{color:#EDE9DD}
.aa-home .aa-sosinfo__explainer{position:relative; z-index:1; display:grid; grid-template-columns:.95fr 1.05fr; gap:40px; align-items:center; margin-bottom:48px}
@media(max-width:900px){.aa-home .aa-sosinfo__explainer{grid-template-columns:1fr}}
.aa-home .aa-radar{display:flex; flex-direction:column; align-items:center}
.aa-home .aa-radar svg{width:100%; max-width:380px; height:auto}
.aa-home .aa-radar__legend{display:flex; gap:20px; margin-top:18px; flex-wrap:wrap; justify-content:center}
.aa-home .aa-radar__legend span{display:flex; align-items:center; gap:7px; font-size:12.5px; color:#C9C2B0; font-family:'IBM Plex Mono',monospace}
.aa-home .aa-radar__dot{width:9px; height:9px; border-radius:50%; flex-shrink:0}
.aa-home .aa-factcards{display:flex; flex-direction:column; gap:14px}
.aa-home .aa-factcard{background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.09); border-radius:16px; padding:20px 22px; display:flex; gap:16px; align-items:flex-start}
.aa-home .aa-factcard__ic{width:42px; height:42px; border-radius:10px; background:rgba(184,134,60,.15); flex-shrink:0; display:flex; align-items:center; justify-content:center; font-size:19px}
.aa-home .aa-factcard h4{font-family:'Unbounded',sans-serif; font-size:14.5px; font-weight:600; letter-spacing:-.01em; color:var(--hp-brass-400); margin:0 0 6px}
.aa-home .aa-factcard p{margin:0; font-size:13.8px; color:#B7AF9C; line-height:1.55}
.aa-home .aa-keychain{position:relative; z-index:1; display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:14px; margin-bottom:44px}
@media(max-width:760px){.aa-home .aa-keychain{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
.aa-home .aa-keytag{display:flex; align-items:center; gap:10px; background:var(--hp-iron-800); border:1px solid var(--hp-line-dark); border-radius:16px; padding:14px 18px; font-family:'Unbounded',sans-serif; font-size:12.5px; font-weight:500; letter-spacing:-.01em; line-height:1.4; color:#EDE9DD; transition:border-color .18s ease, transform .18s ease}
.aa-home .aa-keytag:hover{border-color:var(--hp-brass-500); transform:translateY(-2px)}
.aa-home .aa-keytag__hole{width:8px; height:8px; border-radius:50%; background:var(--hp-iron-950); border:1.5px solid var(--hp-brass-400); flex-shrink:0}
.aa-home .aa-sosflow{position:relative; z-index:1; display:grid; grid-template-columns:repeat(4,1fr); gap:16px; margin-bottom:40px}
@media(max-width:900px){.aa-home .aa-sosflow{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.aa-home .aa-sosflow{grid-template-columns:1fr}}
.aa-home .aa-sosflow__step{background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.09); border-radius:14px; padding:20px}
.aa-home .aa-sosflow__num{font-family:'IBM Plex Mono',monospace; font-weight:700; font-size:22px; color:var(--hp-brass-400); margin-bottom:12px; display:block}
.aa-home .aa-sosflow__step p{margin:0; color:#EDE9DD; font-size:15px; font-weight:500; line-height:1.55}
.aa-home .aa-sosinfo__cta{position:relative; z-index:1; flex:0 0 auto; display:inline-flex; align-items:center; gap:9px; width:auto; font-family:'Space Grotesk',sans-serif; font-weight:600; font-size:16px; background:var(--hp-rust-500); color:#fff; padding:17px 32px; border-radius:999px; border:none; box-shadow:none; transition:transform .18s ease, background .18s ease}
.aa-home .aa-sosinfo__cta:hover{background:var(--hp-rust-600); transform:translateY(-2px)}

/* radar animation */
.aahp-ring-pulse{transform-origin:center; animation:aahp-pulse 2.6s ease-out infinite}
.aahp-ring-pulse.aahp-d2{animation-delay:.9s}
@keyframes aahp-pulse{0%{opacity:.55; transform:scale(.9)} 70%{opacity:0; transform:scale(1.06)} 100%{opacity:0; transform:scale(1.06)}}
.aahp-usta--near{animation:aahp-blink 1.8s ease-in-out infinite}
@keyframes aahp-blink{0%,100%{opacity:1} 50%{opacity:.45}}
@media(prefers-reduced-motion:reduce){.aahp-ring-pulse,.aahp-usta--near{animation:none}}

/* ---------- SECTION 3: FARKLAR + SSS ---------- */
.aa-home .aa-farklar{max-width:1180px; margin:0 auto; padding:8px 28px 60px}
.aa-home .aa-farklar__panel{padding:56px 44px 60px}
.aa-home .aa-farklar__eyebrow{position:relative; z-index:1; display:inline-flex; align-items:center; gap:9px; font-family:'IBM Plex Mono',monospace; font-size:12.5px; font-weight:500; letter-spacing:.06em; text-transform:uppercase; color:var(--hp-brass-400); margin-bottom:16px}
.aa-home .aa-farklar__eyebrow::before{content:""; width:20px; height:1.5px; background:var(--hp-brass-500); display:inline-block}
.aa-home .aa-farklar__title{position:relative; z-index:1; font-size:clamp(24px,2.8vw,32px); font-weight:700; color:var(--hp-stone); margin:0 0 40px; text-wrap:balance}
.aa-home .aa-farklar__why{position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:56px}
@media(max-width:760px){.aa-home .aa-farklar__why{grid-template-columns:1fr}}
.aa-home .aa-why-card{background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.09); border-radius:20px; padding:30px 32px; transition:border-color .2s ease, transform .2s ease}
.aa-home .aa-why-card:hover{border-color:var(--hp-brass-500); transform:translateY(-3px)}
.aa-home .aa-why-card h3{font-family:'Outfit',sans-serif; font-size:19px; font-weight:700; color:var(--hp-brass-400); margin:0 0 12px; letter-spacing:-.01em}
.aa-home .aa-why-card p{margin:0; font-size:15.5px; color:#C9C2B0; line-height:1.65}
.aa-home .aa-farklar__faq{position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:44px}
@media(max-width:860px){.aa-home .aa-farklar__faq{grid-template-columns:1fr}}
.aa-home .aa-faqcol__h{font-family:'Outfit',sans-serif; font-size:20px; font-weight:700; color:var(--hp-stone); margin:0 0 18px; letter-spacing:-.01em}
.aa-home .aahp-faq{background:var(--hp-iron-800); border:1px solid var(--hp-line-dark); border-radius:16px; margin-bottom:12px; padding:18px 20px; transition:border-color .2s ease}
.aa-home .aahp-faq[open]{border-color:var(--hp-brass-500)}
.aa-home .aahp-faq summary{cursor:pointer; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px; font-family:'Outfit',sans-serif; font-weight:600; font-size:15px; color:var(--hp-stone); letter-spacing:-.005em}
.aa-home .aahp-faq summary::-webkit-details-marker{display:none}
.aa-home .aahp-faq__plus{flex-shrink:0; width:24px; height:24px; border-radius:50%; border:1px solid var(--hp-line-dark); display:flex; align-items:center; justify-content:center; font-size:15px; color:var(--hp-brass-400); transition:transform .25s ease, border-color .2s ease}
.aa-home .aahp-faq[open] .aahp-faq__plus{transform:rotate(45deg); border-color:var(--hp-brass-500)}
.aa-home .aahp-faq p{margin:14px 0 0; font-size:14.5px; color:#C9C2B0; line-height:1.7}

/* narrow-screen padding relief */
@media(max-width:560px){
  .aa-home .aa-hero{padding:28px 14px}
  .aa-home .aa-hero__inner{padding:40px 22px}
  .aa-home .aa-sosinfo{padding:8px 14px 28px}
  .aa-home .aa-sosinfo__inner{padding:40px 22px}
  .aa-home .aa-farklar{padding:8px 14px 40px}
  .aa-home .aa-farklar__panel{padding:40px 22px}
}

/* =========================================================================
 * rev 66g (client): FULL-WIDTH / full-bleed homepage. Remove the light (cream)
 * gutters at left/right/around the sections — the dark sections now fill the whole
 * width edge-to-edge, while their content stays centred within ~1180px (padding
 * trick). The marketing footer is darkened too, but ONLY on the front page
 * (WordPress adds body.home there) so every other page keeps its light look.
 * These rules come LAST so they win over the earlier centred-panel rules.
 * ========================================================================= */
.aa-home{background:var(--hp-iron-950)}
.aa-home .aa-hero,.aa-home .aa-sosinfo,.aa-home .aa-farklar{max-width:none; margin:0; padding:0; background:none}
.aa-home .aa-hero__inner,.aa-home .aa-sosinfo__inner,.aa-home .aa-farklar__panel{max-width:none; margin:0; border-radius:0}
.aa-home .aa-hero__inner{padding:66px max(22px, calc((100% - 1180px) / 2)) 58px}
.aa-home .aa-sosinfo__inner{padding:66px max(22px, calc((100% - 1180px) / 2)) 60px; border-top:1px solid rgba(210,168,92,.12)}
.aa-home .aa-farklar__panel{padding:66px max(22px, calc((100% - 1180px) / 2)) 72px; border-top:1px solid rgba(210,168,92,.12)}
@media(max-width:560px){
  .aa-home .aa-hero__inner{padding:40px 16px 44px}
  .aa-home .aa-sosinfo__inner{padding:44px 16px 40px}
  .aa-home .aa-farklar__panel{padding:44px 16px 48px}
}
/* Footer dark — front page only. .aa-home's --hp-* vars don't reach the footer, so literal hexes here. */
body.home{background:#1b1915}                      /* any uncovered strip on the home page reads dark */
body.home .aa-sitefooter{margin-top:0}             /* kill the gap that let the light body show through */
body.home .aa-sitefooter{background:#1b1915}
body.home .aa-how{background:#1b1915}
body.home .aa-values{background:#201d18}
body.home .aa-section__title{color:#eeebe2}
body.home .aa-section__sub{color:#c9c2b0}
body.home .aa-how__step h3{color:#eeebe2}
body.home .aa-how__step p{color:#b7af9c}
body.home .aa-value{background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.09)}
body.home .aa-value b{color:#d2a85c}
body.home .aa-value p{color:#c9c2b0}
body.home .aa-footbar{border-top-color:rgba(255,255,255,.10)}
body.home .aa-footbar span{color:#8f8875}

/* ============================================================================
   v13 topbar — responsive (appended last so it wins the cascade)
   The header now carries the section menus (Nasıl Çalışır / AnahtarSOS / Sıkça
   Sorulanlar) alongside the auth links. On desktop they sit in one row; on
   narrower screens the nav wraps under the logo so every menu stays reachable
   (no hamburger, nothing clipped).
   ============================================================================ */
.aa-topbar__nav{flex-wrap:wrap;row-gap:8px;justify-content:flex-end}
@media(max-width:900px){
  .aa-topbar__inner{flex-wrap:wrap;row-gap:10px}
  .aa-topbar__nav{width:100%;justify-content:flex-start;gap:10px 16px}
}
@media(max-width:560px){
  .aa-topbar__inner{padding:10px 16px}
  .aa-topbar__nav{gap:9px 14px}
  .aa-topbar__link{font-size:.9rem}
  .aa-topbar__btn{margin-left:auto}          /* push the primary CTA to its own end on tiny screens */
}
