/* KinFem Professional UI — visual layer only. Keeps application behaviour intact. */
:root{
  --kf-ink:#21172c;
  --kf-muted:#71697a;
  --kf-primary:#7c3aed;
  --kf-primary-dark:#51208f;
  --kf-coral:#ff6f61;
  --kf-aqua:#24b7a5;
  --kf-sun:#f6c453;
  --kf-lilac:#eee8ff;
  --kf-blush:#fff0ed;
  --kf-mint:#e4f8f3;
  --kf-surface:#ffffff;
  --kf-canvas:#fbf9ff;
  --kf-border:rgba(57,37,76,.11);
  --kf-shadow:0 18px 55px rgba(65,37,91,.10);
  --kf-shadow-hover:0 26px 75px rgba(65,37,91,.17);
  --kf-radius:24px;
}

html{background:var(--kf-canvas)}
body:not(.admin-body){background:radial-gradient(circle at 0 0,rgba(238,232,255,.72),transparent 28rem),var(--kf-canvas);color:var(--kf-ink)}
body:not(.admin-body)::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:radial-gradient(rgba(124,58,237,.095) .65px,transparent .65px);background-size:22px 22px;mask-image:linear-gradient(to bottom,#000,transparent 46%)}

/* Typography */
body:not(.admin-body),body:not(.admin-body) :where(button,input,select,textarea){font-family:Fixel,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body:not(.admin-body) :where(h1,h2,h3){color:var(--kf-ink)}
body:not(.admin-body) :where(.hero h1,.section-title,.cta h2,.page-intro h1,.wizard-intro h1,.auth-card h1,.success-card h1,.tool-hero h1,.city-hero h1,.guides-hero h1,.legal-page>header h1,.directory-head h1,.profile-hero h1,.story-full h1){font-family:FixelDisplay,Fixel,sans-serif;font-style:normal;font-weight:700;letter-spacing:-.055em}
body:not(.admin-body) :where(.hero h1,.section-title,.cta h2) em{font-family:FixelDisplay,Fixel,sans-serif;font-style:normal;font-weight:700;background:none;color:var(--kf-primary)}
.kicker{display:inline-flex;align-items:center;gap:8px;color:var(--kf-primary);font-size:10px;font-weight:800;letter-spacing:.13em}
.kicker::before{content:"";width:18px;height:2px;border-radius:9px;background:linear-gradient(90deg,var(--kf-coral),var(--kf-primary))}

/* Header and navigation */
.site-header{position:sticky;top:12px;z-index:80;height:72px;margin-top:12px;padding:0 12px 0 20px;border:1px solid rgba(255,255,255,.82);border-radius:20px;background:rgba(255,255,255,.82);box-shadow:0 10px 40px rgba(49,29,67,.09);backdrop-filter:blur(20px) saturate(145%)}
.brand{gap:11px;color:var(--kf-ink);font-size:20px}
.brand>span{width:39px;height:39px;border-radius:13px;background:linear-gradient(145deg,var(--kf-primary),#9b52d0);box-shadow:0 8px 22px rgba(124,58,237,.28);font-family:FixelDisplay,Fixel,sans-serif;font-style:normal}
.site-header .desktop-nav{align-items:center;gap:5px}
.site-header .desktop-nav a{position:relative;padding:10px 12px;border-radius:10px;color:#665e70;font-size:11px;font-weight:650;transition:.18s ease}
.site-header .desktop-nav a:hover{background:var(--kf-lilac);color:var(--kf-primary-dark)}
.site-header .desktop-nav a[aria-current=page]{background:var(--kf-lilac);color:var(--kf-primary-dark)}
.site-header .desktop-nav a[aria-current=page]::after{content:"";position:absolute;right:12px;bottom:5px;left:12px;height:2px;border-radius:4px;background:var(--kf-primary)}
.header-cta{min-height:44px!important;background:linear-gradient(135deg,var(--kf-primary),#9344bd)!important;box-shadow:0 10px 25px rgba(124,58,237,.23)}
.header-cta:hover{box-shadow:0 15px 35px rgba(124,58,237,.34)!important}
.mobile-nav summary{border-color:var(--kf-border);background:var(--kf-lilac)}
.mobile-nav nav{border:1px solid var(--kf-border);box-shadow:var(--kf-shadow-hover)}
.site-announcement{margin-top:22px;border:0;background:linear-gradient(90deg,var(--kf-primary-dark),var(--kf-primary),#a64abb);color:#fff;box-shadow:0 10px 30px rgba(82,32,143,.16)}

/* Buttons and fields */
.button{min-height:48px;padding:13px 21px;border-radius:14px;font-size:12px;letter-spacing:-.01em}
.button.primary{background:linear-gradient(135deg,var(--kf-primary),#9748be);color:#fff;box-shadow:0 10px 25px rgba(124,58,237,.21)}
.button.dark{background:var(--kf-ink);color:#fff;box-shadow:0 10px 25px rgba(33,23,44,.15)}
.button.sage{background:linear-gradient(135deg,#168d80,var(--kf-aqua));color:#fff}
.button.ghost{border:1px solid var(--kf-border);background:rgba(255,255,255,.84);color:var(--kf-ink)}
.button.ghost:hover{border-color:rgba(124,58,237,.28);background:var(--kf-lilac);color:var(--kf-primary-dark)}
.field :where(input,select,textarea),.admin-search :where(input,select){border:1px solid rgba(65,48,78,.16);border-radius:13px;background:#fff;box-shadow:0 1px 0 rgba(255,255,255,.8),inset 0 1px 2px rgba(32,19,41,.025);transition:border-color .18s,box-shadow .18s,background .18s}
.field :where(input,select,textarea):focus,.admin-search :where(input,select):focus{border-color:rgba(124,58,237,.58);background:#fff;box-shadow:0 0 0 4px rgba(124,58,237,.10);outline:0}
.field label,.group-label{color:#493e52;font-size:11px;font-weight:700}
.checks label{border-color:var(--kf-border);background:#fff;transition:.18s}
.checks label:has(input:checked){border-color:rgba(124,58,237,.36);background:var(--kf-lilac);color:var(--kf-primary-dark)}

/* Public hero */
.refined-hero{isolation:isolate;min-height:680px;margin-top:24px;border:1px solid rgba(124,58,237,.09);border-radius:34px;background:radial-gradient(circle at 78% 18%,rgba(255,111,97,.24),transparent 26%),radial-gradient(circle at 11% 9%,rgba(255,255,255,.95),transparent 35%),linear-gradient(135deg,#f8f5ff 0%,#eee8ff 50%,#fff0ed 100%);box-shadow:0 24px 80px rgba(62,35,84,.10)}
.refined-hero::before{content:"";position:absolute;z-index:-1;inset:auto auto -90px -65px;width:270px;height:270px;border-radius:50%;background:linear-gradient(145deg,rgba(36,183,165,.19),transparent 70%);filter:blur(2px)}
.refined-hero::after{border-color:rgba(124,58,237,.08)}
.refined-hero .hero-copy{max-width:630px}
.hero h1{max-width:760px;font-size:clamp(52px,5.6vw,84px);line-height:.98}
.hero p{color:#625a6b;font-size:15px;line-height:1.85}
.hero-trust{gap:9px}
.hero-trust span{min-height:34px;padding:8px 11px;border:1px solid rgba(124,58,237,.11);border-radius:999px;background:rgba(255,255,255,.64);color:#554c5e;font-size:9px;font-weight:700;backdrop-filter:blur(10px)}
.hero-trust span:nth-child(2){border-color:rgba(36,183,165,.18);background:rgba(228,248,243,.74)}
.vault-card{border:1px solid rgba(255,255,255,.9);border-radius:24px;background:rgba(255,255,255,.88);box-shadow:0 28px 70px rgba(61,38,79,.17);backdrop-filter:blur(18px)}
.vault-card>header>span,.vault-flow>div>span{background:linear-gradient(145deg,var(--kf-lilac),#fff);color:var(--kf-primary)}
.vault-flow>div:nth-child(2)>span{background:var(--kf-mint);color:#148578}
.vault-flow>div:nth-child(3)>span{background:var(--kf-blush);color:#c64f46}
.floating-trust{border:1px solid rgba(255,255,255,.92);border-radius:16px;background:rgba(255,255,255,.91);box-shadow:0 15px 40px rgba(55,31,73,.13);backdrop-filter:blur(12px)}
.visual-halo{background:conic-gradient(from 190deg,rgba(124,58,237,.32),rgba(255,111,97,.24),rgba(36,183,165,.25),rgba(124,58,237,.32));filter:blur(.2px)}
.purpose-strip{border-block:1px solid var(--kf-border);background:#fff;color:#5e5567}
.purpose-strip i{background:linear-gradient(135deg,var(--kf-coral),var(--kf-primary))}

/* Public cards and sections */
.section-head{align-items:center}
.section-head>p{color:var(--kf-muted)}
.service-grid,.guide-grid,.city-grid,.privacy-principles{gap:16px}
.service-card,.guide-grid>a,.city-grid>a,.member-card,.listing-card,.story-grid>a,.guide-directory>a,.tool-next-step,.state-card,.panel,.legal-grid>article,.legal-grid>aside{border-color:var(--kf-border);background:rgba(255,255,255,.92);box-shadow:0 9px 30px rgba(61,36,80,.055)}
.service-card{position:relative;min-height:272px;border-radius:var(--kf-radius);overflow:hidden}
.service-card::after{content:"";position:absolute;right:-36px;bottom:-55px;width:130px;height:130px;border-radius:50%;background:var(--kf-lilac);transition:.25s}
.service-card:nth-child(2)::after{background:var(--kf-mint)}
.service-card:nth-child(3)::after{background:var(--kf-blush)}
.service-card:nth-child(4)::after{background:#fff6d9}
.service-card:hover{border-color:rgba(124,58,237,.18);box-shadow:var(--kf-shadow-hover)}
.service-card:hover::after{transform:scale(1.22)}
.service-icon{border:1px solid rgba(124,58,237,.11);border-radius:15px;background:var(--kf-lilac);color:var(--kf-primary)}
.service-card:nth-child(2) .service-icon{background:var(--kf-mint);color:#168d80}
.service-card:nth-child(3) .service-icon{background:var(--kf-blush);color:#c44d43}
.service-card:nth-child(4) .service-icon{background:#fff6d9;color:#a36e00}
.service-card h3{font-family:FixelDisplay,Fixel,sans-serif;font-size:22px}
.how-premium{border-radius:34px;background:linear-gradient(135deg,#24172d 0%,#432452 58%,#51285c 100%);box-shadow:0 25px 75px rgba(46,24,57,.16)}
.how-premium .kicker{color:#dfc8ff}.how-premium .kicker::before{background:var(--kf-coral)}
.how-premium .section-title,.how-premium h3{color:#fff}
.how-steps article{border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.065);backdrop-filter:blur(12px)}
.how-steps article>span{background:linear-gradient(145deg,var(--kf-coral),#ff9d75);color:#fff;box-shadow:0 8px 22px rgba(255,111,97,.22)}
.privacy-premium{background:linear-gradient(180deg,#f4efff,#fbf9ff)}
.privacy-principles article{border:1px solid rgba(124,58,237,.09);border-radius:22px;background:rgba(255,255,255,.83);box-shadow:0 10px 35px rgba(61,36,80,.06)}
.privacy-principles article:nth-child(2){background:linear-gradient(160deg,#fff,var(--kf-mint))}
.privacy-principles article:nth-child(3){background:linear-gradient(160deg,#fff,var(--kf-blush))}
.privacy-principles article:nth-child(4){background:linear-gradient(160deg,#fff,#fff8df)}
.guide-grid>a,.city-grid>a,.guide-directory>a,.story-grid>a{border-radius:22px;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.guide-grid>a:hover,.city-grid>a:hover,.guide-directory>a:hover,.story-grid>a:hover,.member-card:hover,.listing-card:hover{transform:translateY(-5px);border-color:rgba(124,58,237,.2);box-shadow:var(--kf-shadow-hover)}
.guide-grid>a>span,.guide-directory>a>span{background:var(--kf-lilac);color:var(--kf-primary)}
.guide-grid>a:nth-child(2)>span,.guide-directory>a:nth-child(3n+2)>span{background:var(--kf-mint);color:#168d80}
.guide-grid>a:nth-child(3)>span,.guide-directory>a:nth-child(3n)>span{background:var(--kf-blush);color:#c44d43}
.guide-tool-strip{border-color:var(--kf-border);background:#fff;box-shadow:0 12px 35px rgba(61,36,80,.055)}
.mini-tool-grid a{border-color:var(--kf-border);background:#fff}
.cta{border-radius:30px;background:radial-gradient(circle at 86% 10%,rgba(255,255,255,.15),transparent 30%),linear-gradient(120deg,var(--kf-primary-dark),var(--kf-primary) 56%,#a749bc);box-shadow:0 25px 70px rgba(82,32,143,.24)}

/* Interior pages */
:where(.page-shell,.directory-page,.profile-page,.listings-page,.guide-hub,.guide-page,.tool-page,.city-hub,.guides-page,.legal-page,.stories-page){padding-top:64px}
:where(.directory-head,.guide-hero,.tool-hero,.city-hero,.legal-page>header){position:relative}
:where(.directory-head,.guide-hero,.tool-hero,.city-hero,.legal-page>header)::after{content:"";position:absolute;z-index:-1;top:-38px;right:-4vw;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,var(--kf-lilac),transparent 70%)}
.panel{border-radius:22px}
.member-card,.listing-card{border-radius:20px}
.member-avatar,.large-avatar,.small-avatar{background:linear-gradient(145deg,var(--kf-primary),#a957b9);color:#fff;box-shadow:0 9px 25px rgba(124,58,237,.2)}
.verified-state{background:var(--kf-mint)!important;color:#14776d!important}
.quality-mini i{background:linear-gradient(90deg,var(--kf-aqua),var(--kf-primary))}
.filter-panel{border-color:var(--kf-border);border-radius:20px;background:#fff;box-shadow:var(--kf-shadow)}
.tool-hero>span{background:linear-gradient(145deg,var(--kf-lilac),#fff);color:var(--kf-primary);box-shadow:0 12px 35px rgba(124,58,237,.12)}
.tool-result{border-radius:22px;background:linear-gradient(145deg,var(--kf-primary-dark),#432452);box-shadow:0 20px 55px rgba(49,26,63,.18)}
.back-link{color:var(--kf-primary);font-weight:700}
.auth-shell,.success-page{background:radial-gradient(circle at 50% 0,var(--kf-lilac),transparent 45%),var(--kf-canvas)}
.auth-card,.success-card{border-color:var(--kf-border);border-radius:25px!important;box-shadow:var(--kf-shadow-hover)}
.wizard-shell{border:1px solid var(--kf-border);box-shadow:var(--kf-shadow-hover)}
.wizard-aside{background:radial-gradient(circle at 20% 0,rgba(255,111,97,.24),transparent 28%),linear-gradient(160deg,#2a1834,var(--kf-primary-dark))}
.wizard-aside li.active>span{background:var(--kf-coral);color:#fff;box-shadow:0 7px 20px rgba(255,111,97,.28)}
.wizard-progress i b{background:linear-gradient(90deg,var(--kf-coral),#ffc27c)}
.upload-card{border-color:rgba(124,58,237,.24);background:#fbf9ff}
.upload-card:hover{border-color:var(--kf-primary);background:var(--kf-lilac)}
.footer{margin-top:110px;padding:0;background:#21172c;color:#fff}
.footer-inner{padding-top:66px;padding-bottom:30px}
.footer .brand,.footer nav strong{color:#fff}
.footer p,.footer nav a,.footer-bottom{color:#c5bccb}
.footer nav a:hover{color:#fff}
.footer-badge{border-color:rgba(36,183,165,.25);background:rgba(36,183,165,.12);color:#b8f1e9}
.footer-bottom{border-color:rgba(255,255,255,.1)}

/* Administration — structure and information hierarchy */
.admin-body{
  --admin-bg:#f6f5fb;
  --admin-surface:#fff;
  --admin-surface-subtle:#faf9fd;
  --admin-border:#e5e0ec;
  --admin-border-strong:#d3cadd;
  --admin-ink:#24192d;
  --admin-muted:#716779;
  --admin-faint:#9c92a1;
  --admin-plum:#7135aa;
  --admin-plum-deep:#432052;
  --admin-plum-soft:#f0e8fb;
  --admin-rose:#ec6c66;
  --admin-sage:#188c7f;
  --admin-sage-soft:#e3f7f2;
  --admin-blue-soft:#e8f1ff;
  --admin-amber-soft:#fff4d6;
  --admin-red:#a94050;
  --admin-red-soft:#fff0f2;
  grid-template-columns:286px minmax(0,1fr);background:var(--admin-bg);font-family:"Noto Sans Arabic",Fixel,system-ui,sans-serif
}
.admin-body>.auth-card{grid-column:1/-1;justify-self:center;align-self:start}
.admin-sidebar{width:286px;padding:18px 14px;background:radial-gradient(circle at 80% 0,rgba(255,111,97,.23),transparent 24%),radial-gradient(circle at 0 55%,rgba(124,58,237,.18),transparent 36%),linear-gradient(180deg,#291830,#1e1425 100%);border-inline-start:0;box-shadow:-14px 0 45px rgba(29,17,35,.12)}
.admin-sidebar-brand{margin:0 4px;padding:8px 10px 20px;border-color:rgba(255,255,255,.1)}
.admin-sidebar-brand .brand>span{border-radius:12px;background:linear-gradient(145deg,var(--kf-coral),#a54dbf);box-shadow:0 9px 24px rgba(255,111,97,.20)}
.admin-sidebar-brand .brand b{font-family:FixelDisplay,Fixel,sans-serif;font-size:20px}
.admin-sidebar-brand small{margin:7px 50px 0 0;color:#bfb3c4;font-size:10px}
.admin-sidebar nav{padding:16px 0 10px}
.admin-sidebar nav section{margin-bottom:17px}
.admin-sidebar nav section>strong{padding:0 13px 7px;color:#8f8295;font-size:9px;font-weight:700;letter-spacing:.08em}
.admin-sidebar nav a{position:relative;min-height:43px;margin:2px 0;padding:10px 12px;border:1px solid transparent;border-radius:12px;color:#d1c7d5;font-size:12px;font-weight:600}
.admin-sidebar nav a .icon{width:17px;height:17px;color:#9f91a6}
.admin-sidebar nav a:hover{border-color:rgba(255,255,255,.07);background:rgba(255,255,255,.07);color:#fff;transform:translateX(-2px)}
.admin-sidebar nav a[aria-current=page]{border-color:rgba(255,255,255,.11);background:linear-gradient(90deg,rgba(124,58,237,.30),rgba(255,255,255,.08));color:#fff;box-shadow:inset -3px 0 var(--kf-coral),0 8px 25px rgba(17,9,21,.11)}
.admin-sidebar nav a[aria-current=page] .icon{color:#ffc0b9}
.admin-sidebar-user{margin:0 4px;padding:16px 10px 2px;border-color:rgba(255,255,255,.1)}
.admin-sidebar-user span{color:#fff;font-size:10px;font-weight:600}
.admin-sidebar-user small{color:#96899c;font-size:9px}
.admin-sidebar-user button{min-height:40px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.06);font-size:10px}
.admin-app{background:radial-gradient(circle at 8% 0,rgba(238,232,255,.8),transparent 26rem),linear-gradient(180deg,#fcfbff,var(--admin-bg) 260px);min-height:100vh}
.admin-topbar{height:76px;padding:0 clamp(18px,3vw,42px);border-color:rgba(57,37,76,.08);background:rgba(255,255,255,.84);box-shadow:0 6px 28px rgba(52,31,67,.055);backdrop-filter:blur(22px) saturate(150%)}
.admin-topbar-title{position:relative;padding-inline-start:14px}
.admin-topbar-title::before{content:"";position:absolute;inset-block:2px;inset-inline-start:0;width:3px;border-radius:5px;background:linear-gradient(var(--kf-coral),var(--kf-primary))}
.admin-topbar small{color:var(--admin-faint);font-size:9px}
.admin-topbar strong{color:var(--admin-ink);font-size:14px;font-weight:700}
.admin-preview-link{min-height:40px!important;padding:8px 12px!important;border-color:var(--admin-border)!important;border-radius:11px!important;background:#fff;color:var(--admin-plum)!important;box-shadow:0 5px 16px rgba(50,30,65,.05)}
.admin-theme-toggle{border-color:var(--admin-border);border-radius:11px;background:#fff;color:var(--admin-plum);box-shadow:0 5px 16px rgba(50,30,65,.05)}
.admin-menu-button{border-color:var(--admin-border);background:#fff;color:var(--admin-plum)}
.admin-shell{max-width:1540px!important;padding:40px clamp(20px,3.5vw,56px) 80px!important}
.admin-title{align-items:center;margin-bottom:28px!important}
.admin-title .kicker{color:var(--admin-plum);font-size:9px}
.admin-title h1{font-size:clamp(27px,2.4vw,38px);font-weight:800;letter-spacing:-.035em}
.admin-title p{max-width:790px;color:var(--admin-muted);font-size:11px;line-height:1.95}
.admin-card,.executive-stats article,.system-stats article,.review-queue,.review-profile,.review-decision{border:1px solid var(--admin-border);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 10px 34px rgba(52,31,67,.055)}
.admin-card{overflow:hidden}
.admin-card:hover{border-color:#ddd3e7}
.executive-stats,.admin-stats,.system-stats{gap:14px}
.executive-stats article,.admin-stats article,.system-stats article{position:relative;min-height:130px;padding:20px;overflow:hidden}
.executive-stats article::before,.admin-stats article::before,.system-stats article::before{content:"";position:absolute;inset-inline-start:0;inset-block:0;width:4px;background:linear-gradient(var(--kf-primary),#a64abb)}
.executive-stats article:nth-child(4n+2)::before,.admin-stats article:nth-child(4n+2)::before,.system-stats article:nth-child(4n+2)::before{background:linear-gradient(var(--kf-aqua),#68d6c8)}
.executive-stats article:nth-child(4n+3)::before,.admin-stats article:nth-child(4n+3)::before,.system-stats article:nth-child(4n+3)::before{background:linear-gradient(var(--kf-coral),#ff9b81)}
.executive-stats article:nth-child(4n+4)::before,.admin-stats article:nth-child(4n+4)::before,.system-stats article:nth-child(4n+4)::before{background:linear-gradient(var(--kf-sun),#ffe098)}
.executive-stats article::after,.admin-stats article::after,.system-stats article::after{content:"";position:absolute;inset-inline-end:-24px;inset-block-end:-28px;width:92px;height:92px;border-radius:50%;background:var(--admin-plum-soft);opacity:.72}
.executive-stats article:nth-child(4n+2)::after,.admin-stats article:nth-child(4n+2)::after{background:var(--admin-sage-soft)}
.executive-stats article:nth-child(4n+3)::after,.admin-stats article:nth-child(4n+3)::after{background:var(--admin-red-soft)}
.executive-stats article:nth-child(4n+4)::after,.admin-stats article:nth-child(4n+4)::after{background:var(--admin-amber-soft)}
.executive-stats small,.admin-stats small,.system-stats small{color:var(--admin-muted);font-size:10px;font-weight:650}
.executive-stats strong,.admin-stats strong,.system-stats strong{position:relative;z-index:1;margin-top:15px;font-family:FixelDisplay,Fixel,"Noto Sans Arabic",sans-serif;font-size:30px}
.dashboard-overview{gap:16px;margin:22px 0}
.dashboard-overview>.admin-card{border-radius:18px}
.dashboard-overview>.admin-card>h2{padding-bottom:14px;margin-top:0;border-bottom:1px solid var(--admin-border);font-size:15px}
.dashboard-quicklinks{gap:9px}
.dashboard-quicklinks a{position:relative;min-height:54px;padding:14px;border-color:var(--admin-border);border-radius:12px;background:var(--admin-surface-subtle);color:var(--admin-ink);font-size:10px;font-weight:650;transition:.18s}
.dashboard-quicklinks a:hover{border-color:rgba(124,58,237,.24);background:var(--admin-plum-soft);color:var(--admin-plum);transform:translateY(-2px)}
.dashboard-quicklinks a b{display:grid;place-items:center;min-width:28px;height:26px;padding:0 7px;border-radius:8px;background:#fff;color:var(--admin-plum);font-family:Fixel,sans-serif;box-shadow:0 3px 10px rgba(49,29,62,.06)}
.intervention-box{border-color:rgba(255,111,97,.20);background:linear-gradient(125deg,#fff,#fff8f6)}
.admin-table-wrap{border:1px solid var(--admin-border);border-radius:14px;background:#fff}
.admin-table th{padding:14px 16px;background:#f8f6fb;color:#766b7d;font-size:9px;font-weight:700}
.admin-table td{padding:15px 16px;color:#352a3b;font-size:10px}
.admin-table tbody tr:hover{background:#fbf9ff}
.admin-table tbody tr:last-child td{border-bottom:0}
.queue-item{min-height:66px;padding:14px 15px;border-color:var(--admin-border);background:#fff}
.queue-item:hover{background:#fbf9ff}
.queue-item.active{background:linear-gradient(90deg,var(--admin-plum-soft),#fff);box-shadow:inset -3px 0 var(--admin-plum)}
.review-toolbar{border-color:var(--admin-border);background:#fff;box-shadow:0 8px 25px rgba(52,31,67,.045)}
.data-list.compact div{border-color:var(--admin-border);border-radius:11px;background:var(--admin-surface-subtle)}
.secure-file-actions a{border-color:var(--admin-border);border-radius:11px;background:var(--admin-plum-soft);color:var(--admin-plum)}
.sticky-decisions button{border-radius:10px}
.sticky-decisions .approve{border-color:var(--admin-sage);background:var(--admin-sage);color:#fff}
.sticky-decisions .reject,.report-card form .reject{border-color:var(--admin-red);background:var(--admin-red);color:#fff}
.status-pill{min-height:27px;padding:4px 10px;font-size:9px}
.report-card.serious{border-color:rgba(169,64,80,.26)}
.report-card.serious::before{width:4px;background:linear-gradient(var(--kf-coral),var(--admin-red))}
.settings-section,.system-card,.chart-card,.seo-editor,.story-editor{border-radius:18px}
.settings-section>h2:first-child,.admin-section-head{border-color:var(--admin-border)}
.toggle-grid label,.privacy-controls label{border-color:var(--admin-border);border-radius:12px;background:var(--admin-surface-subtle)}
.toggle-grid label:has(input:checked),.privacy-controls label:has(input:checked){border-color:rgba(36,183,165,.28);background:var(--admin-sage-soft);color:#176d64}
.admin-search{padding:8px;border:1px solid var(--admin-border);border-radius:14px;background:#fff;box-shadow:0 7px 24px rgba(52,31,67,.04)}
.admin-search input,.admin-search select{min-height:43px!important;border-color:transparent!important;background:var(--admin-surface-subtle)!important}
.admin-search button{min-height:43px;border-radius:11px;background:linear-gradient(135deg,var(--admin-plum),#9748be);box-shadow:0 8px 20px rgba(113,53,170,.16)}

/* Dark administration */
.admin-body.admin-dark{--admin-bg:#17131c;--admin-surface:#241e2a;--admin-surface-subtle:#2d2633;--admin-border:#44394b;--admin-border-strong:#55465e;--admin-ink:#f6effa;--admin-muted:#b9adbf;--admin-faint:#8e8295;--admin-plum:#c69af0;--admin-plum-soft:#382747;--admin-sage-soft:#203c37;--admin-blue-soft:#233440;--admin-amber-soft:#403520;--admin-red-soft:#43262d;background:var(--admin-bg)}
.admin-dark .admin-app{background:radial-gradient(circle at 8% 0,#2b2034,transparent 25rem),var(--admin-bg)}
.admin-dark .admin-topbar{background:rgba(35,29,41,.88)}
.admin-dark :where(.admin-card,.executive-stats article,.admin-stats article,.system-stats article,.review-queue,.review-profile,.review-decision,.admin-search,.admin-table-wrap){background:var(--admin-surface);border-color:var(--admin-border)}
.admin-dark :where(.dashboard-quicklinks a,.data-list.compact div,.toggle-grid label,.privacy-controls label){background:var(--admin-surface-subtle)}
.admin-dark .admin-table th{background:#2c2532;color:var(--admin-muted)}
.admin-dark .admin-table td{color:var(--admin-ink)}
.admin-dark .admin-table tbody tr:hover{background:#2d2633}
.admin-dark :where(.admin-preview-link,.admin-theme-toggle){background:var(--admin-surface);border-color:var(--admin-border)!important}

/* Responsive refinement */
@media(max-width:1180px){.site-header .desktop-nav{gap:1px}.site-header .desktop-nav a{padding-inline:8px}.admin-body{grid-template-columns:274px minmax(0,1fr)}.admin-sidebar{width:274px}}
@media(max-width:1050px){.admin-body{display:block}.admin-sidebar{position:fixed;right:0;width:286px}.admin-shell{padding-top:30px!important}}
@media(max-width:900px){.site-header .desktop-nav{display:none}.refined-hero{grid-template-columns:1fr}.trust-visual{margin-top:20px}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){
  .site-header{top:7px;height:66px;margin-top:7px;padding:0 8px 0 12px;border-radius:17px}
  .refined-hero{margin-top:14px;border-radius:26px;padding:46px 22px 32px}
  .hero h1{font-size:47px}.hero p{font-size:14px}.hero-actions{display:grid}.hero-actions .button{width:100%}
  .service-grid{grid-template-columns:1fr}.service-card{min-height:225px}.section-title{font-size:42px}
  .footer{margin-top:80px}.admin-topbar{height:68px;padding:0 14px}.admin-shell{padding:24px 14px 58px!important}
  .admin-title{align-items:flex-start}.admin-title h1{font-size:26px}.admin-title p{font-size:10px}
  .executive-stats article,.admin-stats article,.system-stats article{min-height:112px;padding:17px}
}
@media(max-width:460px){.hero h1{font-size:42px}.hero-trust{display:grid}.service-card{padding:22px}.admin-topbar-title{display:none}.admin-preview-link{margin-inline-start:auto!important}.admin-sidebar{width:min(290px,90vw)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}

/* Consistency and contrast pass v1.1 */
:root{
  --kf-card-radius:20px;
  --kf-card-padding:26px;
  --kf-copy-size:14px;
  --kf-copy-line:1.75;
  --kf-card-title:21px;
}

/* Always-visible public text: no transparent or clipped headings. */
body:not(.admin-body) :where(h1,h2,h3,h4,strong){overflow-wrap:anywhere}
body:not(.admin-body) :where(p,li,dd,label,small){overflow-wrap:anywhere}
body:not(.admin-body) :where(.hero h1,.section-title,.cta h2) em{
  background:none!important;
  -webkit-text-fill-color:currentColor!important;
  color:var(--kf-primary)!important;
}
body:not(.admin-body) :where(.hero,.how-premium,.cta,.tool-result) :where(h1,h2,h3,strong){text-shadow:none}
.how-premium :where(.section-title,.section-title em,h3),.cta :where(h2,h2 em),.tool-result :where(h2,h3,strong){color:#fff!important;-webkit-text-fill-color:#fff!important}
body:not(.admin-body) p{color:var(--kf-muted);font-size:var(--kf-copy-size);line-height:var(--kf-copy-line)}
body:not(.admin-body) small{font-size:11px;line-height:1.6}

/* One public card system across services, tools, cities, profiles and content. */
body:not(.admin-body) :where(.service-grid,.guide-grid,.city-grid,.story-grid,.member-grid,.listing-grid,.guide-directory,.privacy-principles){align-items:stretch}
body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article){
  height:100%;
  min-height:0;
  padding:var(--kf-card-padding);
  border-radius:var(--kf-card-radius);
  overflow:visible;
}
.service-card::after{display:none}
body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article) :where(h2,h3){
  margin:16px 0 9px;
  color:var(--kf-ink);
  font-family:FixelDisplay,Fixel,sans-serif;
  font-size:var(--kf-card-title);
  font-weight:700;
  line-height:1.3;
  letter-spacing:-.025em;
}
body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article) p{
  margin:0;
  color:var(--kf-muted);
  font-size:13px;
  line-height:1.75;
}
body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a) small{
  color:#696073;
  font-size:10px;
  font-weight:650;
  line-height:1.55;
}
.service-card{display:flex;flex-direction:column}.service-card h3{margin-top:24px!important}
.service-card p{margin-top:auto!important;padding-top:2px}
.guide-grid>a,.city-grid>a,.story-grid>a{display:flex;flex-direction:column}
.guide-grid>a p,.city-grid>a p,.story-grid>a p{margin-top:auto;padding-top:4px}
.guide-grid small{margin-top:22px}
.member-card{grid-template-columns:62px minmax(0,1fr) 34px;align-content:center}
.member-card-copy h2{margin:5px 0!important;font-size:19px!important}
.member-card-copy>p{margin:0 0 9px!important;font-size:12px!important}
.member-card-copy small{font-size:10px!important}
.listing-card small{margin-top:15px}.listing-card h2{font-size:20px!important}
.listing-footer,.listing-card footer{font-size:11px;line-height:1.55}
.tag,.member-tags span{font-size:10px;line-height:1.35}

/* Unified headings and section rhythm. */
.section-head{margin-bottom:34px}
.section-title{font-size:clamp(39px,4.5vw,62px);line-height:1.02}
:where(.directory-head,.guide-hero,.tool-hero,.city-hero,.legal-page>header) p{font-size:14px!important;line-height:1.8!important}
:where(.panel,.auth-card,.success-card,.tool-next-step,.state-card){overflow:visible}
.panel>h2{margin:0 0 16px;font-size:22px;line-height:1.35}
.field small{font-size:10.5px;line-height:1.6}

/* One readable Arabic scale across the administration. */
.admin-body{font-size:13px;line-height:1.65}
.admin-body :where(h1,h2,h3,h4,p,small,strong,span,td,th,label,a,button){overflow-wrap:anywhere}
.admin-body .admin-card{overflow:visible}
.admin-title h1{font-size:clamp(28px,2.3vw,36px);line-height:1.35}
.admin-title p{margin-top:7px;color:var(--admin-muted);font-size:13px;line-height:1.8}
.admin-body .kicker{font-size:10.5px;line-height:1.55}
.admin-body :where(.dashboard-overview>.admin-card,.system-card,.settings-section,.chart-card,.report-card,.review-profile,.review-decision,.global-settings,.seo-editor,.story-editor,.admin-ticket){padding:24px}
.admin-body :where(.dashboard-overview>.admin-card,.system-card,.settings-section,.chart-card,.report-card,.review-profile,.review-decision,.global-settings,.seo-editor,.story-editor,.admin-ticket)>h2:first-child{
  padding:0 0 14px;
  margin:0 0 18px;
  border-bottom:1px solid var(--admin-border);
  color:var(--admin-ink);
  font-size:18px;
  font-weight:750;
  line-height:1.5;
}
.admin-body :where(.system-card,.settings-section,.chart-card,.report-card,.review-profile,.review-decision) h3{font-size:14px;line-height:1.5}
.admin-body :where(.system-card,.settings-section,.chart-card,.report-card,.review-profile,.review-decision)>p{
  color:var(--admin-muted);
  font-size:12.5px;
  line-height:1.8;
}
.executive-stats article,.admin-stats article,.system-stats article,.analytics-summary article,.seo-health article{height:100%;min-height:128px}
.executive-stats small,.admin-stats small,.system-stats small,.analytics-summary small,.seo-health small{font-size:11.5px;line-height:1.55}
.executive-stats strong,.admin-stats strong,.system-stats strong,.analytics-summary strong,.seo-health strong{font-size:30px;line-height:1.2}
.dashboard-overview{align-items:stretch}
.dashboard-overview>.admin-card{height:100%}
.dashboard-quicklinks a{min-height:56px;font-size:12px;line-height:1.55}
.dashboard-list a,.dashboard-list article{font-size:12px;line-height:1.55}
.dashboard-list small{font-size:10.5px}
.admin-sidebar nav a{font-size:12.5px;line-height:1.45}
.admin-sidebar nav section>strong{font-size:10px}
.admin-topbar strong{font-size:14px}.admin-topbar small{font-size:10px}
.field label,.admin-body .group-label{font-size:11.5px;line-height:1.55}
.admin-body .field :where(input,select,textarea){font-size:12.5px;line-height:1.6}
.admin-body .field small{font-size:10.5px;line-height:1.55}
.admin-table th{font-size:10.5px;line-height:1.55;white-space:nowrap}
.admin-table td{font-size:12px;line-height:1.65}
.admin-table td small{font-size:10px;line-height:1.5}
.admin-body :where(.admin-actions,.table-actions,.sticky-decisions,.report-card form) :where(button,a){min-height:38px;font-size:11px;line-height:1.4}
.status-pill{font-size:10px;line-height:1.4}
.queue-item{min-height:70px}.queue-item strong{font-size:12px;line-height:1.5}.queue-item small{font-size:10px;line-height:1.45}
.data-list.compact small{font-size:10px}.data-list.compact strong{font-size:12px;line-height:1.5}
.review-section p,.duplicate-signals p,.challenge-box,.permission-note{font-size:11.5px;line-height:1.7}
.report-card header b{font-size:12px}.report-card header small{font-size:10px}

/* Preserve visibility in dark mode. */
.admin-dark :where(h1,h2,h3,h4,strong,td,label){color:var(--admin-ink)}
.admin-dark :where(p,small,th){color:var(--admin-muted)}
.admin-dark .admin-card{overflow:visible}

@media(max-width:720px){
  :root{--kf-card-padding:21px;--kf-card-title:19px;--kf-copy-size:13px}
  .section-head{margin-bottom:26px}.section-title{font-size:39px}
  body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article){height:auto}
  .member-card{grid-template-columns:55px minmax(0,1fr) 30px}
  .admin-body :where(.dashboard-overview>.admin-card,.system-card,.settings-section,.chart-card,.report-card,.review-profile,.review-decision,.global-settings,.seo-editor,.story-editor,.admin-ticket){padding:19px}
  .admin-title p{font-size:12px}.admin-table td{font-size:11.5px}
}

/* Modern card composition v1.2 */
body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article){
  --card-accent:var(--kf-primary);
  --card-soft:var(--kf-lilac);
  position:relative;
  isolation:isolate;
  border:1px solid rgba(57,37,76,.10);
  background:linear-gradient(165deg,#fff 0%,#fff 72%,#fcfaff 100%);
  box-shadow:0 1px 2px rgba(40,24,53,.03),0 12px 32px rgba(65,37,91,.065);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}
body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article)::before{
  content:"";
  position:absolute;
  z-index:2;
  top:-1px;
  right:22px;
  left:22px;
  height:3px;
  border-radius:0 0 8px 8px;
  background:linear-gradient(90deg,var(--card-accent),rgba(255,255,255,0));
  opacity:.78;
}
body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article):hover{
  z-index:3;
  transform:translateY(-5px);
  border-color:rgba(124,58,237,.20);
  box-shadow:0 2px 4px rgba(40,24,53,.035),0 25px 60px rgba(65,37,91,.14);
}
body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article):nth-child(3n+2){--card-accent:var(--kf-aqua);--card-soft:var(--kf-mint)}
body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article):nth-child(3n){--card-accent:var(--kf-coral);--card-soft:var(--kf-blush)}
body:not(.admin-body) :where(.service-icon,.guide-grid>a>span,.guide-directory>a>span,.listing-card-head>span,.listing-card>span){
  width:50px;
  height:50px;
  border:1px solid rgba(124,58,237,.10);
  border-radius:15px;
  background:var(--card-soft);
  color:var(--card-accent);
  box-shadow:inset 0 1px rgba(255,255,255,.8),0 7px 18px rgba(65,37,91,.06);
}
.service-card h3,.guide-grid h3,.city-grid h3,.story-grid h3{position:relative;z-index:1}
.card-arrow{border-color:rgba(124,58,237,.15);background:var(--card-soft);color:var(--card-accent);transition:.18s}
.member-card:hover .card-arrow{transform:translateX(-2px);border-color:transparent;background:var(--card-accent);color:#fff}
.quality-mini{height:5px;border-radius:99px;background:#eeeaf2;overflow:hidden}
.quality-mini i{height:100%;border-radius:inherit}
.guide-tool-strip,.mini-tool-grid a,.filter-panel,.tool-next-step{
  border:1px solid rgba(57,37,76,.10);
  background:rgba(255,255,255,.92);
  box-shadow:0 12px 38px rgba(65,37,91,.065);
  backdrop-filter:blur(14px);
}

/* Executive-grade administration surfaces. */
.admin-body :where(.admin-card,.review-queue,.review-profile,.review-decision,.executive-stats article,.admin-stats article,.system-stats article,.analytics-summary article,.seo-health article){
  border-color:rgba(66,44,78,.10);
  background:linear-gradient(165deg,var(--admin-surface) 0%,var(--admin-surface) 74%,var(--admin-surface-subtle) 100%);
  box-shadow:0 1px 2px rgba(37,21,47,.025),0 12px 34px rgba(52,31,67,.06);
}
.admin-body :where(.dashboard-overview>.admin-card,.system-card,.settings-section,.chart-card,.report-card,.global-settings,.seo-editor,.story-editor,.admin-ticket){
  position:relative;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.admin-body :where(.dashboard-overview>.admin-card,.system-card,.settings-section,.chart-card,.report-card,.global-settings,.seo-editor,.story-editor,.admin-ticket)::before{
  content:"";
  position:absolute;
  top:-1px;
  right:22px;
  width:52px;
  height:3px;
  border-radius:0 0 8px 8px;
  background:linear-gradient(90deg,var(--kf-primary),var(--kf-coral));
}
.admin-body :where(.dashboard-overview>.admin-card,.system-card,.settings-section,.chart-card,.report-card,.global-settings,.seo-editor,.story-editor,.admin-ticket):hover{
  border-color:rgba(113,53,170,.18);
  box-shadow:0 2px 4px rgba(37,21,47,.025),0 20px 48px rgba(52,31,67,.09);
}
.admin-body .card-icon{
  width:44px;
  height:44px;
  border:1px solid rgba(113,53,170,.12);
  border-radius:13px;
  background:linear-gradient(145deg,var(--admin-plum-soft),var(--admin-surface));
  color:var(--admin-plum);
  box-shadow:0 8px 20px rgba(78,42,96,.07);
}
.admin-table{border-collapse:separate;border-spacing:0}
.admin-table thead th:first-child{border-start-start-radius:12px}
.admin-table thead th:last-child{border-start-end-radius:12px}
.admin-table tbody tr:nth-child(even){background:rgba(246,243,249,.52)}
.admin-table tbody tr{transition:background-color .16s ease,box-shadow .16s ease}
.admin-table tbody tr:hover{position:relative;z-index:1;background:var(--admin-plum-soft);box-shadow:inset -3px 0 var(--admin-plum)}
.admin-body :where(.button.primary,.admin-search button,.sticky-decisions .approve){
  border-color:transparent;
  background:linear-gradient(135deg,var(--admin-plum),#9544bc);
  color:#fff;
  box-shadow:0 8px 22px rgba(113,53,170,.18);
}
.admin-body :where(.button.primary,.admin-search button,.sticky-decisions .approve):hover{box-shadow:0 13px 30px rgba(113,53,170,.25)}
.review-workspace{gap:15px}
.review-toolbar{border-radius:15px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px)}
.review-profile,.review-decision{border-radius:18px}
.data-list.compact div{background:linear-gradient(145deg,var(--admin-surface-subtle),var(--admin-surface));box-shadow:inset 0 1px rgba(255,255,255,.65)}
.status-pill{box-shadow:inset 0 1px rgba(255,255,255,.65)}

@media(max-width:720px){
  body:not(.admin-body) :where(.service-card,.guide-grid>a,.city-grid>a,.story-grid>a,.member-card,.listing-card,.guide-directory>a,.privacy-principles>article):hover{transform:none}
  .admin-body :where(.dashboard-overview>.admin-card,.system-card,.settings-section,.chart-card,.report-card,.global-settings,.seo-editor,.story-editor,.admin-ticket):hover{transform:none}
}
