:root{
  --bg:#1f140e;
  --panel:rgba(45,25,15,.72);
  --panel-dark:rgba(22,11,7,.78);
  --panel-soft:rgba(255,226,190,.075);
  --line:rgba(255,234,205,.18);
  --line-strong:rgba(255,234,205,.28);
  --text:#fff7ef;
  --muted:#ead3b8;
  --accent:#f6dfbe;
  --gold:#ffcc76;
  --orange:#e99039;
  --good:#bdf7ba;
  --warn:#ffe3a0;
  --bad:#ffaaa0;
  --shadow:0 24px 70px rgba(0,0,0,.48);
  --radius:24px;
  --max:1050px;
  --pad:clamp(16px,3vw,28px);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;min-height:100%}
html,body{margin:0;padding:0;min-height:100%}
body{
  color:var(--text);
  font-family:Inter,Segoe UI,Arial,sans-serif;
  background:
    linear-gradient(rgba(21,11,6,.16),rgba(21,11,6,.66)),
    url('../assets/desert.jpg') center/cover fixed no-repeat;
  overflow-x:hidden;
}
body::before{
  content:"";position:fixed;inset:0;z-index:-2;pointer-events:none;
  background:
    radial-gradient(circle at 50% 15%,rgba(255,197,102,.30),transparent 22rem),
    radial-gradient(circle at 18% 28%,rgba(232,122,42,.18),transparent 28rem),
    linear-gradient(180deg,rgba(68,35,20,.10),rgba(8,4,2,.82));
}
body::after{
  content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.42;mix-blend-mode:screen;
  background:
    linear-gradient(90deg,rgba(255,210,140,.045),transparent 24%,rgba(0,0,0,.22)),
    repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 5px);
}
a{color:var(--gold);text-decoration:none}a:hover{text-decoration:none;color:#ffe3ad}.wrap{width:min(var(--max),calc(100% - var(--pad)*2));margin-inline:auto}.topbar{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,rgba(50,31,22,.86),rgba(35,22,16,.74));border-bottom:1px solid rgba(255,234,205,.10);box-shadow:0 8px 32px rgba(0,0,0,.28);backdrop-filter:blur(18px)}.nav{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:10px;color:var(--text);min-width:0}.brand img{width:34px;height:34px;object-fit:contain;filter:drop-shadow(0 8px 20px rgba(255,165,80,.38))}.brand strong{display:block;font-size:.95rem;line-height:1.05;letter-spacing:.01em}.brand span span,.brand .sub{display:block;color:var(--muted);font-size:.70rem;font-weight:800;line-height:1.05}.navlinks{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.navlinks a{padding:10px 12px;border:1px solid transparent;border-radius:999px;color:var(--text);font-size:.88rem;font-weight:800}.navlinks a:hover{border-color:var(--line);background:rgba(255,255,255,.06)}.hero{padding:clamp(54px,8vw,96px) 0 36px;text-align:center}.hero-logo{width:min(132px,36vw);display:block;margin:0 auto 18px;filter:drop-shadow(0 20px 48px rgba(255,178,80,.44))}.hero.compact-logo .hero-logo{display:none}.eyebrow{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);background:rgba(21,12,8,.48);border-radius:999px;padding:9px 14px;color:var(--accent);font-weight:900;font-size:.86rem;box-shadow:0 12px 38px rgba(0,0,0,.20)}.hero h1{font-size:clamp(2.4rem,6.5vw,5.15rem);line-height:.91;margin:10px auto 14px;max-width:980px;letter-spacing:-.055em;text-shadow:0 20px 58px rgba(0,0,0,.68)}.hero p{max-width:780px;margin:0 auto;color:var(--muted);font-size:clamp(1.02rem,1.9vw,1.28rem);line-height:1.55;font-weight:600}.actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:24px}.btn,button{appearance:none;border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 19px;border-radius:16px;font-weight:950;letter-spacing:-.015em;background:linear-gradient(135deg,#ffe7bd,#ffbf5e 62%,#e78b32);color:#241308;box-shadow:0 14px 38px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.38);transition:transform .18s ease,filter .18s ease}.btn.secondary,button.secondary{background:rgba(255,255,255,.08);color:var(--text);border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.btn.full,button.full{width:100%}.btn:hover,button:hover{transform:translateY(-1px);filter:brightness(1.04)}.section{padding:28px 0}.panel,.card,.auth-card{background:linear-gradient(180deg,var(--panel),var(--panel-dark));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.panel{padding:clamp(18px,2.7vw,28px)}.panel h1,.panel h2,.card h3{margin-top:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{padding:22px;min-height:120px}.card h3{font-size:1.12rem;margin-bottom:9px}.card p{margin:0;color:var(--muted);line-height:1.55;font-weight:650}.muted{color:var(--muted)}.split{display:grid;grid-template-columns:1.15fr .95fr;gap:20px;align-items:start}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpi{padding:17px;border-radius:20px;background:var(--panel-soft);border:1px solid var(--line)}.kpi small{display:block;color:var(--muted);margin-bottom:6px;font-weight:850}.kpi strong{display:block;font-size:1.7rem;line-height:1.05}.workflow{font-size:clamp(1.65rem,3vw,2.1rem);font-weight:950;letter-spacing:-.04em}.table-wrap{overflow:auto;border-radius:18px;border:1px solid var(--line);background:rgba(0,0,0,.18)}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:14px 12px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{color:var(--accent);font-size:.80rem;text-transform:uppercase;letter-spacing:.06em}td{color:var(--text)}.pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.06);font-size:.82rem;font-weight:850}.pill.good{color:var(--good)}.pill.warn{color:var(--warn)}.pill.bad{color:var(--bad)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:32px 16px}.auth-card{width:min(430px,100%);padding:32px;text-align:center}.auth-card .hero-logo{width:112px;margin-bottom:10px}input,textarea,select{width:100%;padding:14px 15px;margin:8px 0 13px;border:1px solid rgba(255,234,205,.22);border-radius:15px;background:rgba(255,247,239,.94);color:#241308;font:inherit;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.38)}textarea{min-height:134px;resize:vertical}label{display:block;text-align:left;color:var(--accent);font-weight:900;font-size:.88rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.notice,.error,.success{padding:12px 14px;border-radius:16px;margin:12px 0;border:1px solid var(--line);background:rgba(255,255,255,.06)}.error{color:var(--bad)}.success{color:var(--good)}.quote-box{font-size:2.25rem;font-weight:950;color:var(--good);margin:8px 0;letter-spacing:-.04em}.footer{padding:34px 0 54px;color:var(--muted);text-align:center;font-weight:650}.fade{animation:fadeUp .65s ease both}@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@media(max-width:900px){.grid,.grid.two,.kpis,.split,.form-grid{grid-template-columns:1fr}.nav{align-items:center}.navlinks{justify-content:flex-end}.navlinks a:not(.btn){display:none}.hero{padding-top:44px}.hero-logo{width:110px}th,td{padding:12px 10px}.brand span span{display:none}}
.map-panel{overflow:hidden}.map-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.map-header h2{margin-bottom:6px}.map-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.job-map{width:100%;height:420px;border:1px solid var(--line-strong);border-radius:20px;overflow:hidden;background:rgba(0,0,0,.28);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 42px rgba(0,0,0,.25)}.map-info{color:#241308;max-width:260px;font-family:Inter,Segoe UI,Arial,sans-serif;line-height:1.35}.map-info strong{font-size:1rem}.map-info small{display:block;margin-top:6px;color:#4a2c1b}
@media(max-width:900px){.map-header{display:block}.map-actions{justify-content:flex-start;margin-top:12px}.job-map{height:340px}}

.route-controls{margin:0 0 14px;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.055)}
.route-control-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;gap:10px;align-items:center}
.route-control-row input{margin:0}
.route-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}
.route-legend-item{display:grid;grid-template-columns:auto auto 1fr;gap:6px 8px;align-items:center;min-width:220px;padding:9px 10px;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.18);font-size:.86rem}
.route-legend-item small{grid-column:2/4;color:var(--muted);line-height:1.25}
.route-swatch{width:18px;height:6px;border-radius:999px;box-shadow:0 0 16px rgba(255,255,255,.28)}
.route-swatch.dashed{height:0;background:transparent!important;border-top:4px dashed var(--route-color);box-shadow:none}
.route-swatch.solid{height:6px;background:var(--route-color)}
.map-info button{margin-top:7px;margin-bottom:4px;padding:7px 10px;border-radius:10px;font-size:.78rem;box-shadow:none}
@media(max-width:900px){.route-control-row{grid-template-columns:1fr}.route-control-row button{width:100%}.route-legend-item{min-width:100%}}
.route-legend-item .save-route-btn{grid-column:2/4;padding:8px 10px;font-size:.82rem}

/* Itemized job cards */
.job-itemization{margin:10px 0 10px;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.055);max-width:520px}
.job-itemization>strong{display:block;margin-bottom:6px;color:var(--accent);font-size:.82rem;text-transform:uppercase;letter-spacing:.06em}
.item-row{display:flex;justify-content:space-between;gap:14px;padding:5px 0;border-top:1px solid rgba(255,234,205,.10);font-weight:800}
.item-row:first-of-type{border-top:0}.item-row span{color:var(--muted)}.item-row small{display:block;margin-top:2px;color:rgba(242,220,194,.82);font-weight:700}.item-row b{white-space:nowrap}.item-row.total{margin-top:4px;padding-top:8px;color:var(--good);border-top:1px solid rgba(201,246,197,.26);font-size:1rem}.item-row.total span{color:var(--good)}.item-row.muted-line b{color:var(--muted)}

/* Employee onboarding worker form */
.form-section-title{margin:22px 0 10px;font-size:1.08rem;color:var(--text);border-top:1px solid var(--line);padding-top:16px}
.panel form .notice{font-size:.9rem;line-height:1.45}

.icon-action{min-width:50px;min-height:46px;padding:12px 14px;font-size:1.18rem;line-height:1}.icon-action span{display:inline-flex;align-items:center;justify-content:center}.action-icons{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

/* Updated public landing page */
.section-heading{max-width:820px;margin:0 auto 22px;text-align:center}.section-heading h2{font-size:clamp(1.9rem,4vw,3.2rem);line-height:1;margin:12px 0;letter-spacing:-.045em}.section-heading p{font-size:1.02rem;line-height:1.55}.eyebrow.small{font-size:.78rem;padding:7px 11px}.hero-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:910px;margin:28px auto 0}.hero-stats div{padding:15px 14px;border-radius:20px;border:1px solid var(--line);background:rgba(18,9,5,.46);box-shadow:0 14px 42px rgba(0,0,0,.22);backdrop-filter:blur(14px)}.hero-stats strong{display:block;font-size:1.18rem;color:var(--gold);letter-spacing:-.03em}.hero-stats span{display:block;margin-top:4px;color:var(--muted);font-size:.86rem;font-weight:800}.feature-grid .card{min-height:178px}.feature-grid .card h3{font-size:1.18rem}.workflow-split{align-items:stretch}.flow-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:18px}.flow-row span{display:flex;align-items:center;justify-content:center;min-height:56px;text-align:center;padding:10px;border-radius:16px;border:1px solid var(--line);background:rgba(255,255,255,.055);font-weight:950;color:var(--accent);font-size:.84rem}.admin-callout{position:relative;overflow:hidden}.admin-callout::after{content:"";position:absolute;right:-80px;top:-90px;width:230px;height:230px;border-radius:999px;background:radial-gradient(circle,rgba(255,204,118,.24),transparent 66%);pointer-events:none}.check-list{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:10px}.check-list li{position:relative;padding-left:30px;color:var(--muted);font-weight:800;line-height:1.35}.check-list li::before{content:"✓";position:absolute;left:0;top:-1px;width:20px;height:20px;border-radius:999px;display:grid;place-items:center;background:rgba(189,247,186,.14);border:1px solid rgba(189,247,186,.28);color:var(--good);font-weight:950}.actions.left{justify-content:flex-start}.pricing-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.plan-card{padding:20px;border-radius:24px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(45,25,15,.76),rgba(22,11,7,.80));box-shadow:var(--shadow);backdrop-filter:blur(18px);display:flex;flex-direction:column;gap:12px;min-height:268px}.plan-card small{color:var(--gold);font-weight:950;text-transform:uppercase;letter-spacing:.08em}.plan-card h3{font-size:1.65rem;margin:0;letter-spacing:-.045em}.plan-card p{margin:0;color:var(--muted);line-height:1.48;font-weight:700;flex:1}.featured-plan{border-color:rgba(255,204,118,.48);background:linear-gradient(180deg,rgba(88,48,24,.86),rgba(33,16,9,.84));box-shadow:0 26px 80px rgba(0,0,0,.52),0 0 0 1px rgba(255,204,118,.15)}.subscription-admin-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:18px}.subscription-admin-strip h3{margin:0 0 6px}.subscription-admin-strip p{margin:0}.kpi-stack{display:grid;gap:12px;margin-top:18px}.kpi-stack .kpi strong{font-size:1.2rem;line-height:1.15}@media(max-width:1100px){.pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pricing-grid .plan-card:last-child{grid-column:1/-1}.flow-row{grid-template-columns:1fr 1fr}.flow-row span:last-child{grid-column:1/-1}}@media(max-width:900px){.hero-stats,.pricing-grid{grid-template-columns:1fr}.subscription-admin-strip{align-items:stretch;flex-direction:column}.subscription-admin-strip .btn{width:100%}.flow-row{grid-template-columns:1fr}.flow-row span:last-child{grid-column:auto}.section-heading{text-align:left}.hero p{font-size:1rem}}


/* Quick quote voice dictation */
.voice-icon-btn{width:46px;height:46px;padding:0;border-radius:999px;border:1px solid var(--line-strong);background:linear-gradient(180deg,rgba(255,234,205,.16),rgba(255,234,205,.07));color:var(--text);display:inline-grid;place-items:center;box-shadow:0 14px 32px rgba(0,0,0,.26);font-size:1.16rem;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}
.voice-icon-btn:hover{transform:translateY(-1px);border-color:rgba(255,204,118,.58);box-shadow:0 16px 38px rgba(0,0,0,.32),0 0 0 3px rgba(255,204,118,.08)}
.voice-icon-btn.listening{background:linear-gradient(180deg,rgba(255,106,83,.34),rgba(255,204,118,.14));border-color:rgba(255,174,122,.70);box-shadow:0 16px 42px rgba(0,0,0,.34),0 0 0 5px rgba(255,120,80,.12)}
.voice-icon-btn.disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.dictation-field{position:relative}
.dictation-field textarea{padding-right:70px;padding-bottom:66px}
.dictation-mic-inside{position:absolute;right:17px;bottom:16px;z-index:3}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:620px){.voice-label-row{align-items:flex-start;flex-direction:column}.dictation-field textarea{padding-right:70px;padding-bottom:66px}.dictation-mic-inside{right:15px;bottom:15px}}

/* Quick quote mic final placement: icon only, inside textarea bottom-right */
.textarea-mic-wrap{position:relative;}
.textarea-mic-wrap textarea{display:block;padding-right:76px!important;padding-bottom:64px!important;margin:8px 0 13px;}
.textarea-mic-wrap .dictation-mic-inside{position:absolute;right:17px;bottom:16px;z-index:5;}
.voice-status{display:none!important;}
@media(max-width:620px){.textarea-mic-wrap textarea{padding-right:74px!important;padding-bottom:64px!important}.textarea-mic-wrap .dictation-mic-inside{right:15px;bottom:16px}}

/* Mic hover placement hard lock: bottom-right inside Job Description textarea */
#quickQuoteForm .textarea-mic-wrap{
  position:relative!important;
  display:block!important;
}
#quickQuoteForm .textarea-mic-wrap textarea{
  display:block!important;
  width:100%!important;
  padding-right:82px!important;
  padding-bottom:68px!important;
}
#quickQuoteForm #voiceDictateBtn.dictation-mic-inside{
  position:absolute!important;
  right:16px!important;
  bottom:16px!important;
  left:auto!important;
  top:auto!important;
  z-index:30!important;
  margin:0!important;
}
@media(max-width:620px){
  #quickQuoteForm #voiceDictateBtn.dictation-mic-inside{
    right:14px!important;
    bottom:16px!important;
  }
}

/* Completed job reviews */
.review-panel{position:relative;overflow:hidden}
.review-panel::after{content:"";position:absolute;right:-90px;top:-110px;width:260px;height:260px;border-radius:999px;background:radial-gradient(circle,rgba(255,204,118,.22),transparent 66%);pointer-events:none}
.landing-review-list{display:grid;gap:12px;margin:18px 0;position:relative;z-index:1}
.landing-review-card,.review-card{padding:16px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.06);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.landing-review-card p,.review-card p{margin:9px 0 12px;color:var(--muted);line-height:1.48;font-weight:700}
.review-stars{color:var(--gold);font-size:1.08rem;letter-spacing:.08em;font-weight:950;text-shadow:0 8px 24px rgba(0,0,0,.35)}
.review-meta{display:grid;gap:2px}.review-meta strong{color:var(--text)}.review-meta small{color:var(--muted);font-weight:800}.review-summary-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.review-grid .review-card{min-height:210px}.review-hero-panel h1,.review-form-panel h1{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.045em;line-height:1;margin:12px 0}.review-stats-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.checkbox-line{display:flex;align-items:center;gap:10px;margin:8px 0 16px;text-align:left;color:var(--muted);font-weight:850}.checkbox-line input{width:auto;margin:0;accent-color:#ffbf5e}.review-form textarea{min-height:180px}.review-admin-list{display:grid;gap:14px}.review-admin-card{padding:16px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.045)}.review-admin-card.archived-review{opacity:.72}.subscription-card-main{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.subscription-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.review-admin-body{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.review-admin-body p{color:var(--muted);font-weight:700;line-height:1.5}.danger-action{border-color:rgba(255,120,110,.45)!important;background:rgba(120,20,20,.22)!important}@media(max-width:900px){.review-summary-row,.review-stats-row{grid-template-columns:1fr}.subscription-card-main{align-items:flex-start}.subscription-card-actions{width:100%;justify-content:flex-start}}

/* Reviews landing showcase polish */
.review-showcase-panel{
  isolation:isolate;
  padding:clamp(22px,3vw,32px);
  background:
    radial-gradient(circle at 86% 10%,rgba(255,204,118,.20),transparent 28%),
    radial-gradient(circle at 9% 88%,rgba(231,139,50,.16),transparent 34%),
    linear-gradient(180deg,rgba(54,29,17,.84),rgba(16,7,4,.88));
}
.review-showcase-panel::before{
  content:"“";
  position:absolute;
  right:24px;
  top:26px;
  z-index:-1;
  color:rgba(255,204,118,.10);
  font-size:9rem;
  line-height:.7;
  font-family:Georgia,serif;
  font-weight:900;
}
.review-showcase-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.review-showcase-panel h2{
  font-size:clamp(2rem,3.7vw,3rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin:8px 0 18px;
  max-width:430px;
}
.review-verified-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:1px solid rgba(189,247,186,.28);
  background:rgba(189,247,186,.10);
  color:var(--good);
  border-radius:999px;
  padding:7px 11px;
  font-size:.74rem;
  font-weight:950;
  white-space:nowrap;
}
.review-verified-chip::before{content:"✓";font-weight:950}
.featured-review-card{
  position:relative;
  overflow:hidden;
  padding:22px;
  border:1px solid rgba(255,234,205,.24);
  border-radius:26px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.105),rgba(255,255,255,.035)),
    rgba(20,10,6,.32);
  box-shadow:0 22px 58px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.10);
}
.featured-review-card::after{
  content:"";
  position:absolute;
  inset:auto -60px -90px auto;
  width:190px;
  height:190px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,191,94,.22),transparent 68%);
  pointer-events:none;
}
.featured-review-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  position:relative;
  z-index:1;
}
.featured-review-top span{
  color:var(--accent);
  font-weight:950;
  border:1px solid var(--line);
  background:rgba(0,0,0,.18);
  border-radius:999px;
  padding:6px 10px;
  font-size:.78rem;
}
.review-stars.large{
  font-size:1.34rem;
  letter-spacing:.11em;
}
.featured-review-quote{
  margin:20px 0 18px;
  color:var(--text)!important;
  font-size:clamp(1.12rem,2vw,1.38rem);
  line-height:1.38;
  font-weight:850!important;
  letter-spacing:-.025em;
  position:relative;
  z-index:1;
}
.review-person-row{
  display:flex;
  align-items:center;
  gap:12px;
  position:relative;
  z-index:1;
}
.review-avatar{
  width:46px;
  height:46px;
  border-radius:16px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  color:#241308;
  font-weight:950;
  font-size:1.05rem;
  background:linear-gradient(135deg,#ffe7bd,#ffbf5e 64%,#e78b32);
  box-shadow:0 12px 30px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.48);
}
.mini-review-strip{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:12px;
}
.mini-review-strip article{
  padding:13px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(0,0,0,.16);
}
.mini-review-strip p{
  margin:7px 0 0;
  color:var(--muted);
  font-size:.88rem;
  line-height:1.35;
  font-weight:800;
}
.review-scoreboard{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:12px;
  margin:14px 0 0;
}
.review-scoreboard div{
  padding:16px 17px;
  border-radius:22px;
  border:1px solid rgba(255,234,205,.20);
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.review-scoreboard small{
  display:block;
  color:var(--muted);
  font-size:.80rem;
  font-weight:950;
  margin-bottom:6px;
}
.review-scoreboard strong{
  display:block;
  color:var(--text);
  font-size:2.15rem;
  line-height:.92;
  letter-spacing:-.055em;
}
.review-scoreboard strong span{
  color:var(--muted);
  font-size:1.05rem;
  letter-spacing:-.02em;
}
.review-read-btn{
  width:100%;
  margin-top:14px;
  min-height:52px;
}
.placeholder-review-card .featured-review-quote{color:var(--muted)!important;font-size:1.05rem}
@media(max-width:900px){
  .review-showcase-head{align-items:flex-start}
  .review-verified-chip{width:max-content}
  .mini-review-strip,.review-scoreboard{grid-template-columns:1fr}
  .review-showcase-panel::before{right:12px;top:20px;font-size:6rem}
}
/* Matching quote + review landing cards */
.quote-review-split{
  grid-template-columns:1fr 1fr;
  align-items:stretch;
  gap:22px;
}
.quote-review-split > .panel{
  height:100%;
  min-height:572px;
}
.quote-showcase-panel{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(22px,3vw,32px);
  display:flex;
  flex-direction:column;
  background:
    radial-gradient(circle at 84% 12%,rgba(255,204,118,.18),transparent 30%),
    radial-gradient(circle at 10% 92%,rgba(231,139,50,.14),transparent 34%),
    linear-gradient(180deg,rgba(54,29,17,.84),rgba(16,7,4,.88));
}
.quote-showcase-panel::before{
  content:"⚡";
  position:absolute;
  right:28px;
  top:28px;
  z-index:-1;
  color:rgba(255,204,118,.10);
  font-size:7.6rem;
  line-height:.85;
  font-weight:950;
  transform:rotate(-8deg);
}
.quote-showcase-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.quote-live-chip{
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:1px solid rgba(255,204,118,.28);
  background:rgba(255,204,118,.10);
  color:var(--gold);
  border-radius:999px;
  padding:7px 11px;
  font-size:.74rem;
  font-weight:950;
  white-space:nowrap;
}
.quote-live-chip::before{content:"✓";font-weight:950;color:var(--good)}
.quote-showcase-panel h2{
  font-size:clamp(2rem,3.7vw,3rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin:8px 0 18px;
  max-width:430px;
}
.quote-intro{
  max-width:470px;
  font-size:1.02rem;
  line-height:1.42;
  margin:0 0 16px;
  font-weight:750;
}
.quote-showcase-panel form{
  display:flex;
  flex-direction:column;
  flex:1;
  margin-top:6px;
}
.quote-showcase-panel label{
  color:var(--accent);
  font-size:.88rem;
  margin-bottom:8px;
}
.quote-showcase-panel .textarea-mic-wrap{
  flex:1;
  min-height:190px;
  margin-bottom:14px;
}
.quote-showcase-panel textarea{
  min-height:190px;
  height:100%;
  border-radius:24px;
  border-color:rgba(255,234,205,.30);
  background:rgba(255,247,239,.96);
  box-shadow:0 22px 58px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.46);
}
.quote-showcase-panel .voice-icon-btn{
  width:50px;
  height:50px;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,238,217,.58));
  color:#241308;
  border-color:rgba(255,234,205,.70);
  box-shadow:0 16px 36px rgba(0,0,0,.28),0 0 0 7px rgba(255,204,118,.08),inset 0 1px 0 rgba(255,255,255,.48);
}
.quote-showcase-panel .voice-icon-btn:hover{
  border-color:rgba(255,204,118,.88);
  box-shadow:0 18px 42px rgba(0,0,0,.34),0 0 0 8px rgba(255,204,118,.12),inset 0 1px 0 rgba(255,255,255,.54);
}
.quote-showcase-panel button.full{
  min-height:52px;
  border-radius:18px;
  margin-top:auto;
  width:100%;
}
#quickQuoteResult.notice{
  margin-top:14px;
  border-radius:20px;
  background:rgba(255,255,255,.06);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
@media(max-width:900px){
  .quote-review-split{grid-template-columns:1fr;align-items:start}
  .quote-review-split > .panel{min-height:auto;height:auto}
  .quote-showcase-panel .textarea-mic-wrap{min-height:170px}
  .quote-showcase-panel textarea{min-height:170px}
}


/* Mic lower alignment patch: keep mic hovering inside the textarea with bottom spacing matching the right spacing */
#quickQuoteForm .textarea-mic-wrap #voiceDictateBtn.dictation-mic-inside{
  position:absolute!important;
  right:16px!important;
  bottom:16px!important;
  left:auto!important;
  top:auto!important;
}
@media(max-width:620px){
  #quickQuoteForm .textarea-mic-wrap #voiceDictateBtn.dictation-mic-inside{
    right:14px!important;
    bottom:14px!important;
  }
}

/* Editable website hero text card */
.editable-copy-hero{
  padding:clamp(42px,7vw,82px) 0 34px;
  text-align:left;
}
.hero-message-card{
  position:relative;
  overflow:hidden;
  width:min(980px,100%);
  margin:0 auto;
  padding:clamp(24px,4vw,44px);
  border:1px solid rgba(255,234,205,.22);
  border-radius:30px;
  background:
    radial-gradient(circle at 92% 12%,rgba(255,190,94,.18),transparent 28%),
    linear-gradient(180deg,rgba(66,35,19,.84),rgba(18,8,5,.90));
  box-shadow:0 34px 110px rgba(0,0,0,.54), inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(18px);
}
.hero-message-card::after{
  content:"";
  position:absolute;
  right:-58px;
  top:-70px;
  width:240px;
  height:240px;
  border-radius:999px;
  border:34px solid rgba(255,204,118,.08);
  transform:rotate(-14deg);
  pointer-events:none;
}
.hero-message-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:16px;
}
.hero-message-card h1{
  font-size:clamp(2.45rem,6vw,5.2rem);
  line-height:.92;
  letter-spacing:-.06em;
  max-width:920px;
  margin:12px 0 20px;
  text-shadow:0 18px 58px rgba(0,0,0,.65);
}
.hero-message-card h2{
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:.96;
  letter-spacing:-.055em;
  margin:14px 0 18px;
}
.hero-message-card p{
  max-width:760px;
  margin:0;
  color:var(--muted);
  font-size:clamp(1.02rem,1.7vw,1.25rem);
  line-height:1.5;
  font-weight:700;
}
.hero-punchline{
  margin-top:22px;
  max-width:780px;
  padding:18px 20px;
  border:1px solid rgba(255,204,118,.30);
  border-radius:22px;
  background:rgba(255,204,118,.09);
  color:var(--accent);
  font-size:clamp(1.08rem,2.2vw,1.45rem);
  line-height:1.3;
  font-weight:950;
  letter-spacing:-.025em;
}
.hero-message-card .actions{
  justify-content:flex-start;
  margin-top:24px;
}
.website-settings-hero h1{
  font-size:clamp(2rem,4vw,3.6rem);
  letter-spacing:-.05em;
  line-height:1;
  margin:12px 0;
}
.website-settings-grid{
  grid-template-columns:1.05fr .95fr;
  align-items:start;
}
.website-settings-form textarea.short-textarea{
  min-height:96px;
}
.website-settings-preview .preview-card{
  width:100%;
  margin-top:16px;
  padding:24px;
  border-radius:24px;
}
.website-settings-preview .preview-card::after{
  width:160px;
  height:160px;
  right:-48px;
  top:-55px;
  border-width:22px;
}
.website-settings-preview .preview-card p{
  font-size:1rem;
}
.website-settings-preview .preview-card .hero-punchline{
  font-size:1.08rem;
}
.preview-note{
  margin-top:14px;
  font-size:.92rem;
}
@media(max-width:900px){
  .editable-copy-hero{
    padding-top:34px;
  }
  .hero-message-card{
    border-radius:24px;
    padding:24px;
  }
  .hero-message-card h1{
    font-size:clamp(2.15rem,11vw,3.4rem);
  }
  .hero-message-card .actions .btn{
    width:100%;
  }
  .website-settings-grid{
    grid-template-columns:1fr;
  }
}


/* Landing hero invisible card + centred logo patch */
.editable-copy-hero .hero-message-card{
  background:transparent!important;
  border-color:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  overflow:visible;
  padding-top:clamp(18px,3vw,28px);
}
.editable-copy-hero .hero-message-card::after{
  display:none!important;
}
.hero-card-logo{
  display:block;
  width:min(var(--hero-logo-width,168px),42vw);
  height:auto;
  margin:0 auto 18px;
  object-fit:contain;
  filter:drop-shadow(0 22px 54px rgba(255,178,80,.48));
}
.editable-copy-hero .hero-message-head{
  justify-content:center;
  text-align:center;
}
.editable-copy-hero .hero-message-card h1,
.editable-copy-hero .hero-message-card p,
.editable-copy-hero .hero-punchline{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.editable-copy-hero .hero-message-card .actions{
  justify-content:center;
}
@media(max-width:620px){
  .hero-card-logo{width:min(var(--hero-logo-mobile-width,136px),48vw);margin-bottom:14px;}
}

/* Website settings logo resize controls */
.logo-size-settings{
  margin:18px 0 20px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(255,255,255,.045);
}
.logo-size-settings h3{
  margin:0 0 6px;
  font-size:1.05rem;
}
.logo-size-settings p{
  margin:0 0 12px;
}
.website-settings-preview .preview-logo{
  width:min(var(--hero-logo-width,168px),42vw);
  margin-bottom:16px;
}
.website-settings-preview .preview-card{
  text-align:center;
}
.website-settings-preview .preview-card .hero-message-head,
.website-settings-preview .preview-card .actions{
  justify-content:center;
}
.website-settings-preview .preview-card h2,
.website-settings-preview .preview-card p,
.website-settings-preview .preview-card .hero-punchline{
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
@media(max-width:620px){
  .website-settings-preview .preview-logo{
    width:min(var(--hero-logo-mobile-width,136px),48vw);
  }
}

/* Quote + reviews section restore override: polished equal-height cards */
#quote .quote-review-split{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:22px!important;
}
#quote .quote-review-split > .panel{
  width:100%!important;
  height:100%!important;
  min-height:572px!important;
  border-radius:30px!important;
}
#quote .quote-showcase-panel,
#quote .review-showcase-panel{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  padding:clamp(22px,3vw,32px)!important;
  background:
    radial-gradient(circle at 86% 10%,rgba(255,204,118,.20),transparent 28%),
    radial-gradient(circle at 9% 88%,rgba(231,139,50,.16),transparent 34%),
    linear-gradient(180deg,rgba(54,29,17,.84),rgba(16,7,4,.88))!important;
  box-shadow:0 28px 85px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08)!important;
}
#quote .quote-showcase-panel{
  display:flex!important;
  flex-direction:column!important;
}
#quote .quote-showcase-head,
#quote .review-showcase-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  flex-wrap:wrap!important;
  margin-bottom:10px!important;
}
#quote .quote-showcase-panel h2,
#quote .review-showcase-panel h2{
  font-size:clamp(2rem,3.7vw,3rem)!important;
  line-height:.96!important;
  letter-spacing:-.055em!important;
  margin:8px 0 18px!important;
  max-width:430px!important;
}
#quote .quote-showcase-panel form{
  display:flex!important;
  flex-direction:column!important;
  flex:1!important;
  margin-top:6px!important;
}
#quote .quote-showcase-panel .textarea-mic-wrap{
  position:relative!important;
  flex:1!important;
  min-height:190px!important;
  margin-bottom:14px!important;
}
#quote .quote-showcase-panel textarea{
  min-height:190px!important;
  height:100%!important;
  border-radius:24px!important;
  border-color:rgba(255,234,205,.30)!important;
  background:rgba(255,247,239,.96)!important;
  box-shadow:0 22px 58px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.46)!important;
  padding-right:86px!important;
  padding-bottom:78px!important;
}
#quote #quickQuoteForm .textarea-mic-wrap #voiceDictateBtn.dictation-mic-inside{
  position:absolute!important;
  right:16px!important;
  bottom:16px!important;
  left:auto!important;
  top:auto!important;
  width:50px!important;
  height:50px!important;
  z-index:10!important;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,238,217,.58))!important;
  color:#241308!important;
  border-color:rgba(255,234,205,.70)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.28),0 0 0 7px rgba(255,204,118,.08),inset 0 1px 0 rgba(255,255,255,.48)!important;
}
#quote .quote-showcase-panel button.full,
#quote .review-read-btn{
  width:100%!important;
  min-height:52px!important;
  border-radius:18px!important;
}
#quote .quote-showcase-panel button.full{margin-top:auto!important;}
#quote .featured-review-card{
  position:relative!important;
  overflow:hidden!important;
  padding:22px!important;
  border:1px solid rgba(255,234,205,.24)!important;
  border-radius:26px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.105),rgba(255,255,255,.035)),rgba(20,10,6,.32)!important;
  box-shadow:0 22px 58px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.10)!important;
}
#quote .featured-review-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
}
#quote .featured-review-top span{
  color:var(--accent)!important;
  font-weight:950!important;
  border:1px solid var(--line)!important;
  background:rgba(0,0,0,.18)!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  font-size:.78rem!important;
}
#quote .review-stars.large{
  font-size:1.34rem!important;
  letter-spacing:.11em!important;
}
#quote .featured-review-quote{
  margin:20px 0 18px!important;
  color:var(--text)!important;
  font-size:clamp(1.12rem,2vw,1.38rem)!important;
  line-height:1.38!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
}
#quote .review-person-row{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
#quote .review-avatar{
  width:46px!important;
  height:46px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  flex:0 0 auto!important;
  color:#241308!important;
  font-weight:950!important;
  font-size:1.05rem!important;
  background:linear-gradient(135deg,#ffe7bd,#ffbf5e 64%,#e78b32)!important;
}
#quote .review-scoreboard{
  display:grid!important;
  grid-template-columns:1.15fr .85fr!important;
  gap:12px!important;
  margin:14px 0 0!important;
}
#quote .review-scoreboard div{
  padding:16px 17px!important;
  border-radius:22px!important;
  border:1px solid rgba(255,234,205,.20)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035))!important;
}
#quote .review-scoreboard small{
  display:block!important;
  color:var(--muted)!important;
  font-size:.80rem!important;
  font-weight:950!important;
  margin-bottom:6px!important;
}
#quote .review-scoreboard strong{
  display:block!important;
  color:var(--text)!important;
  font-size:2.15rem!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
}
#quote .review-read-btn{
  margin-top:14px!important;
}
@media(max-width:900px){
  #quote .quote-review-split{grid-template-columns:1fr!important;align-items:start!important;}
  #quote .quote-review-split > .panel{min-height:auto!important;height:auto!important;}
  #quote .review-scoreboard{grid-template-columns:1fr!important;}
}


/* Website Settings layout fit/polish patch */
.website-settings-page .section{padding-top:22px}
.website-settings-page .website-settings-hero{max-width:980px;padding:22px 26px;border-radius:24px;margin-bottom:18px}
.website-settings-page .website-settings-hero h1{font-size:clamp(2rem,3.8vw,3rem);margin:8px 0 8px}
.website-settings-page .website-settings-hero p{max-width:820px;margin:0;line-height:1.45}
.website-settings-page .website-settings-hero .actions{margin-top:16px}
.website-settings-page .website-settings-grid{display:grid!important;grid-template-columns:minmax(340px,400px) minmax(0,1fr)!important;gap:18px!important;align-items:start!important}
.website-settings-page .website-settings-form,.website-settings-page .website-settings-preview{min-width:0}
.website-settings-page .website-settings-form{position:sticky;top:82px;max-height:calc(100vh - 100px);overflow:auto;padding:18px;border-radius:22px;scrollbar-width:thin}
.website-settings-page .website-settings-form h2{font-size:1.35rem;line-height:1.08;margin-bottom:8px}
.website-settings-page .website-settings-form h3{font-size:.96rem}
.website-settings-page .website-settings-form p{font-size:.86rem;line-height:1.36}
.website-settings-page .website-settings-form label{font-size:.78rem;margin-top:4px}
.website-settings-page .website-settings-form input,.website-settings-page .website-settings-form textarea,.website-settings-page .website-settings-form select{padding:10px 11px;margin:6px 0 10px;border-radius:12px;font-size:.92rem}
.website-settings-page .website-settings-form textarea{min-height:92px}
.website-settings-page .website-settings-form textarea.short-textarea{min-height:74px!important}
.website-settings-page .website-settings-form .form-grid{gap:10px}
.website-settings-page .logo-size-settings{margin:10px 0 14px;padding:12px;border-radius:16px}
.website-settings-page .logo-size-settings h3{margin-bottom:4px}
.website-settings-page .logo-size-settings p{margin-bottom:8px}
.website-settings-page .website-settings-form button.full{margin-top:4px;min-height:46px}
.website-settings-page .website-settings-preview{padding:18px;border-radius:24px}
.website-settings-page .website-settings-preview>.eyebrow{margin-bottom:12px}
.website-settings-page .website-settings-preview .preview-card{width:100%;min-height:min(720px,calc(100vh - 210px));margin:0;padding:clamp(22px,3vw,34px);border-radius:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;background:linear-gradient(180deg,rgba(44,22,12,.58),rgba(16,7,4,.66));border:1px solid rgba(255,234,205,.20)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 22px 70px rgba(0,0,0,.36)!important;overflow:hidden}
.website-settings-page .website-settings-preview .preview-card::after{display:none!important}
.website-settings-page .website-settings-preview .preview-logo{width:min(var(--hero-logo-width,168px),58%,380px)!important;max-height:min(360px,40vh);object-fit:contain;margin:0 auto clamp(18px,3vw,28px)!important;filter:drop-shadow(0 18px 42px rgba(255,178,80,.38))}
.website-settings-page .website-settings-preview .preview-card .eyebrow{margin-bottom:10px}
.website-settings-page .website-settings-preview .preview-card h2{max-width:820px;font-size:clamp(2.25rem,4.3vw,4.5rem);line-height:.93;margin:8px auto 14px}
.website-settings-page .website-settings-preview .preview-card p{max-width:780px;font-size:clamp(.96rem,1.15vw,1.12rem);line-height:1.42}
.website-settings-page .website-settings-preview .preview-card .hero-punchline{max-width:760px;margin-top:14px;padding:14px 16px;font-size:clamp(.96rem,1.25vw,1.12rem)}
.website-settings-page .website-settings-preview .preview-card .actions{margin-top:18px}
.website-settings-page .preview-note{margin:12px 0 0;font-size:.86rem;text-align:center}
@media(max-width:1120px){.website-settings-page .website-settings-grid{grid-template-columns:1fr!important}.website-settings-page .website-settings-form{position:static;max-height:none}.website-settings-page .website-settings-preview .preview-card{min-height:620px}}
@media(max-width:620px){.website-settings-page .website-settings-hero,.website-settings-page .website-settings-form,.website-settings-page .website-settings-preview{padding:16px;border-radius:20px}.website-settings-page .website-settings-form .form-grid{grid-template-columns:1fr}.website-settings-page .website-settings-preview .preview-card{min-height:auto;padding:20px}.website-settings-page .website-settings-preview .preview-logo{width:min(var(--hero-logo-mobile-width,136px),64vw,280px)!important;max-height:260px}}

/* Website Settings card-size match patch */
.website-settings-page .website-settings-grid{
  align-items:stretch!important;
}
.website-settings-page .website-settings-form,
.website-settings-page .website-settings-preview{
  height:100%;
}
.website-settings-page .website-settings-form{
  position:relative!important;
  top:auto!important;
  max-height:none!important;
  overflow:visible!important;
  display:flex;
  flex-direction:column;
}
.website-settings-page .website-settings-form button.full{
  margin-top:auto;
}
.website-settings-page .website-settings-preview{
  display:flex;
  flex-direction:column;
}
.website-settings-page .website-settings-preview .preview-card{
  flex:1 1 auto;
  min-height:0!important;
}
.website-settings-page .website-settings-preview .preview-note{
  margin-top:16px;
}
@media(max-width:1120px){
  .website-settings-page .website-settings-form,
  .website-settings-page .website-settings-preview{
    height:auto;
  }
  .website-settings-page .website-settings-form{
    display:block;
  }
  .website-settings-page .website-settings-preview .preview-card{
    min-height:620px!important;
  }
}
@media(max-width:620px){
  .website-settings-page .website-settings-preview .preview-card{
    min-height:auto!important;
  }
}

/* Website Settings preview badge center patch */
.website-settings-page .website-settings-preview > .eyebrow{
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}


/* Website Settings hero width alignment patch */
.website-settings-page .website-settings-hero{
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}

/* Website Settings centered hero heading patch */
.website-settings-page .website-settings-hero{
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
.website-settings-page .website-settings-hero .eyebrow,
.website-settings-page .website-settings-hero h1,
.website-settings-page .website-settings-hero p{
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.website-settings-page .website-settings-hero .actions,
.website-settings-page .website-settings-hero .actions.left{
  width:100%!important;
  justify-content:center!important;
  align-items:center!important;
}

/* Website Settings live preview auto-scale patch */
.website-settings-page .website-settings-preview .preview-card{
  position:relative!important;
  display:block!important;
  overflow:hidden!important;
}
.website-settings-page .website-settings-preview .preview-scale-stage{
  position:absolute!important;
  inset:clamp(16px,2.2vw,28px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  pointer-events:none;
}
.website-settings-page .website-settings-preview .preview-scale-canvas{
  width:760px!important;
  max-width:none!important;
  flex:0 0 auto!important;
  text-align:center!important;
  transform:scale(var(--preview-scale,1));
  transform-origin:center center!important;
  will-change:transform;
}
.website-settings-page .website-settings-preview .preview-scale-canvas .preview-logo{
  display:block!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.website-settings-page .website-settings-preview .preview-scale-canvas .eyebrow,
.website-settings-page .website-settings-preview .preview-scale-canvas h2,
.website-settings-page .website-settings-preview .preview-scale-canvas p,
.website-settings-page .website-settings-preview .preview-scale-canvas .hero-punchline{
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.website-settings-page .website-settings-preview .preview-scale-canvas .actions,
.website-settings-page .website-settings-preview .preview-scale-canvas .actions.left{
  justify-content:center!important;
}
@media(max-width:620px){
  .website-settings-page .website-settings-preview .preview-scale-stage{
    inset:14px!important;
  }
  .website-settings-page .website-settings-preview .preview-scale-canvas{
    width:680px!important;
  }
}

/* Pro image upload teaser button inside Quick AI textarea */
#quote .textarea-mic-wrap .fake-upload-pro-btn{
  position:absolute!important;
  left:16px!important;
  bottom:16px!important;
  width:50px!important;
  height:50px!important;
  z-index:10!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  text-decoration:none!important;
  font-size:1.14rem!important;
  line-height:1!important;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,238,217,.58))!important;
  color:#241308!important;
  border:1px solid rgba(255,234,205,.70)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.28),0 0 0 7px rgba(255,204,118,.08),inset 0 1px 0 rgba(255,255,255,.48)!important;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;
}
#quote .textarea-mic-wrap .fake-upload-pro-btn:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(255,204,118,.88)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.34),0 0 0 8px rgba(255,204,118,.12),inset 0 1px 0 rgba(255,255,255,.54)!important;
}
@media(max-width:620px){
  #quote .textarea-mic-wrap .fake-upload-pro-btn{left:14px!important;bottom:14px!important;}
}

/* Public Pro upgrade page */
.pro-upgrade-page{padding-top:110px;padding-bottom:56px;}
.pro-upgrade-hero{max-width:940px;margin:0 auto;padding:clamp(24px,4vw,44px);text-align:center;overflow:hidden;position:relative;isolation:isolate;}
.pro-upgrade-hero::after{content:"📷";position:absolute;right:28px;top:20px;font-size:8rem;line-height:1;color:rgba(255,204,118,.07);z-index:-1;transform:rotate(-8deg);}
.pro-upgrade-hero h1{font-size:clamp(2.2rem,5vw,4.3rem);line-height:.94;letter-spacing:-.065em;margin:18px auto 16px;max-width:760px;}
.pro-upgrade-hero p{max-width:760px;margin:0 auto;color:var(--muted);font-size:1.05rem;line-height:1.55;font-weight:750;}
.pro-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0;}
.pro-feature-grid article{padding:18px;border-radius:22px;border:1px solid rgba(255,234,205,.18);background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.032));text-align:left;}
.pro-feature-grid strong{display:block;color:var(--text);font-size:1rem;margin-bottom:7px;}
.pro-feature-grid span{display:block;color:var(--muted);font-weight:750;line-height:1.42;font-size:.92rem;}
.pro-price-card{max-width:520px;margin:0 auto;padding:22px;border-radius:26px;border:1px solid rgba(255,204,118,.34);background:linear-gradient(180deg,rgba(72,38,20,.72),rgba(18,8,5,.78));box-shadow:0 24px 72px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08);}
.pro-price-card small{display:inline-flex;border-radius:999px;padding:7px 11px;border:1px solid rgba(255,204,118,.30);background:rgba(255,204,118,.10);color:var(--gold);font-weight:950;}
.pro-price-card h2{font-size:clamp(1.8rem,3vw,2.6rem);margin:14px 0 8px;letter-spacing:-.05em;}
.pro-price-card p{font-size:.98rem;margin:0 auto 18px;}
.pro-checkout-btn{width:100%;justify-content:center;min-height:54px;}
.pro-upgrade-actions{justify-content:center;}
.pro-upgrade-actions .btn{min-width:170px;}
@media(max-width:760px){.pro-feature-grid{grid-template-columns:1fr}.pro-upgrade-page{padding-top:92px}.pro-upgrade-actions{align-items:stretch;flex-direction:column}.pro-upgrade-actions .btn{width:100%;}}


/* Admin Twilio balance readout */
.admin-dashboard-kpis{
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr));
}
.twilio-balance-kpi{
  position:relative;
  overflow:hidden;
}
.twilio-balance-kpi::after{
  content:"";
  position:absolute;
  right:-45px;
  top:-55px;
  width:130px;
  height:130px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,204,118,.18),transparent 68%);
  pointer-events:none;
}
.twilio-balance-note{
  margin-top:8px;
  font-size:.78rem;
  line-height:1.35;
}
.twilio-balance-refresh{
  margin-top:10px;
}
.btn.tiny,
button.tiny{
  padding:8px 11px;
  border-radius:12px;
  font-size:.78rem;
}

/* Admin OpenAI API spend readout */
.openai-usage-kpi{
  position:relative;
  overflow:hidden;
}
.openai-usage-kpi::after{
  content:"AI";
  position:absolute;
  right:-18px;
  top:-25px;
  font-size:4.4rem;
  line-height:1;
  font-weight:950;
  letter-spacing:-.08em;
  color:rgba(255,204,118,.09);
  pointer-events:none;
}
.openai-usage-note{
  margin-top:8px;
  font-size:.78rem;
  line-height:1.35;
}
.openai-usage-refresh{
  margin-top:10px;
}
.openai-usage-diagnostic{
  padding-top:6px;
  border-top:1px solid rgba(255,255,255,.10);
}

/* OpenAI Platform billing-style readout */
.openai-platform-kpi{
  min-width:260px;
}
.openai-platform-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin:6px 0 10px;
}
.openai-platform-metric{
  padding:12px 12px;
  border-radius:16px;
  border:1px solid rgba(255,234,205,.14);
  background:rgba(255,255,255,.055);
  min-width:0;
}
.openai-platform-metric span{
  display:block;
  color:var(--muted);
  font-size:.78rem;
  font-weight:850;
  margin-bottom:5px;
}
.openai-platform-metric strong{
  display:block;
  font-size:1.3rem;
  line-height:1.05;
  letter-spacing:-.04em;
  white-space:nowrap;
}
@media(max-width:620px){
  .openai-platform-grid{grid-template-columns:1fr;}
}

/* Admin dashboard KPI layout correction: make Twilio/OpenAI readouts match the other stat cards */
.admin-dashboard-kpis{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
  margin-bottom:22px!important;
}
.admin-dashboard-kpis .kpi{
  min-height:190px!important;
  padding:18px!important;
  border-radius:24px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  background:linear-gradient(180deg,rgba(70,38,22,.74),rgba(24,10,6,.82))!important;
  border:1px solid rgba(255,234,205,.18)!important;
  box-shadow:0 20px 58px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.07)!important;
  backdrop-filter:blur(14px)!important;
  overflow:hidden!important;
}
.admin-dashboard-kpis .kpi small{
  color:rgba(255,234,205,.76)!important;
  font-size:.88rem!important;
  font-weight:950!important;
  margin-bottom:8px!important;
}
.admin-dashboard-kpis .kpi > strong{
  color:#fff6ea!important;
  font-size:2rem!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
  margin-bottom:6px!important;
}
.admin-dashboard-kpis .kpi .muted{
  color:rgba(255,234,205,.78)!important;
  line-height:1.32!important;
}
.admin-dashboard-kpis .pill{
  width:max-content!important;
  max-width:100%!important;
  white-space:normal!important;
}
.twilio-balance-kpi,
.openai-platform-kpi{
  min-width:0!important;
}
.twilio-balance-refresh,
.openai-usage-refresh{
  margin-top:auto!important;
  padding-top:12px!important;
}
.twilio-balance-note,
.openai-usage-note{
  font-size:.80rem!important;
  line-height:1.38!important;
}
.openai-platform-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin:4px 0 10px!important;
}
.openai-platform-metric{
  min-width:0!important;
  padding:12px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035))!important;
  border:1px solid rgba(255,234,205,.16)!important;
}
.openai-platform-metric span{
  display:block!important;
  color:rgba(255,234,205,.74)!important;
  font-size:.76rem!important;
  font-weight:950!important;
  margin-bottom:6px!important;
}
.openai-platform-metric strong{
  display:block!important;
  color:#fff6ea!important;
  font-size:clamp(1.22rem,1.65vw,1.58rem)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.openai-usage-kpi::after{
  right:16px!important;
  top:10px!important;
  font-size:6rem!important;
  color:rgba(255,204,118,.055)!important;
}
.twilio-balance-kpi::after{
  right:-35px!important;
  top:-45px!important;
  width:145px!important;
  height:145px!important;
  background:radial-gradient(circle,rgba(255,204,118,.15),transparent 68%)!important;
}
.btn.tiny,
button.tiny{
  min-height:38px!important;
  padding:9px 13px!important;
}
@media(max-width:1120px){
  .admin-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:680px){
  .admin-dashboard-kpis{grid-template-columns:1fr!important;}
  .admin-dashboard-kpis .kpi{min-height:auto!important;}
  .openai-platform-grid{grid-template-columns:1fr!important;}
}

/* Admin dashboard merged operations snapshot card */
.admin-ops-summary-card{
  grid-column:span 2!important;
  position:relative!important;
  isolation:isolate!important;
  min-height:250px!important;
  background:
    radial-gradient(circle at 92% 12%,rgba(255,204,118,.16),transparent 35%),
    linear-gradient(180deg,rgba(78,42,23,.82),rgba(22,9,5,.88))!important;
}
.admin-ops-summary-card::after{
  content:"";
  position:absolute;
  right:-70px;
  top:-85px;
  width:230px;
  height:230px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,204,118,.15),transparent 67%);
  pointer-events:none;
  z-index:-1;
}
.admin-ops-summary-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:16px;
}
.admin-ops-summary-head small{
  color:rgba(255,234,205,.72)!important;
  font-size:.84rem!important;
  font-weight:950!important;
  margin:0 0 7px!important;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.admin-ops-summary-head strong{
  display:block!important;
  color:#fff6ea!important;
  font-size:clamp(1.8rem,3vw,2.65rem)!important;
  line-height:.95!important;
  letter-spacing:-.06em!important;
  margin:0!important;
}
.admin-ops-summary-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:auto;
}
.admin-ops-summary-grid article{
  min-width:0;
  padding:15px 14px;
  border-radius:20px;
  border:1px solid rgba(255,234,205,.15);
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.admin-ops-summary-grid span{
  display:block;
  color:rgba(255,234,205,.76);
  font-size:.82rem;
  font-weight:950;
  line-height:1.15;
  margin-bottom:8px;
}
.admin-ops-summary-grid strong{
  display:block;
  color:#fff6ea;
  font-size:clamp(1.75rem,3.2vw,2.55rem)!important;
  line-height:.9!important;
  letter-spacing:-.055em!important;
  margin:0 0 9px!important;
}
.admin-ops-summary-grid em{
  display:block;
  color:rgba(255,234,205,.70);
  font-style:normal;
  font-weight:750;
  font-size:.82rem;
  line-height:1.25;
}
@media(max-width:1120px){
  .admin-ops-summary-card{grid-column:1/-1!important;}
  .admin-ops-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:620px){
  .admin-ops-summary-head{flex-direction:column;align-items:flex-start;}
  .admin-ops-summary-grid{grid-template-columns:1fr;}
}

/* Admin dashboard merged website running costs card */
.admin-cost-summary-card{
  grid-column:span 1!important;
  position:relative!important;
  isolation:isolate!important;
  min-height:250px!important;
  background:
    radial-gradient(circle at 88% 10%,rgba(255,204,118,.18),transparent 35%),
    linear-gradient(180deg,rgba(78,42,23,.82),rgba(22,9,5,.88))!important;
}
.admin-cost-summary-card::after{
  content:"$";
  position:absolute;
  right:-22px;
  top:-32px;
  font-size:7rem;
  line-height:1;
  font-weight:950;
  letter-spacing:-.08em;
  color:rgba(255,204,118,.055);
  pointer-events:none;
  z-index:-1;
}
.admin-cost-summary-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.admin-cost-summary-head small{
  color:rgba(255,234,205,.72)!important;
  font-size:.84rem!important;
  font-weight:950!important;
  margin:0 0 7px!important;
  text-transform:uppercase;
  letter-spacing:.045em;
}
.admin-cost-summary-head strong{
  display:block!important;
  color:#fff6ea!important;
  font-size:clamp(1.65rem,2.35vw,2.2rem)!important;
  line-height:.95!important;
  letter-spacing:-.055em!important;
  margin:0!important;
}
.admin-cost-summary-grid{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  margin:0 0 12px!important;
}
.admin-cost-summary-grid .cost-metric{
  min-width:0!important;
  padding:13px 14px!important;
  border-radius:18px!important;
  border:1px solid rgba(255,234,205,.15)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
}
.admin-cost-summary-grid .cost-metric span{
  display:block!important;
  color:rgba(255,234,205,.74)!important;
  font-size:.78rem!important;
  font-weight:950!important;
  margin-bottom:6px!important;
}
.admin-cost-summary-grid .cost-metric strong{
  display:block!important;
  color:#fff6ea!important;
  font-size:clamp(1.28rem,2vw,1.7rem)!important;
  line-height:1.02!important;
  letter-spacing:-.045em!important;
  margin:0 0 7px!important;
  overflow-wrap:anywhere!important;
}
.admin-cost-summary-grid .cost-metric em{
  display:inline-flex!important;
  font-style:normal!important;
  color:rgba(255,234,205,.72)!important;
  font-weight:850!important;
  font-size:.78rem!important;
  line-height:1.2!important;
}
.admin-cost-summary-grid .cost-twilio-main strong{
  font-size:clamp(1.55rem,2.2vw,2rem)!important;
}
.admin-cost-status-row{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px 10px!important;
  align-items:center!important;
  padding-top:2px!important;
}
.cost-status-note,
.admin-cost-note{
  font-size:.80rem!important;
  line-height:1.35!important;
  color:rgba(255,234,205,.76)!important;
}
.admin-cost-note{
  margin-top:9px!important;
}
.admin-cost-diagnostic{
  padding-top:7px!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
}
.admin-cost-actions{
  margin-top:auto!important;
  padding-top:12px!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.admin-cost-actions .btn.tiny{
  min-height:36px!important;
}
@media(min-width:1121px){
  .admin-cost-summary-card{min-height:250px!important;}
}
@media(max-width:1120px){
  .admin-cost-summary-card{grid-column:1/-1!important;}
  .admin-cost-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:760px){
  .admin-cost-summary-head{flex-direction:column;align-items:flex-start;}
  .admin-cost-summary-grid{grid-template-columns:1fr!important;}
}


/* Admin dashboard single professional overview card */
.admin-unified-overview-card{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  border-radius:28px!important;
  padding:clamp(20px,2.8vw,32px)!important;
  border:1px solid rgba(255,234,205,.18)!important;
  background:
    radial-gradient(circle at 83% 7%,rgba(255,204,118,.16),transparent 28%),
    radial-gradient(circle at 9% 100%,rgba(255,153,55,.10),transparent 30%),
    linear-gradient(135deg,rgba(78,42,23,.86),rgba(26,10,5,.92) 58%,rgba(13,5,3,.94))!important;
  box-shadow:0 28px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.08)!important;
  backdrop-filter:blur(14px)!important;
}
.admin-unified-overview-card::after{
  content:"";
  position:absolute;
  inset:auto -110px -150px auto;
  width:360px;
  height:360px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,204,118,.10),transparent 68%);
  pointer-events:none;
  z-index:-1;
}
.admin-unified-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:18px;
  margin-bottom:20px;
}
.admin-unified-head small{
  display:block;
  color:rgba(255,234,205,.72);
  font-size:.86rem;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.055em;
  margin-bottom:8px;
}
.admin-unified-head h2{
  color:#fff6ea;
  font-size:clamp(2.05rem,4.2vw,4rem);
  line-height:.9;
  letter-spacing:-.07em;
  margin:0 0 10px;
}
.admin-unified-head p{
  max-width:760px;
  margin:0;
  line-height:1.42;
  font-weight:750;
}
.admin-unified-status-pills{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.admin-unified-sections{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(360px,.9fr);
  gap:16px;
  align-items:stretch;
}
.admin-unified-section{
  min-width:0;
  border-radius:24px;
  border:1px solid rgba(255,234,205,.14);
  background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.026));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
  padding:18px;
}
.admin-unified-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  padding-bottom:13px;
  margin-bottom:14px;
  border-bottom:1px solid rgba(255,234,205,.12);
}
.admin-unified-section-head span{
  color:#fff6ea;
  font-weight:950;
  font-size:1.05rem;
  letter-spacing:-.025em;
}
.admin-unified-section-head small{
  color:rgba(255,234,205,.64);
  font-weight:850;
  text-align:right;
  line-height:1.25;
}
.admin-unified-metric-grid{
  display:grid;
  gap:12px;
}
.admin-unified-ops-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.admin-unified-cost-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.admin-unified-metric-grid article{
  min-width:0;
  padding:15px;
  border-radius:20px;
  border:1px solid rgba(255,234,205,.15);
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.032));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.admin-unified-metric-grid article span{
  display:block;
  color:rgba(255,234,205,.73);
  font-size:.82rem;
  font-weight:950;
  line-height:1.15;
  margin-bottom:8px;
}
.admin-unified-metric-grid article strong{
  display:block;
  color:#fff6ea;
  font-size:clamp(1.8rem,3.4vw,2.7rem);
  line-height:.9;
  letter-spacing:-.06em;
  margin:0 0 10px;
  overflow-wrap:anywhere;
}
.admin-unified-cost-grid article strong{
  font-size:clamp(1.35rem,2.1vw,2rem);
  line-height:1.02;
}
.admin-unified-metric-grid article em{
  display:block;
  color:rgba(255,234,205,.70);
  font-style:normal;
  font-weight:780;
  font-size:.82rem;
  line-height:1.25;
}
.admin-unified-cost-grid article em.pill{
  display:inline-flex;
  margin-top:2px;
}
.admin-unified-billing-status{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 10px;
  margin-top:13px;
  padding-top:13px;
  border-top:1px solid rgba(255,234,205,.11);
}
.admin-unified-billing-status .muted,
.admin-unified-cost-note{
  color:rgba(255,234,205,.75)!important;
  font-size:.82rem!important;
  line-height:1.38!important;
}
.admin-unified-cost-note{
  margin-top:9px!important;
}
.admin-unified-diagnostic{
  padding-top:8px;
  border-top:1px solid rgba(255,255,255,.09);
}
.admin-unified-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:15px;
}
.admin-unified-actions .btn.tiny{
  min-height:36px!important;
}
@media(max-width:1180px){
  .admin-unified-sections{
    grid-template-columns:1fr;
  }
  .admin-unified-cost-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:880px){
  .admin-unified-head{
    grid-template-columns:1fr;
  }
  .admin-unified-status-pills{
    justify-content:flex-start;
  }
  .admin-unified-ops-grid,
  .admin-unified-cost-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .admin-unified-section-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .admin-unified-section-head small{
    text-align:left;
  }
}
@media(max-width:560px){
  .admin-unified-ops-grid,
  .admin-unified-cost-grid{
    grid-template-columns:1fr;
  }
  .admin-unified-overview-card{
    padding:16px!important;
  }
}

/* Admin dashboard layout polish: small Operations card + larger Website Running Costs card */
.admin-unified-sections{
  grid-template-columns:minmax(285px,.62fr) minmax(0,1.38fr)!important;
  align-items:stretch!important;
}
.admin-unified-operations{
  padding:18px!important;
  align-self:start!important;
}
.admin-unified-costs{
  padding:20px!important;
  min-height:100%!important;
}
.admin-unified-operations .admin-unified-section-head{
  align-items:flex-start!important;
  flex-direction:column!important;
  gap:4px!important;
}
.admin-unified-operations .admin-unified-section-head small{
  text-align:left!important;
}
.admin-unified-ops-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.admin-unified-operations .admin-unified-metric-grid article{
  padding:13px!important;
  border-radius:18px!important;
}
.admin-unified-operations .admin-unified-metric-grid article span{
  font-size:.74rem!important;
  margin-bottom:7px!important;
}
.admin-unified-operations .admin-unified-metric-grid article strong{
  font-size:clamp(1.55rem,2.4vw,2.25rem)!important;
  margin-bottom:8px!important;
}
.admin-unified-operations .admin-unified-metric-grid article em{
  font-size:.74rem!important;
  line-height:1.18!important;
}
.admin-unified-costs .admin-unified-section-head span{
  font-size:clamp(1.45rem,2.2vw,2.2rem)!important;
  line-height:.95!important;
  letter-spacing:-.055em!important;
}
.admin-unified-costs .admin-unified-section-head small{
  max-width:240px!important;
}
.admin-unified-cost-grid{
  grid-template-columns:1.15fr 1fr 1fr!important;
  gap:14px!important;
}
.admin-unified-costs .admin-unified-metric-grid article{
  min-height:132px!important;
  padding:18px!important;
  border-radius:20px!important;
}
.admin-unified-costs .admin-unified-metric-grid article strong{
  font-size:clamp(1.75rem,2.7vw,2.85rem)!important;
  line-height:.95!important;
  margin-bottom:12px!important;
}
.admin-unified-cost-primary strong{
  font-size:clamp(2rem,3.1vw,3.15rem)!important;
}
.admin-unified-billing-status{
  margin-top:16px!important;
  padding-top:16px!important;
}
.admin-unified-actions{
  margin-top:18px!important;
}
@media(max-width:1180px){
  .admin-unified-sections{
    grid-template-columns:1fr!important;
  }
  .admin-unified-operations{
    align-self:stretch!important;
  }
  .admin-unified-ops-grid,
  .admin-unified-cost-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:680px){
  .admin-unified-ops-grid,
  .admin-unified-cost-grid{
    grid-template-columns:1fr!important;
  }
}


/* New Job Pro multi-image upload + description mic */
.job-description-dictation-wrap{position:relative!important;display:block!important;margin-bottom:4px;}
.job-description-dictation-wrap textarea{display:block!important;width:100%!important;min-height:150px!important;padding-right:82px!important;padding-bottom:68px!important;}
.job-description-dictation-wrap .dictation-mic-inside{position:absolute!important;right:16px!important;bottom:16px!important;z-index:30!important;margin:0!important;left:auto!important;top:auto!important;}
.job-photo-upload-panel{margin:12px 0 18px;padding:14px;border-radius:20px;border:1px solid var(--line);background:rgba(255,255,255,.045);}
.job-photo-upload-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;}
.job-photo-upload-head label{margin:0;color:var(--accent);}
.job-photo-upload-head span{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--muted);font-weight:900;font-size:.78rem;}
.job-photo-upload-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.job-upload-icon-btn{width:52px!important;height:52px!important;min-width:52px!important;padding:0!important;border-radius:999px!important;display:grid!important;place-items:center!important;font-size:1.2rem!important;text-decoration:none!important;background:linear-gradient(135deg,#ffe7bd,#ffbf5e 62%,#e78b32)!important;color:#241308!important;border:1px solid rgba(255,234,205,.70)!important;box-shadow:0 16px 36px rgba(0,0,0,.28),0 0 0 7px rgba(255,204,118,.08),inset 0 1px 0 rgba(255,255,255,.48)!important;cursor:pointer!important;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;}
.job-upload-icon-btn:hover{transform:translateY(-1px)!important;border-color:rgba(255,204,118,.9)!important;box-shadow:0 18px 42px rgba(0,0,0,.34),0 0 0 8px rgba(255,204,118,.12),inset 0 1px 0 rgba(255,255,255,.54)!important;}
.job-upload-icon-btn.locked{background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(255,255,255,.06))!important;color:var(--text)!important;}
.job-image-previews{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:10px;margin-top:12px;}
.job-image-thumb{overflow:hidden;border-radius:16px;border:1px solid var(--line);background:rgba(0,0,0,.18);min-height:112px;display:flex;flex-direction:column;}
.job-image-thumb img{width:100%;height:78px;object-fit:cover;display:block;}
.job-image-thumb span{padding:7px 8px;color:var(--muted);font-size:.72rem;font-weight:850;line-height:1.15;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
@media(max-width:620px){.job-description-dictation-wrap .dictation-mic-inside{right:14px!important;bottom:16px!important}.job-photo-upload-head{align-items:flex-start;flex-direction:column}.job-upload-icon-btn{width:50px!important;height:50px!important;min-width:50px!important}}

/* Flagged user job lock + admin re-enable controls */
.restricted-contact-locked-message{
  margin:16px 0 18px;
  text-align:center;
  font-size:1.05rem;
  font-weight:950;
  background:rgba(109, 255, 161, .10);
  border-color:rgba(143, 255, 188, .32);
}
.job-form-fieldset{
  border:0;
  padding:0;
  margin:0;
  min-width:0;
}
.job-form-locked .job-form-fieldset{
  opacity:.48;
  filter:grayscale(.35);
}
.job-form-locked input,
.job-form-locked textarea,
.job-form-locked select,
.job-form-locked button,
.job-form-locked .job-upload-icon-btn{
  cursor:not-allowed!important;
}
.job-form-locked .job-photo-upload-panel a,
.job-form-locked .job-photo-upload-panel label,
.job-form-locked .dictation-mic-inside{
  pointer-events:none;
}
.flagged-users-card{
  background:linear-gradient(180deg,rgba(64,34,22,.82),rgba(28,12,8,.90));
}
.flagged-users-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  margin-bottom:18px;
}
.flagged-users-head small{
  display:block;
  color:var(--accent);
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:6px;
}
.flagged-users-head h2{margin:0 0 8px;}
.flagged-empty{margin:0;}
.flagged-user-list{
  display:grid;
  gap:12px;
}
.flagged-user-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:15px;
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(255,255,255,.045);
}
.flagged-user-main{
  display:grid;
  gap:5px;
  min-width:0;
}
.flagged-user-main strong{
  font-size:1rem;
  word-break:break-word;
}
.flagged-user-main span{font-weight:750;}
.flagged-user-actions{margin:0;display:flex;align-items:center;gap:8px;}
.icon-action-btn{
  width:48px;
  height:48px;
  min-width:48px;
  padding:0;
  border-radius:50%;
  border:1px solid var(--line);
  background:rgba(255,255,255,.08);
  color:var(--text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 26px rgba(0,0,0,.28);
}
.icon-action-btn.good{color:var(--good);}
@media(max-width:720px){
  .flagged-users-head,
  .flagged-user-row{flex-direction:column;align-items:stretch;}
  .flagged-user-actions{justify-content:flex-start;}
}


/* New Job top-right free allowance badge */
.new-job-panel{
  position:relative!important;
  overflow:visible!important;
}
.job-limit-corner{
  position:absolute;
  top:24px;
  right:24px;
  z-index:20;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:126px;
  padding:9px 14px;
  border-radius:999px;
  font-size:.92rem;
  font-weight:950;
  letter-spacing:.01em;
  background:rgba(28,15,8,.74);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 14px 34px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.job-limit-dot{
  width:8px;
  height:8px;
  border-radius:999px;
  background:currentColor;
  box-shadow:0 0 14px currentColor;
  flex:0 0 auto;
}
.job-limit-green{
  color:#57f08b!important;
  border-color:rgba(87,240,139,.38)!important;
}
.job-limit-yellow{
  color:#ffd166!important;
  border-color:rgba(255,209,102,.44)!important;
}
.job-limit-red{
  color:#ff5f57!important;
  border-color:rgba(255,95,87,.52)!important;
}
.free-job-limit-notice.job-limit-notice{
  font-weight:850;
  line-height:1.35;
}
.free-job-limit-notice.job-limit-green{
  border-color:rgba(87,240,139,.24)!important;
}
.free-job-limit-notice.job-limit-yellow{
  border-color:rgba(255,209,102,.34)!important;
}
.free-job-limit-notice.job-limit-red{
  border-color:rgba(255,95,87,.42)!important;
}
.job-limit-upgrade-corner{
  position:absolute;
  top:24px;
  right:164px;
  z-index:21;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:39px;
  padding:9px 16px;
  border-radius:999px;
  text-decoration:none!important;
  color:#241308!important;
  font-weight:950;
  font-size:.88rem;
  letter-spacing:.01em;
  background:linear-gradient(135deg,#ffe7bd,#ffbf5e 62%,#e78b32);
  border:1px solid rgba(255,234,205,.82);
  box-shadow:0 16px 36px rgba(0,0,0,.32),0 0 0 7px rgba(255,204,118,.09),inset 0 1px 0 rgba(255,255,255,.50);
  white-space:nowrap;
  transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease;
}
.job-limit-upgrade-corner:hover{
  transform:translateY(-1px);
  border-color:rgba(255,240,214,.96);
  box-shadow:0 18px 42px rgba(0,0,0,.38),0 0 0 8px rgba(255,204,118,.13),inset 0 1px 0 rgba(255,255,255,.58);
}
.upgrade-inline-link{
  color:#ffd166!important;
  font-weight:950;
  text-decoration:none;
}
.upgrade-inline-link:hover{
  text-decoration:underline;
}
@media(max-width:720px){
  .job-limit-corner,
  .job-limit-upgrade-corner{
    position:static;
    width:fit-content;
    margin:10px 0 4px;
  }
  .job-limit-upgrade-corner{
    min-height:38px;
  }
}

/* New Job: remove public Job details/reference card and center the job form when no admin aside is shown. */
.new-job-layout.new-job-single{
  grid-template-columns:minmax(0, 820px);
  justify-content:center;
}

/* New Job: hard-center the public New Job card after the side Job details card is removed. */
.new-job-layout.new-job-single{
  display:flex!important;
  justify-content:center!important;
  align-items:flex-start!important;
  width:100%!important;
}
.new-job-layout.new-job-single .new-job-panel{
  width:min(100%, 860px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* AI Digital Twin admin page: settings and statistics only */
.ai-digital-twin-page .ai-twin-shell{max-width:1180px;}
.ai-twin-hero{
  display:flex;
  align-items:stretch;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
  background:linear-gradient(135deg,rgba(64,34,22,.88),rgba(28,12,8,.92));
  overflow:hidden;
  position:relative;
}
.ai-twin-hero::after{
  content:"";
  position:absolute;
  right:-90px;
  top:-120px;
  width:320px;
  height:320px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,191,94,.22),transparent 68%);
  pointer-events:none;
}
.ai-twin-hero > div{position:relative;z-index:2;}
.ai-twin-hero h1{font-size:clamp(2.4rem,5vw,4.35rem);line-height:.95;margin:12px 0 10px;letter-spacing:-.055em;}
.ai-twin-hero p{max-width:760px;font-weight:750;line-height:1.5;}
.ai-twin-status-card{
  min-width:210px;
  display:grid;
  place-items:center;
  text-align:center;
  padding:20px;
  border:1px solid var(--line);
  border-radius:24px;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 42px rgba(0,0,0,.24);
}
.ai-twin-status-card strong{display:block;font-size:3.3rem;line-height:.95;letter-spacing:-.065em;color:var(--gold);margin:12px 0 5px;}
.ai-twin-status-card small{color:var(--muted);font-weight:900;}
.ai-twin-stat-panel,.ai-twin-settings-form{margin-bottom:18px;}
.ai-twin-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;}
.ai-twin-section-head small{display:block;color:var(--accent);font-weight:950;text-transform:uppercase;letter-spacing:.055em;margin-bottom:6px;}
.ai-twin-section-head h2{margin:0;letter-spacing:-.04em;}
.ai-twin-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;}
.ai-twin-kpi-grid article,.ai-twin-setting-card{
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
.ai-twin-kpi-grid article{padding:16px;min-height:132px;display:flex;flex-direction:column;justify-content:space-between;}
.ai-twin-kpi-grid span{color:var(--muted);font-weight:900;font-size:.82rem;line-height:1.2;}
.ai-twin-kpi-grid strong{display:block;font-size:1.82rem;line-height:1.04;letter-spacing:-.045em;color:var(--text);margin:9px 0;}
.ai-twin-kpi-grid em{font-style:normal;color:var(--muted);font-weight:800;font-size:.82rem;line-height:1.3;}
.ai-twin-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.ai-twin-setting-card{padding:18px;}
.ai-twin-setting-card.primary{background:linear-gradient(180deg,rgba(88,48,24,.62),rgba(33,16,9,.58));border-color:rgba(255,204,118,.25);}
.ai-twin-setting-card h3{margin:0 0 10px;font-size:1.1rem;letter-spacing:-.025em;}
.ai-twin-setting-card p{line-height:1.45;font-weight:750;}
.ai-switch-line{
  display:flex!important;
  align-items:center;
  gap:10px;
  margin:10px 0!important;
  padding:10px 11px;
  border:1px solid rgba(255,234,205,.13);
  border-radius:16px;
  background:rgba(0,0,0,.13);
  color:var(--text)!important;
  font-size:.92rem!important;
  line-height:1.25;
}
.ai-switch-line input[type="checkbox"]{width:18px!important;height:18px!important;min-width:18px!important;margin:0!important;accent-color:#ffbf5e;box-shadow:none;}
.ai-switch-line span{font-weight:900;}
.ai-twin-number-card input,.ai-twin-setting-card select,.ai-twin-notes-card textarea{margin-top:6px;}
.ai-twin-notes-card{grid-column:1/-1;}
.ai-twin-notes-card textarea{min-height:130px;}
.ai-twin-save-row{justify-content:flex-start;}
.ai-twin-save-row .btn,.ai-twin-save-row button{min-width:220px;}
@media(max-width:1100px){.ai-twin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:820px){.ai-twin-hero{flex-direction:column;}.ai-twin-status-card{min-width:0;}.ai-twin-settings-grid{grid-template-columns:1fr;}.ai-twin-kpi-grid{grid-template-columns:1fr;}.ai-twin-section-head{flex-direction:column;align-items:flex-start;}.ai-twin-save-row{align-items:stretch;flex-direction:column;}.ai-twin-save-row .btn,.ai-twin-save-row button{width:100%;}}

/* AI Digital Twin mutation + CromeSky ecosystem extensions */
.mutation-lab-panel{
  position:relative;
  overflow:hidden;
}
.mutation-lab-panel::after{
  content:"";
  position:absolute;
  left:-120px;
  bottom:-130px;
  width:340px;
  height:340px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(87,240,139,.10),transparent 70%);
  pointer-events:none;
}
.mutation-lab-panel > *{position:relative;z-index:1;}
.mutation-kpis{grid-template-columns:repeat(6,minmax(0,1fr));}
.ai-twin-mutation-actions{
  display:flex;
  align-items:center;
  gap:16px;
  margin:18px 0;
  padding:14px;
  border:1px solid rgba(255,234,205,.14);
  border-radius:22px;
  background:rgba(0,0,0,.16);
}
.ai-twin-mutation-actions form{margin:0;flex:0 0 auto;}
.ai-twin-mutation-actions p{margin:0;line-height:1.35;font-weight:800;}
.ai-twin-mutation-actions button:disabled{
  opacity:.48;
  cursor:not-allowed;
  filter:saturate(.5);
}
.ai-twin-variant-table-wrap{
  margin-top:18px;
  padding:16px;
  border:1px solid rgba(255,234,205,.13);
  border-radius:24px;
  background:rgba(255,255,255,.035);
  overflow:auto;
}
.ai-twin-variant-table-wrap h3{margin:0 0 12px;}
.ai-twin-variant-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0 9px;
  min-width:760px;
}
.ai-twin-variant-table th{
  text-align:left;
  color:var(--muted);
  font-weight:950;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.055em;
  padding:0 10px 4px;
}
.ai-twin-variant-table td{
  padding:12px 10px;
  background:rgba(0,0,0,.15);
  border-top:1px solid rgba(255,234,205,.10);
  border-bottom:1px solid rgba(255,234,205,.10);
  vertical-align:middle;
  font-weight:850;
}
.ai-twin-variant-table td:first-child{
  border-left:1px solid rgba(255,234,205,.10);
  border-radius:16px 0 0 16px;
  min-width:260px;
}
.ai-twin-variant-table td:last-child{
  border-right:1px solid rgba(255,234,205,.10);
  border-radius:0 16px 16px 0;
}
.ai-twin-variant-table td small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-weight:750;
  line-height:1.25;
}
.inline-action-form{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
}
.inline-action-form button{
  min-height:36px;
  padding:8px 12px;
  font-size:.78rem;
  border-radius:999px;
}
.mutation-settings-card,.mutation-number-card{
  border-color:rgba(87,240,139,.18)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 0 0 1px rgba(87,240,139,.035);
}
.ai-twin-addon-card{
  grid-column:span 1;
}
.addon-switch{
  align-items:flex-start;
  padding:12px;
}
.addon-switch span{
  display:block;
}
.addon-switch span strong{
  display:block;
  font-size:.92rem;
  line-height:1.15;
}
.addon-switch span small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-weight:750;
  line-height:1.28;
  text-transform:none;
  letter-spacing:0;
}
.ai-twin-addon-card .ai-switch-line input[type="checkbox"]{
  margin-top:2px!important;
}
@media(max-width:1280px){
  .mutation-kpis{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:900px){
  .mutation-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ai-twin-mutation-actions{flex-direction:column;align-items:stretch;}
  .ai-twin-mutation-actions button{width:100%;}
}
@media(max-width:620px){
  .mutation-kpis{grid-template-columns:1fr;}
}

/* AI Digital Twin work roles + cross-variant self-learning */
.ai-twin-role-learning-panel{
  margin-bottom:18px;
  position:relative;
  overflow:hidden;
}
.ai-twin-role-learning-panel::after{
  content:"";
  position:absolute;
  right:-130px;
  bottom:-150px;
  width:380px;
  height:380px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,191,94,.13),transparent 70%);
  pointer-events:none;
}
.ai-twin-role-learning-panel > *{position:relative;z-index:1;}
.ai-twin-role-stats-card{
  padding:18px;
  border:1px solid rgba(255,234,205,.14);
  border-radius:26px;
  background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(0,0,0,.16));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.role-stats-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
}
.role-stats-hero h3{
  margin:8px 0 6px;
  font-size:clamp(1.45rem,3vw,2.4rem);
  letter-spacing:-.045em;
}
.role-stats-hero p{max-width:780px;font-weight:750;line-height:1.45;}
.role-health-ring{
  flex:0 0 170px;
  height:170px;
  border-radius:999px;
  display:grid;
  place-items:center;
  text-align:center;
  border:1px solid rgba(87,240,139,.28);
  background:radial-gradient(circle,rgba(87,240,139,.15),rgba(0,0,0,.22));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 42px rgba(0,0,0,.22);
}
.role-health-ring strong{display:block;color:var(--accent);font-size:2.8rem;line-height:.9;letter-spacing:-.06em;}
.role-health-ring small{display:block;color:var(--muted);font-weight:950;margin-top:5px;}
.role-learning-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:10px;}
.role-learning-actions{margin-top:16px;}
.role-chip-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}
.role-chip{
  display:block;
  padding:12px 13px;
  border-radius:18px;
  border:1px solid rgba(255,234,205,.12);
  background:rgba(0,0,0,.15);
}
.role-chip.active{border-color:rgba(87,240,139,.26);background:rgba(87,240,139,.08);}
.role-chip.standby{opacity:.68;}
.role-chip strong{display:block;font-size:.92rem;line-height:1.15;}
.role-chip small{display:block;margin-top:4px;color:var(--muted);font-weight:850;}
.role-control-settings-card,.cross-learning-settings-card,.role-settings-grid-card{
  border-color:rgba(87,240,139,.18)!important;
}
.compact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:10px;}
.role-settings-grid-card{grid-column:1/-1;}
.role-settings-grid-card .role-switch{display:inline-flex!important;width:calc(50% - 8px);vertical-align:top;margin:6px 4px!important;}
.variant-role-list{display:flex;flex-wrap:wrap;gap:6px;min-width:180px;}
.variant-role-list span{
  display:inline-flex;
  align-items:center;
  padding:5px 8px;
  border-radius:999px;
  border:1px solid rgba(87,240,139,.22);
  background:rgba(87,240,139,.08);
  color:var(--text);
  font-weight:900;
  font-size:.74rem;
  white-space:nowrap;
}
.learning-event-table{min-width:850px;}
@media(max-width:1100px){
  .role-learning-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .role-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .role-settings-grid-card .role-switch{width:100%;}
}
@media(max-width:760px){
  .role-stats-hero{flex-direction:column;align-items:stretch;}
  .role-health-ring{width:170px;align-self:center;}
  .role-learning-kpis,.role-chip-grid,.compact-grid{grid-template-columns:1fr;}
}

/* CromeSky ecosystem engine controls */
.cromesky-engine-summary-panel,.admin-ecosystem-dashboard-card{border-color:rgba(87,240,139,.16)!important;}
.cromesky-engine-all-stats-card{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:8px 0 16px;
}
.cromesky-engine-all-stats-card article{
  padding:16px;
  border-radius:22px;
  border:1px solid rgba(255,234,205,.13);
  background:linear-gradient(160deg,rgba(255,255,255,.055),rgba(0,0,0,.18));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  min-height:122px;
}
.cromesky-engine-all-stats-card span,.cromesky-engine-family-card small,.engine-mini-stats span{color:var(--muted);font-weight:900;font-size:.82rem;line-height:1.25;}
.cromesky-engine-all-stats-card strong{
  display:block;
  font-size:2rem;
  line-height:1;
  letter-spacing:-.055em;
  color:var(--gold);
  margin:10px 0 6px;
}
.cromesky-engine-all-stats-card em{font-style:normal;color:var(--muted);font-weight:800;font-size:.82rem;line-height:1.3;}
.cromesky-engine-family-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.cromesky-engine-family-card{
  padding:16px;
  border-radius:24px;
  border:1px solid rgba(255,234,205,.13);
  background:radial-gradient(circle at 0 0,rgba(255,204,118,.09),transparent 42%),rgba(0,0,0,.18);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  min-height:210px;
}
.engine-family-head{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px;}
.engine-family-head h3{margin:0 0 3px;font-size:1.05rem;letter-spacing:-.025em;}
.engine-icon{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:16px;background:rgba(87,240,139,.10);border:1px solid rgba(87,240,139,.20);font-size:1.35rem;}
.cromesky-engine-family-card > strong{display:block;font-size:2.35rem;line-height:.95;letter-spacing:-.06em;color:var(--accent);margin-bottom:9px;}
.cromesky-engine-family-card p{min-height:38px;font-weight:800;line-height:1.35;margin:0 0 12px;}
.engine-mini-stats{display:flex;flex-wrap:wrap;gap:7px;}
.engine-mini-stats span{padding:6px 8px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,234,205,.10);}
.cromesky-engine-category-settings{display:grid;gap:16px;}
.cromesky-engine-category-card{grid-column:1/-1;}
.engine-category-settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px;}
.engine-category-settings-head small{display:block;color:var(--accent);font-weight:950;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px;}
.engine-category-settings-head h3{font-size:1.55rem;margin:0 0 5px;letter-spacing:-.04em;}
.engine-category-settings-head p{max-width:820px;margin:0;line-height:1.4;}
.engine-category-toolbar{
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(220px,300px);
  gap:12px;
  align-items:end;
  margin-bottom:14px;
  padding:12px;
  border-radius:20px;
  background:rgba(0,0,0,.16);
  border:1px solid rgba(255,234,205,.10);
}
.engine-category-toolbar label{margin:0;}
.cromesky-engine-control-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.cromesky-engine-control-card{
  padding:14px;
  border-radius:20px;
  border:1px solid rgba(255,234,205,.12);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.18));
  min-height:218px;
}
.engine-control-head{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;}
.engine-control-head .ai-switch-line{flex:1;margin:0!important;align-items:flex-start;}
.engine-control-head .ai-switch-line span strong{display:block;font-size:.92rem;line-height:1.15;}
.engine-control-head .ai-switch-line span small{display:block;margin-top:5px;color:var(--muted);font-weight:800;line-height:1.25;}
.engine-health-badge{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:34px;border-radius:999px;border:1px solid rgba(87,240,139,.22);background:rgba(87,240,139,.08);color:var(--accent);font-size:.82rem;font-weight:950;}
.engine-number-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0 10px;}
.engine-number-grid label{font-size:.78rem;color:var(--muted);font-weight:900;}
.engine-number-grid input{margin-top:5px;}
.engine-sandbox-line{margin:0!important;padding:8px 10px!important;border-radius:16px;background:rgba(0,0,0,.12);}
.admin-engine-compact-stats{margin-top:0;}
.admin-engine-family-grid .cromesky-engine-family-card{min-height:165px;}
@media(max-width:1180px){.cromesky-engine-control-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.cromesky-engine-family-grid,.cromesky-engine-all-stats-card{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){.cromesky-engine-control-grid,.cromesky-engine-family-grid,.cromesky-engine-all-stats-card,.engine-category-toolbar{grid-template-columns:1fr;}.engine-category-settings-head{flex-direction:column;}.engine-number-grid{grid-template-columns:1fr;}}


/* Dedicated Intelligence Engine statistics card */
.cromesky-intelligence-dashboard-card{border-color:rgba(87,240,139,.20)!important;}
.cromesky-intelligence-hero-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px;
  margin-bottom:14px;
  border-radius:26px;
  border:1px solid rgba(87,240,139,.18);
  background:radial-gradient(circle at 0 0,rgba(87,240,139,.14),transparent 38%),linear-gradient(145deg,rgba(255,204,118,.08),rgba(0,0,0,.20));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.cromesky-intelligence-hero-card h3{margin:5px 0 7px;font-size:1.75rem;letter-spacing:-.045em;}
.intelligence-score-ring{
  flex:0 0 146px;
  width:146px;
  height:146px;
  border-radius:50%;
  display:grid;
  place-items:center;
  text-align:center;
  border:1px solid rgba(255,234,205,.13);
  background:radial-gradient(circle,rgba(0,0,0,.18),rgba(0,0,0,.34));
  box-shadow:inset 0 0 0 8px rgba(255,255,255,.035),0 18px 42px rgba(0,0,0,.22);
}
.intelligence-score-ring strong{display:block;font-size:2.35rem;line-height:.9;color:var(--gold);letter-spacing:-.06em;}
.intelligence-score-ring small{display:block;margin-top:7px;color:var(--muted);font-weight:950;text-transform:uppercase;font-size:.68rem;letter-spacing:.04em;}
.intelligence-score-ring.risk-low{border-color:rgba(87,240,139,.35);}
.intelligence-score-ring.risk-medium{border-color:rgba(255,204,118,.42);}
.intelligence-score-ring.risk-high{border-color:rgba(255,96,96,.44);}
.cromesky-intelligence-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-bottom:14px;
}
.cromesky-intelligence-kpi-grid article{
  min-height:124px;
  padding:15px;
  border-radius:22px;
  border:1px solid rgba(255,234,205,.13);
  background:linear-gradient(160deg,rgba(255,255,255,.052),rgba(0,0,0,.18));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055);
}
.cromesky-intelligence-kpi-grid span{display:block;color:var(--muted);font-weight:950;font-size:.78rem;line-height:1.25;}
.cromesky-intelligence-kpi-grid strong{display:block;margin:9px 0 6px;font-size:1.72rem;line-height:1;color:var(--accent);letter-spacing:-.055em;}
.cromesky-intelligence-kpi-grid em{display:block;color:var(--muted);font-style:normal;font-weight:800;font-size:.8rem;line-height:1.32;}
.cromesky-intelligence-engine-strip{display:flex;flex-wrap:wrap;gap:8px;}
.cromesky-intelligence-engine-strip span{display:flex;flex-direction:column;gap:2px;padding:9px 11px;border-radius:16px;border:1px solid rgba(87,240,139,.16);background:rgba(87,240,139,.055);}
.cromesky-intelligence-engine-strip strong{font-size:.82rem;line-height:1.15;}
.cromesky-intelligence-engine-strip em{font-size:.74rem;line-height:1.15;font-style:normal;color:var(--muted);font-weight:850;}
@media(max-width:1100px){.cromesky-intelligence-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){.cromesky-intelligence-hero-card{flex-direction:column;align-items:stretch;}.intelligence-score-ring{align-self:center;}.cromesky-intelligence-kpi-grid{grid-template-columns:1fr;}}


/* Automated AI Digital Twin learning cycles */
.ai-learning-automation-card,
.cromesky-learning-automation-dashboard-card{
  margin-top:18px;
  padding:18px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(20,13,9,.82),rgba(69,38,18,.42));
  box-shadow:0 18px 48px rgba(0,0,0,.22);
}
.compact-head{margin-bottom:12px;}
.cron-hint{margin-top:12px;}
.cron-hint code{
  display:inline-block;
  padding:5px 8px;
  border-radius:10px;
  background:rgba(0,0,0,.28);
  color:#ffe6b5;
  white-space:normal;
  word-break:break-word;
}
.soft-divider{
  border:none;
  border-top:1px solid rgba(255,255,255,.12);
  margin:16px 0;
}
.learning-run-table-wrap{margin-top:18px;}

/* AI Digital Twin Comms Window */
.ai-twin-comms-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  border-color:rgba(87,240,139,.22)!important;
  background:radial-gradient(circle at 0 0,rgba(87,240,139,.14),transparent 38%),linear-gradient(145deg,rgba(60,31,14,.84),rgba(11,8,7,.84));
}
.ai-twin-comms-hero h1{margin:.25rem 0 .55rem;font-size:clamp(2rem,5vw,4.2rem);letter-spacing:-.07em;}
.ai-twin-comms-status-card{
  flex:0 0 210px;
  min-height:160px;
  display:grid;
  place-items:center;
  text-align:center;
  padding:18px;
  border-radius:28px;
  border:1px solid rgba(87,240,139,.20);
  background:radial-gradient(circle,rgba(87,240,139,.11),rgba(0,0,0,.22));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 20px 50px rgba(0,0,0,.22);
}
.ai-twin-comms-status-card strong{font-size:3.2rem;line-height:.9;color:var(--accent);letter-spacing:-.08em;}
.ai-twin-comms-status-card small{font-weight:900;color:var(--muted);}
.ai-twin-comms-stat-panel,.ai-twin-comms-dashboard-card{border-color:rgba(87,240,139,.18)!important;}
.ai-twin-comms-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:18px;align-items:start;margin:18px 0;}
.ai-twin-targets-panel{position:sticky;top:92px;max-height:calc(100vh - 110px);overflow:auto;}
.ai-twin-target-list{display:grid;gap:10px;}
.ai-twin-target-link{
  display:block;
  padding:14px;
  border-radius:20px;
  border:1px solid rgba(255,234,205,.12);
  background:linear-gradient(160deg,rgba(255,255,255,.045),rgba(0,0,0,.18));
  text-decoration:none;
  color:var(--text);
  transition:transform .18s ease,border-color .18s ease,background .18s ease;
}
.ai-twin-target-link:hover{transform:translateY(-2px);border-color:rgba(87,240,139,.28);background:linear-gradient(160deg,rgba(87,240,139,.09),rgba(0,0,0,.18));}
.ai-twin-target-link.active{border-color:rgba(87,240,139,.48);box-shadow:0 0 0 1px rgba(87,240,139,.18),0 16px 38px rgba(0,0,0,.20);}
.ai-twin-target-link strong{display:block;font-size:.98rem;line-height:1.2;margin-bottom:5px;}
.ai-twin-target-link span,.ai-twin-target-link em{display:block;color:var(--muted);font-weight:850;font-size:.78rem;line-height:1.25;font-style:normal;}
.mini-role-list{margin-top:8px;gap:5px;}
.mini-role-list small{display:inline-flex;padding:5px 7px;border-radius:999px;border:1px solid rgba(87,240,139,.16);background:rgba(87,240,139,.055);font-weight:900;font-size:.68rem;color:var(--text);}
.ai-twin-chat-panel{min-height:640px;display:flex;flex-direction:column;}
.ai-twin-chat-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px;}
.ai-twin-chat-head h2{margin:0 0 4px;font-size:1.75rem;letter-spacing:-.045em;}
.ai-twin-chat-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.ai-twin-selected-role-strip{display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 14px;}
.ai-twin-selected-role-strip span{display:inline-flex;padding:7px 10px;border-radius:999px;border:1px solid rgba(87,240,139,.16);background:rgba(87,240,139,.065);font-weight:900;font-size:.78rem;}
.ai-twin-chat-window{
  flex:1;
  min-height:420px;
  max-height:620px;
  overflow:auto;
  padding:16px;
  border-radius:24px;
  border:1px solid rgba(255,234,205,.12);
  background:radial-gradient(circle at 0 0,rgba(255,204,118,.07),transparent 35%),rgba(0,0,0,.20);
}
.ai-twin-empty-chat{display:grid;place-items:center;text-align:center;min-height:340px;padding:28px;}
.ai-twin-empty-chat strong{font-size:1.25rem;color:var(--gold);}
.ai-twin-message{max-width:86%;padding:13px 15px;border-radius:20px;margin:0 0 12px;border:1px solid rgba(255,234,205,.12);box-shadow:0 12px 30px rgba(0,0,0,.12);}
.ai-twin-message p{margin:.4rem 0 0;line-height:1.45;white-space:normal;}
.ai-twin-message.admin-msg{margin-left:auto;background:linear-gradient(145deg,rgba(87,240,139,.12),rgba(0,0,0,.20));border-color:rgba(87,240,139,.20);}
.ai-twin-message.twin-msg{margin-right:auto;background:linear-gradient(145deg,rgba(255,204,118,.10),rgba(0,0,0,.22));border-color:rgba(255,204,118,.16);}
.bubble-meta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.78rem;font-weight:900;}
.bubble-meta strong{color:var(--text);}
.ai-twin-composer{margin-top:14px;display:grid;gap:10px;}
.ai-twin-composer textarea{min-height:120px;resize:vertical;}
.ai-twin-composer-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;}
.ai-twin-comms-settings-panel{margin-top:18px;border-color:rgba(87,240,139,.18)!important;}
.ai-twin-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.ai-twin-settings-grid > label{margin:0;}
.ai-twin-settings-actions{grid-column:1/-1;display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-start;margin-top:4px;}
@media(max-width:1100px){.ai-twin-comms-layout{grid-template-columns:1fr;}.ai-twin-targets-panel{position:relative;top:auto;max-height:none;}.ai-twin-target-list{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){.ai-twin-comms-hero,.ai-twin-chat-head,.ai-twin-composer-actions{flex-direction:column;align-items:stretch;}.ai-twin-comms-status-card{flex:1;width:100%;}.ai-twin-target-list,.ai-twin-settings-grid{grid-template-columns:1fr;}.ai-twin-message{max-width:100%;}}

/* AI Twin remembered chat memory + human learning cards */
.ai-twin-memory-learning-card{
  margin:4px 0 14px;
  padding:14px;
  border-radius:24px;
  border:1px solid rgba(87,240,139,.16);
  background:radial-gradient(circle at 0 0,rgba(87,240,139,.08),transparent 34%),linear-gradient(150deg,rgba(255,255,255,.045),rgba(0,0,0,.18));
}
.ai-twin-memory-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:start;}
.ai-twin-memory-columns>div{display:grid;gap:9px;}
.ai-twin-memory-columns>div>strong{display:block;color:var(--gold);font-size:.9rem;letter-spacing:.02em;text-transform:uppercase;}
.ai-twin-memory-item{
  padding:11px 12px;
  border-radius:18px;
  border:1px solid rgba(255,234,205,.11);
  background:linear-gradient(145deg,rgba(255,255,255,.04),rgba(0,0,0,.18));
}
.ai-twin-memory-item span{display:block;color:var(--muted);font-weight:950;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;}
.ai-twin-memory-item p{margin:6px 0;color:var(--text);font-size:.86rem;line-height:1.38;}
.ai-twin-memory-item em{display:block;color:var(--muted);font-style:normal;font-size:.72rem;font-weight:850;line-height:1.3;}
.ai-twin-memory-item.learning-item{border-color:rgba(255,204,118,.14);background:linear-gradient(145deg,rgba(255,204,118,.075),rgba(0,0,0,.18));}
@media(max-width:900px){.ai-twin-memory-columns{grid-template-columns:1fr;}}

/* AI Twin Comms professional chat polish + icon-hidden control panels */
.ai-twin-comms-page .wrap{--max:1240px;}
.ai-twin-comms-shell{padding-top:20px;}
.ai-twin-comms-hero{
  align-items:stretch;
  padding:clamp(18px,2.5vw,26px)!important;
  border-radius:26px;
  background:
    radial-gradient(circle at 8% 15%,rgba(87,240,139,.14),transparent 28%),
    radial-gradient(circle at 92% 8%,rgba(255,204,118,.16),transparent 26%),
    linear-gradient(145deg,rgba(38,22,14,.90),rgba(12,8,7,.88));
}
.ai-twin-comms-hero h1{font-size:clamp(1.95rem,3.6vw,3.35rem);line-height:.95;margin-bottom:.45rem;}
.ai-twin-comms-hero p{max-width:720px;line-height:1.48;font-size:.98rem;}
.ai-twin-comms-hero-right{display:grid;gap:12px;align-content:start;justify-items:stretch;min-width:245px;}
.ai-twin-comms-status-card{
  min-height:112px;
  flex:initial;
  padding:14px 16px;
  border-radius:22px;
  background:linear-gradient(160deg,rgba(87,240,139,.09),rgba(0,0,0,.25));
}
.ai-twin-comms-status-card strong{font-size:2.45rem;}
.ai-twin-icon-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.ai-twin-icon-btn{
  min-height:58px;
  padding:8px 9px;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,247,239,.09),rgba(255,247,239,.035));
  border:1px solid rgba(255,234,205,.16);
  color:var(--text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 12px 30px rgba(0,0,0,.18);
  display:grid;
  gap:2px;
  place-items:center;
}
.ai-twin-icon-btn span{font-size:1.15rem;line-height:1;}
.ai-twin-icon-btn em{font-style:normal;font-size:.68rem;font-weight:950;color:var(--muted);text-transform:uppercase;letter-spacing:.055em;}
.ai-twin-icon-btn:hover,.ai-twin-icon-btn.active{border-color:rgba(87,240,139,.42);background:linear-gradient(180deg,rgba(87,240,139,.16),rgba(255,247,239,.045));transform:translateY(-1px);}
.ai-twin-icon-btn.active em{color:var(--good);}
.comms-hidden-panel{display:none!important;}
.comms-hidden-panel.is-open{display:block!important;animation:fadeUp .28s ease both;}
.comms-panel-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.ai-twin-icon-close{
  width:34px;height:34px;padding:0;border-radius:12px;
  background:rgba(255,255,255,.075);color:var(--text);
  border:1px solid rgba(255,234,205,.18);box-shadow:none;font-size:1.2rem;line-height:1;
}
.ai-twin-icon-close:hover{background:rgba(255,120,110,.14);border-color:rgba(255,120,110,.35);}
.ai-twin-comms-layout{grid-template-columns:minmax(245px,300px) minmax(0,1fr);gap:16px;margin-top:16px;align-items:stretch;--ai-twin-comms-card-height:730px;}
.ai-twin-targets-panel,.ai-twin-chat-panel{border-color:rgba(255,234,205,.14)!important;}
.ai-twin-targets-panel{padding:14px;height:var(--ai-twin-comms-card-height);max-height:var(--ai-twin-comms-card-height);overflow:hidden;display:flex;flex-direction:column;}
.ai-twin-target-list{gap:8px;min-height:0;overflow:auto;padding-right:4px;scrollbar-color:rgba(255,204,118,.42) rgba(0,0,0,.18);scrollbar-width:thin;}
.ai-twin-target-list::-webkit-scrollbar{width:10px;}
.ai-twin-target-list::-webkit-scrollbar-track{background:rgba(0,0,0,.18);border-radius:999px;}
.ai-twin-target-list::-webkit-scrollbar-thumb{background:rgba(255,204,118,.42);border-radius:999px;border:2px solid rgba(0,0,0,.18);}
.ai-twin-target-link{padding:12px;border-radius:17px;background:linear-gradient(145deg,rgba(255,247,239,.055),rgba(0,0,0,.20));}
.ai-twin-target-link.active{background:linear-gradient(145deg,rgba(87,240,139,.14),rgba(0,0,0,.22));border-color:rgba(87,240,139,.50);}
.ai-twin-target-link strong{font-size:.9rem;}
.ai-twin-target-link span,.ai-twin-target-link em{font-size:.72rem;}
.ai-twin-chat-panel{
  min-height:var(--ai-twin-comms-card-height,730px);
  height:var(--ai-twin-comms-card-height,730px);
  overflow:hidden;
  padding:0!important;
  background:
    radial-gradient(circle at 0 0,rgba(255,204,118,.08),transparent 32%),
    linear-gradient(180deg,rgba(35,20,12,.84),rgba(15,8,6,.88));
}
.ai-twin-chat-head{
  margin:0;
  padding:18px 20px 14px;
  border-bottom:1px solid rgba(255,234,205,.11);
  background:linear-gradient(180deg,rgba(255,247,239,.045),rgba(255,247,239,0));
}
.ai-twin-chat-head h2{font-size:1.45rem;margin-bottom:3px;}
.ai-twin-chat-head p{font-size:.82rem;line-height:1.3;margin:0;}
.ai-twin-chat-head-actions .btn{padding:9px 11px;border-radius:12px;font-size:.76rem;}
.ai-twin-selected-role-strip{margin:0;padding:10px 20px 12px;border-bottom:1px solid rgba(255,234,205,.08);}
.ai-twin-selected-role-strip span{padding:6px 9px;font-size:.72rem;background:rgba(87,240,139,.055);}
.ai-twin-memory-learning-card{margin:14px 20px;border-radius:20px;}
.ai-twin-chat-window{
  margin:0 14px;
  flex:1;
  min-height:430px;
  max-height:58vh;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(255,234,205,.10);
  background:
    linear-gradient(rgba(4,3,3,.28),rgba(4,3,3,.34)),
    radial-gradient(circle at 50% 0,rgba(255,204,118,.06),transparent 42%);
  scrollbar-color:rgba(255,204,118,.42) rgba(0,0,0,.18);
  scrollbar-width:thin;
}
.ai-twin-chat-window::-webkit-scrollbar{width:10px;}
.ai-twin-chat-window::-webkit-scrollbar-track{background:rgba(0,0,0,.18);border-radius:999px;}
.ai-twin-chat-window::-webkit-scrollbar-thumb{background:rgba(255,204,118,.42);border-radius:999px;border:2px solid rgba(0,0,0,.18);}
.ai-twin-message{
  position:relative;
  max-width:min(78%,780px);
  padding:13px 15px;
  margin-bottom:14px;
  border-radius:20px;
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}
.ai-twin-message::before{
  content:"";
  position:absolute;
  top:12px;width:28px;height:28px;border-radius:50%;
  display:block;border:1px solid rgba(255,234,205,.18);
  background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(0,0,0,.22));
}
.ai-twin-message.admin-msg{margin-left:auto;margin-right:40px;background:linear-gradient(145deg,rgba(87,240,139,.16),rgba(0,0,0,.28));}
.ai-twin-message.admin-msg::before{right:-40px;background:linear-gradient(145deg,rgba(87,240,139,.35),rgba(0,0,0,.24));}
.ai-twin-message.twin-msg{margin-left:40px;background:linear-gradient(145deg,rgba(255,204,118,.14),rgba(0,0,0,.28));}
.ai-twin-message.twin-msg::before{left:-40px;background:linear-gradient(145deg,rgba(255,204,118,.36),rgba(0,0,0,.24));}
.ai-twin-message p{font-size:.93rem;line-height:1.52;}
.bubble-meta{font-size:.74rem;align-items:center;border-bottom:1px solid rgba(255,234,205,.07);padding-bottom:6px;margin-bottom:7px;}
.bubble-meta strong{font-size:.78rem;}
.ai-twin-composer{
  margin:0;
  padding:14px 20px 18px;
  border-top:1px solid rgba(255,234,205,.11);
  background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.20));
}
.ai-twin-quick-prompts{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:6px;}
.ai-twin-quick-prompts button{
  padding:7px 10px;border-radius:999px;font-size:.72rem;font-weight:950;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,234,205,.14);color:var(--muted);box-shadow:none;
}
.ai-twin-quick-prompts button:hover{color:var(--text);border-color:rgba(255,204,118,.34);background:rgba(255,204,118,.08);}
.ai-twin-composer textarea{
  min-height:82px;
  border-radius:18px;
  margin:0;
  background:rgba(255,247,239,.96);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.12),0 12px 28px rgba(0,0,0,.12);
}
.ai-twin-composer-actions{margin-top:8px;}
.ai-twin-composer-actions .muted{font-size:.78rem;line-height:1.3;}
.ai-twin-composer-actions button{border-radius:14px;padding:11px 16px;white-space:nowrap;}
.ai-twin-comms-stat-panel,.ai-twin-comms-settings-panel{margin:16px 0!important;}
.ai-twin-settings-grid{background:rgba(0,0,0,.10);border-radius:22px;padding:4px;}
.ai-twin-settings-grid .ai-switch-line{border-radius:18px;}
@media(max-width:1100px){
  .ai-twin-comms-layout{grid-template-columns:1fr;}
  .ai-twin-targets-panel{position:relative;top:auto;height:auto;max-height:none;overflow:visible;display:block;}
  .ai-twin-target-list{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;padding-right:0;}
  .ai-twin-chat-panel{min-height:680px;height:auto;}
  .ai-twin-chat-window{max-height:62vh;}
}
@media(max-width:760px){
  .ai-twin-comms-hero{display:grid;}
  .ai-twin-comms-hero-right{min-width:0;}
  .ai-twin-comms-status-card{width:100%;}
  .ai-twin-icon-toolbar{grid-template-columns:repeat(3,1fr);}
  .ai-twin-target-list,.ai-twin-settings-grid{grid-template-columns:1fr;}
  .ai-twin-chat-panel{min-height:620px;}
  .ai-twin-chat-head,.ai-twin-composer-actions{flex-direction:column;align-items:stretch;}
  .ai-twin-chat-window{margin:0 10px;padding:14px;}
  .ai-twin-message{max-width:calc(100% - 40px);}
  .ai-twin-message.admin-msg{margin-right:34px;}
  .ai-twin-message.twin-msg{margin-left:34px;}
  .ai-twin-message.admin-msg::before{right:-34px;}
  .ai-twin-message.twin-msg::before{left:-34px;}
  .ai-twin-composer{padding:12px 14px 14px;}
  .ai-twin-quick-prompts button{flex:1 1 48%;}
}

/* CromeSky AIML File Library */
.ai-twin-icon-toolbar{grid-template-columns:repeat(4,minmax(0,1fr));}
.ai-twin-icon-btn{text-decoration:none;}
.aiml-library-shell{padding-top:20px;}
.aiml-library-hero{display:flex;justify-content:space-between;gap:18px;align-items:stretch;border-radius:28px;background:radial-gradient(circle at 8% 12%,rgba(87,240,139,.13),transparent 30%),radial-gradient(circle at 92% 10%,rgba(255,204,118,.15),transparent 28%),linear-gradient(145deg,rgba(38,22,14,.90),rgba(12,8,7,.88));}
.aiml-library-hero h1{font-size:clamp(2rem,3.8vw,3.4rem);line-height:.95;margin-bottom:.45rem;}
.aiml-library-hero p{max-width:780px;line-height:1.48;}
.aiml-status-card{min-width:230px;display:grid;place-items:center;text-align:center;padding:18px;border-radius:24px;border:1px solid rgba(87,240,139,.22);background:linear-gradient(160deg,rgba(87,240,139,.09),rgba(0,0,0,.22));}
.aiml-status-card strong{font-size:3rem;line-height:1;color:var(--good);letter-spacing:-.06em;}
.aiml-status-card small{color:var(--muted);font-weight:900;}
.aiml-stats-card{margin:18px 0;}
.aiml-library-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:16px;align-items:start;margin:18px 0;}
.aiml-file-sidebar{position:sticky;top:88px;max-height:780px;display:flex;flex-direction:column;overflow:hidden;}
.aiml-file-list{display:grid;gap:9px;min-height:0;overflow:auto;padding-right:4px;scrollbar-color:rgba(255,204,118,.42) rgba(0,0,0,.18);scrollbar-width:thin;}
.aiml-file-link{display:block;padding:13px;border-radius:18px;border:1px solid rgba(255,234,205,.12);background:linear-gradient(145deg,rgba(255,247,239,.05),rgba(0,0,0,.20));text-decoration:none;color:var(--text);}
.aiml-file-link:hover,.aiml-file-link.active{border-color:rgba(87,240,139,.42);background:linear-gradient(145deg,rgba(87,240,139,.12),rgba(0,0,0,.22));transform:translateY(-1px);}
.aiml-file-link strong{display:block;font-size:.96rem;line-height:1.2;margin-bottom:4px;}
.aiml-file-link span,.aiml-file-link em{display:block;color:var(--muted);font-style:normal;font-weight:850;font-size:.76rem;line-height:1.3;}
.aiml-editor-panel{padding:0!important;overflow:hidden;}
.aiml-editor-panel>.ai-twin-section-head{padding:18px 20px 12px;border-bottom:1px solid rgba(255,234,205,.10);}
.aiml-editor-form{display:grid;gap:14px;padding:18px 20px 20px;}
.aiml-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.aiml-permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.aiml-code-textarea{min-height:560px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88rem;line-height:1.45;white-space:pre;tab-size:2;background:rgba(255,247,239,.96)!important;color:#24150d!important;}
.aiml-editor-actions{justify-content:flex-start;}
.aiml-admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0;align-items:start;}
.aiml-admin-grid .panel{height:100%;}
.aiml-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.aiml-event-list{display:grid;gap:9px;}
.aiml-event-list article{padding:12px;border-radius:18px;border:1px solid rgba(255,234,205,.11);background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(0,0,0,.18));}
.aiml-event-list strong{display:block;font-size:.86rem;color:var(--gold);}
.aiml-event-list span,.aiml-event-list em{display:block;color:var(--muted);font-size:.74rem;font-style:normal;font-weight:850;line-height:1.35;margin-top:4px;}
@media(max-width:1100px){.aiml-library-layout,.aiml-admin-grid{grid-template-columns:1fr;}.aiml-file-sidebar{position:relative;top:auto;max-height:none;}.aiml-file-list{max-height:420px;}.aiml-meta-grid,.aiml-permission-grid,.aiml-settings-grid{grid-template-columns:1fr;}}
@media(max-width:760px){.ai-twin-icon-toolbar{grid-template-columns:repeat(2,minmax(0,1fr));}.aiml-library-hero{display:grid;}.aiml-status-card{min-width:0;width:100%;}.aiml-code-textarea{min-height:420px;}}

/* AI Twin Comms card fit fix: keep chat, bubbles, and composer inside the panel */
.ai-twin-comms-page,
.ai-twin-comms-page *{
  min-width:0;
}
.ai-twin-comms-page .wrap{
  --max:1240px;
}
.ai-twin-comms-layout{
  --ai-twin-comms-card-height:clamp(660px, calc(100vh - 210px), 780px);
  grid-template-columns:minmax(230px,290px) minmax(0,1fr)!important;
  align-items:start!important;
}
.ai-twin-targets-panel,
.ai-twin-chat-panel{
  height:var(--ai-twin-comms-card-height)!important;
  max-height:var(--ai-twin-comms-card-height)!important;
}
.ai-twin-targets-panel{
  min-height:0!important;
}
.ai-twin-chat-panel{
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  min-height:0!important;
}
.ai-twin-chat-head,
.ai-twin-selected-role-strip,
.ai-twin-composer{
  flex:0 0 auto!important;
}
.ai-twin-chat-head{
  gap:12px!important;
}
.ai-twin-chat-head > div:first-child,
.ai-twin-chat-head-actions,
.ai-twin-selected-role-strip,
.ai-twin-composer,
.ai-twin-composer textarea{
  min-width:0!important;
  max-width:100%!important;
}
.ai-twin-chat-head h2,
.ai-twin-chat-head p,
.ai-twin-target-link strong,
.ai-twin-target-link span,
.ai-twin-target-link em{
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.ai-twin-selected-role-strip{
  max-height:76px!important;
  overflow:auto!important;
  scrollbar-width:thin;
}
.ai-twin-chat-window{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:auto!important;
  overscroll-behavior:contain;
}
.ai-twin-message{
  max-width:calc(100% - 56px)!important;
  min-width:0!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.ai-twin-message p,
.ai-twin-message small,
.bubble-meta,
.bubble-meta strong,
.bubble-meta span{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.ai-twin-message p{
  white-space:pre-wrap!important;
}
.bubble-meta{
  flex-wrap:wrap!important;
}
.ai-twin-composer{
  width:100%!important;
}
.ai-twin-composer textarea{
  width:100%!important;
  min-height:76px!important;
  max-height:150px!important;
  resize:vertical!important;
}
.ai-twin-composer-actions{
  min-width:0!important;
}
.ai-twin-composer-actions .muted{
  min-width:0!important;
  overflow-wrap:anywhere!important;
}
.ai-twin-quick-prompts{
  max-width:100%!important;
}
.ai-twin-quick-prompts button{
  max-width:100%!important;
  white-space:normal!important;
  text-align:center!important;
}
@media(max-width:1100px){
  .ai-twin-comms-layout{
    grid-template-columns:1fr!important;
    --ai-twin-comms-card-height:auto;
  }
  .ai-twin-targets-panel,
  .ai-twin-chat-panel{
    height:auto!important;
    max-height:none!important;
  }
  .ai-twin-targets-panel{
    max-height:420px!important;
    overflow:hidden!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .ai-twin-target-list{
    overflow:auto!important;
  }
  .ai-twin-chat-window{
    min-height:420px!important;
    max-height:62vh!important;
  }
}
@media(max-width:760px){
  .ai-twin-comms-layout{
    gap:12px!important;
  }
  .ai-twin-chat-head,
  .ai-twin-composer-actions{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .ai-twin-message{
    max-width:calc(100% - 38px)!important;
  }
  .ai-twin-message.admin-msg{margin-right:30px!important;}
  .ai-twin-message.twin-msg{margin-left:30px!important;}
  .ai-twin-message.admin-msg::before{right:-30px!important;}
  .ai-twin-message.twin-msg::before{left:-30px!important;}
  .ai-twin-selected-role-strip{max-height:96px!important;}
}

/* Client messaging / invoice reminder admin page */
.client-message-page code{display:inline-flex;padding:2px 6px;border-radius:8px;border:1px solid var(--line);background:rgba(255,255,255,.07);color:var(--gold);font-size:.82em}
.client-message-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;overflow:hidden;position:relative}
.client-message-hero h1{font-size:clamp(2.05rem,4vw,3.6rem);line-height:.98;letter-spacing:-.055em;margin:12px 0 10px;max-width:760px}
.client-message-hero p{max-width:780px;line-height:1.5;font-weight:750}
.client-message-health{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:210px}
.client-message-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}
.client-message-kpis .kpi span{display:block;margin-top:5px;color:var(--muted);font-size:.82rem;font-weight:800}
.client-message-layout{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(320px,.72fr);gap:18px;align-items:start;margin-bottom:18px}
.client-message-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.client-message-panel-head h2{margin:0 0 7px;font-size:clamp(1.35rem,2.2vw,2rem);letter-spacing:-.035em}
.client-message-form textarea,.client-message-settings textarea{min-height:92px}
.client-message-form .form-grid.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.client-message-switches{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 16px}
.client-message-switches.stacked{display:grid;gap:9px;margin:12px 0 16px}
.client-message-switches label{display:inline-flex;align-items:center;gap:8px;width:auto;margin:0;padding:9px 11px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.055);font-size:.82rem;color:var(--text);font-weight:900}
.client-message-switches.stacked label{width:100%;border-radius:15px;justify-content:flex-start}
.client-message-switches input[type=checkbox]{width:auto;margin:0;accent-color:#ffbf5e;box-shadow:none}
.client-message-settings{position:sticky;top:82px}
.client-message-run-form{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.client-message-reminders,.client-message-log-panel{margin-top:18px}
.client-message-actions-cell form{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 8px}
.client-message-actions-cell .btn.tiny{padding:8px 10px;border-radius:12px;font-size:.74rem}
.client-message-status-form select{max-width:180px;margin:0;padding:9px 10px;border-radius:12px;font-size:.84rem}
@media(max-width:980px){.client-message-layout,.client-message-kpis{grid-template-columns:1fr}.client-message-settings{position:relative;top:auto}.client-message-hero{align-items:flex-start;flex-direction:column}.client-message-health{justify-content:flex-start}.client-message-form .form-grid.compact{grid-template-columns:1fr}}


.client-message-paid-state{
  display:grid;
  gap:3px;
  padding:10px 11px;
  border:1px solid rgba(103,224,123,.34);
  border-radius:14px;
  background:rgba(24,90,45,.24);
  color:#d8ffe0;
  font-size:.82rem;
  font-weight:900;
  margin:0 0 8px;
}
.client-message-paid-state span{
  color:var(--muted);
  font-size:.76rem;
  font-weight:800;
}
.btn.good{
  border-color:rgba(103,224,123,.48)!important;
  background:linear-gradient(135deg,rgba(42,138,70,.95),rgba(27,92,45,.95))!important;
  color:#f2fff4!important;
}

/* === AIML Twin Writes / Proposals admin page === */
.aiml-proposals-shell{display:flex;flex-direction:column;gap:18px}.aiml-proposal-layout{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:18px;align-items:start}.aiml-proposal-sidebar,.aiml-proposal-review-card{min-width:0}.aiml-proposal-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 14px}.aiml-proposal-tabs a{border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:var(--text,#f7efe7);border-radius:999px;padding:7px 10px;text-decoration:none;font-size:.86rem}.aiml-proposal-tabs a.active{background:rgba(245,166,66,.2);border-color:rgba(245,166,66,.55);box-shadow:0 0 0 1px rgba(245,166,66,.08) inset}.aiml-proposal-list{display:flex;flex-direction:column;gap:10px;max-height:720px;overflow:auto;padding-right:4px}.aiml-proposal-link{display:block;border:1px solid rgba(255,255,255,.12);background:rgba(20,14,12,.45);border-radius:16px;padding:12px;text-decoration:none;color:inherit}.aiml-proposal-link:hover,.aiml-proposal-link.active{border-color:rgba(245,166,66,.62);background:rgba(245,166,66,.1)}.aiml-proposal-link strong,.aiml-proposal-link span,.aiml-proposal-link em{display:block}.aiml-proposal-link span{color:var(--muted,#d7c2ad);font-size:.9rem;margin-top:4px}.aiml-proposal-link em{color:rgba(255,255,255,.55);font-size:.8rem;margin-top:6px}.aiml-proposal-kpis article a{color:inherit;text-decoration:underline;text-underline-offset:3px}.aiml-proposal-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.aiml-proposal-meta-grid article{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.045);border-radius:16px;padding:12px;min-width:0}.aiml-proposal-meta-grid span{display:block;color:var(--muted,#d7c2ad);font-size:.82rem}.aiml-proposal-meta-grid strong{display:block;margin-top:5px;overflow-wrap:anywhere}.aiml-proposal-summary{border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.045);padding:14px;margin:14px 0}.aiml-proposal-summary p{margin:.35rem 0 0;color:var(--muted,#d7c2ad);overflow-wrap:anywhere}.aiml-proposal-review-form label{display:block;margin-top:12px}.aiml-proposal-textarea{min-height:520px;max-height:70vh;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;overflow:auto}.aiml-proposal-actions{justify-content:flex-start;gap:10px;flex-wrap:wrap;margin-top:14px}.danger-btn{background:linear-gradient(135deg,#8b1d1d,#d94b36)!important;border-color:rgba(255,255,255,.16)!important;color:#fff!important}.danger-btn:hover{filter:brightness(1.08)}@media(max-width:980px){.aiml-proposal-layout{grid-template-columns:1fr}.aiml-proposal-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.aiml-proposal-list{max-height:420px}}@media(max-width:620px){.aiml-proposal-meta-grid{grid-template-columns:1fr}.aiml-proposal-textarea{min-height:360px}}

/* AI Twin Comms Futuristic Console Upgrade — safe transport + card fit polish */
.ai-twin-comms-page{
  --console-green:#57f08b;
  --console-cyan:#6de8ff;
  --console-amber:#ffcc76;
  --console-red:#ff5d5d;
  --console-panel:rgba(7,11,10,.86);
  --console-panel-2:rgba(12,18,15,.74);
  --console-line:rgba(109,232,255,.22);
  --console-glow:0 0 22px rgba(87,240,139,.15),0 0 48px rgba(109,232,255,.08),0 24px 80px rgba(0,0,0,.44);
  background-color:#040606!important;
  color:#eefcf2;
}
.ai-twin-comms-page::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    linear-gradient(rgba(109,232,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(109,232,255,.028) 1px,transparent 1px),
    radial-gradient(circle at 18% 12%,rgba(87,240,139,.16),transparent 30%),
    radial-gradient(circle at 82% 5%,rgba(109,232,255,.12),transparent 30%),
    radial-gradient(circle at 50% 100%,rgba(255,204,118,.10),transparent 34%),
    linear-gradient(180deg,rgba(4,6,6,.50),rgba(2,2,2,.84));
  background-size:34px 34px,34px 34px,auto,auto,auto,auto;
  mix-blend-mode:screen;
}
.ai-twin-comms-page::after{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:9999;
  opacity:.12;
  background:repeating-linear-gradient(180deg,rgba(255,255,255,.18) 0,rgba(255,255,255,.18) 1px,transparent 1px,transparent 4px);
}
.ai-twin-comms-page .topbar{
  background:linear-gradient(180deg,rgba(4,8,8,.88),rgba(4,8,8,.54))!important;
  border-bottom:1px solid rgba(109,232,255,.16)!important;
  backdrop-filter:blur(14px);
}
.ai-twin-comms-page .panel{
  position:relative;
  border:1px solid rgba(109,232,255,.18)!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,0)),
    radial-gradient(circle at 0 0,rgba(87,240,139,.08),transparent 28%),
    linear-gradient(145deg,var(--console-panel),rgba(17,12,8,.82))!important;
  box-shadow:var(--console-glow)!important;
  overflow:hidden;
}
.ai-twin-comms-page .panel::before{
  content:"";
  position:absolute;
  left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent,var(--console-green),var(--console-cyan),var(--console-amber),transparent);
  opacity:.72;
  pointer-events:none;
}
.ai-twin-comms-page .eyebrow,
.ai-twin-comms-page small,
.ai-twin-comms-page .bubble-meta{
  letter-spacing:.045em;
}
.ai-twin-comms-hero{
  border-radius:30px!important;
  background:
    linear-gradient(120deg,rgba(87,240,139,.12),transparent 36%),
    radial-gradient(circle at 100% 0,rgba(109,232,255,.16),transparent 32%),
    linear-gradient(145deg,rgba(5,10,9,.92),rgba(21,14,8,.88))!important;
}
.ai-twin-comms-hero h1{
  color:#f6fff8;
  text-shadow:0 0 18px rgba(87,240,139,.18),0 0 30px rgba(109,232,255,.10);
}
.ai-twin-comms-status-card{
  border-color:rgba(87,240,139,.38)!important;
  background:
    radial-gradient(circle at 50% 18%,rgba(87,240,139,.22),transparent 42%),
    linear-gradient(180deg,rgba(5,20,14,.92),rgba(0,0,0,.42))!important;
  box-shadow:inset 0 0 30px rgba(87,240,139,.07),0 0 28px rgba(87,240,139,.10)!important;
}
.ai-twin-comms-status-card strong,
.ai-twin-comms-page .pill.good,
.ai-twin-comms-page .ai-twin-target-link.active strong{
  color:var(--console-green)!important;
  text-shadow:0 0 14px rgba(87,240,139,.32);
}
.ai-twin-icon-toolbar{gap:9px!important;}
.ai-twin-icon-btn,
.ai-twin-quick-prompts button,
.ai-twin-chat-head-actions .btn,
.ai-twin-composer-actions button{
  border:1px solid rgba(109,232,255,.20)!important;
  background:linear-gradient(180deg,rgba(109,232,255,.10),rgba(87,240,139,.04))!important;
  color:#ecfff4!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 18px rgba(109,232,255,.06)!important;
}
.ai-twin-icon-btn:hover,
.ai-twin-icon-btn.active,
.ai-twin-quick-prompts button:hover,
.ai-twin-composer-actions button:hover{
  border-color:rgba(87,240,139,.55)!important;
  background:linear-gradient(180deg,rgba(87,240,139,.18),rgba(109,232,255,.08))!important;
  transform:translateY(-1px);
}
.ai-twin-comms-layout{
  --ai-twin-comms-card-height:clamp(700px, calc(100vh - 170px), 860px)!important;
  grid-template-columns:minmax(235px,300px) minmax(0,1fr)!important;
  gap:18px!important;
  align-items:stretch!important;
}
.ai-twin-targets-panel,
.ai-twin-chat-panel{
  height:var(--ai-twin-comms-card-height)!important;
  max-height:var(--ai-twin-comms-card-height)!important;
}
.ai-twin-targets-panel{
  border-radius:26px!important;
  overflow:hidden!important;
}
.ai-twin-target-list{
  min-height:0!important;
  overflow:auto!important;
  padding:0 6px 4px 0!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(87,240,139,.55) rgba(0,0,0,.22);
}
.ai-twin-target-link{
  border-radius:18px!important;
  border-color:rgba(109,232,255,.13)!important;
  background:linear-gradient(145deg,rgba(109,232,255,.055),rgba(0,0,0,.26))!important;
}
.ai-twin-target-link.active{
  border-color:rgba(87,240,139,.62)!important;
  background:
    radial-gradient(circle at 0 0,rgba(87,240,139,.17),transparent 42%),
    linear-gradient(145deg,rgba(9,30,18,.86),rgba(0,0,0,.30))!important;
  box-shadow:inset 0 0 22px rgba(87,240,139,.06),0 0 22px rgba(87,240,139,.14)!important;
}
.ai-twin-target-link strong,
.ai-twin-target-link span,
.ai-twin-target-link em,
.mini-role-list small{
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
.mini-role-list small,
.ai-twin-selected-role-strip span{
  border-color:rgba(87,240,139,.27)!important;
  background:rgba(87,240,139,.08)!important;
  color:#effff4!important;
}
.ai-twin-chat-panel{
  border-radius:26px!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  min-height:0!important;
}
.ai-twin-chat-head{
  flex:0 0 auto!important;
  background:
    linear-gradient(90deg,rgba(109,232,255,.09),transparent 54%),
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(0,0,0,.04))!important;
  border-bottom:1px solid rgba(109,232,255,.16)!important;
}
.ai-twin-chat-head h2{
  color:#f4fff8;
  text-shadow:0 0 16px rgba(87,240,139,.18);
}
.ai-twin-selected-role-strip{
  flex:0 0 auto!important;
  border-bottom:1px solid rgba(109,232,255,.12)!important;
  max-height:74px!important;
  overflow:auto!important;
}
.ai-twin-chat-window{
  position:relative;
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:12px 16px!important;
  border-radius:22px!important;
  border:1px solid rgba(87,240,139,.20)!important;
  background:
    linear-gradient(rgba(87,240,139,.028) 1px,transparent 1px),
    radial-gradient(circle at 50% 0,rgba(109,232,255,.075),transparent 36%),
    linear-gradient(180deg,rgba(1,4,3,.90),rgba(5,7,5,.82))!important;
  background-size:100% 28px,auto,auto;
  box-shadow:inset 0 0 34px rgba(87,240,139,.055),inset 0 0 80px rgba(0,0,0,.34)!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.ai-twin-chat-window::before{
  content:"LIVE COMMS STREAM";
  position:sticky;
  top:0;
  z-index:2;
  display:block;
  margin:-18px -18px 14px;
  padding:8px 14px;
  border-bottom:1px solid rgba(109,232,255,.16);
  background:linear-gradient(90deg,rgba(3,12,10,.96),rgba(3,12,10,.72));
  color:rgba(109,232,255,.88);
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.16em;
}
.ai-twin-message{
  border-radius:18px!important;
  border-color:rgba(109,232,255,.16)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.ai-twin-message.admin-msg{
  background:linear-gradient(145deg,rgba(87,240,139,.16),rgba(0,0,0,.30))!important;
  border-color:rgba(87,240,139,.32)!important;
}
.ai-twin-message.twin-msg{
  background:linear-gradient(145deg,rgba(109,232,255,.10),rgba(255,204,118,.06),rgba(0,0,0,.31))!important;
  border-color:rgba(109,232,255,.25)!important;
}
.ai-twin-message p{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
  font-size:.86rem!important;
  line-height:1.55!important;
  white-space:pre-wrap!important;
  overflow-wrap:anywhere!important;
}
.bubble-meta{
  border-bottom-color:rgba(109,232,255,.12)!important;
  color:rgba(224,247,238,.66)!important;
}
.bubble-meta strong{color:#f5fff8!important;}
.ai-twin-composer{
  flex:0 0 auto!important;
  padding:12px 18px 14px!important;
  border-top:1px solid rgba(109,232,255,.16)!important;
  background:linear-gradient(180deg,rgba(7,12,10,.70),rgba(0,0,0,.38))!important;
  overflow:visible!important;
}
.ai-twin-composer textarea{
  display:block!important;
  width:100%!important;
  min-height:84px!important;
  max-height:180px!important;
  border-radius:18px!important;
  border:1px solid rgba(109,232,255,.24)!important;
  background:rgba(236,255,244,.96)!important;
  color:#0d1913!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace!important;
  font-size:.9rem!important;
}
.ai-twin-transport-status{
  margin-top:7px;
  padding:7px 10px;
  border-radius:12px;
  border:1px solid rgba(109,232,255,.14);
  background:rgba(109,232,255,.045);
  color:rgba(235,255,247,.72);
  font-size:.72rem;
  font-weight:850;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.ai-twin-transport-status.hot{
  border-color:rgba(87,240,139,.36);
  background:rgba(87,240,139,.075);
  color:#dffff0;
  box-shadow:0 0 18px rgba(87,240,139,.08);
}
.ai-twin-composer-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  margin-top:9px!important;
  min-width:0!important;
}
.ai-twin-composer-actions .muted{
  flex:1 1 320px!important;
  min-width:0!important;
  font-size:.74rem!important;
  line-height:1.35!important;
  overflow-wrap:anywhere!important;
}
.ai-twin-composer-actions button{
  position:static!important;
  flex:0 0 auto!important;
  margin-left:auto!important;
  border-radius:16px!important;
  padding:12px 18px!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.ai-twin-memory-learning-card,
.ai-twin-comms-stat-panel,
.ai-twin-comms-settings-panel{
  border-color:rgba(109,232,255,.18)!important;
  background:linear-gradient(145deg,rgba(6,13,11,.92),rgba(22,15,9,.86))!important;
}
@media(max-width:1100px){
  .ai-twin-comms-layout{
    grid-template-columns:1fr!important;
    --ai-twin-comms-card-height:auto!important;
  }
  .ai-twin-targets-panel,
  .ai-twin-chat-panel{
    height:auto!important;
    max-height:none!important;
  }
  .ai-twin-targets-panel{max-height:430px!important;}
  .ai-twin-chat-window{min-height:440px!important;max-height:65vh!important;}
}
@media(max-width:760px){
  .ai-twin-comms-page::before{background-size:26px 26px,26px 26px,auto,auto,auto,auto;}
  .ai-twin-comms-hero{border-radius:22px!important;}
  .ai-twin-chat-window{margin:10px 12px!important;}
  .ai-twin-composer-actions button{width:100%!important;margin-left:0!important;}
  .ai-twin-composer-actions .muted{flex-basis:100%!important;}
}


/* CromeSky Twin Competition + Voting Engine */
.twin-competition-page .panel{
  border-color:rgba(109,232,255,.18)!important;
  box-shadow:0 22px 70px rgba(0,0,0,.32), inset 0 0 40px rgba(87,240,139,.035)!important;
}
.twin-competition-hero{
  background:
    radial-gradient(circle at 88% 14%,rgba(87,240,139,.18),transparent 30%),
    linear-gradient(135deg,rgba(5,18,16,.96),rgba(42,23,11,.90))!important;
}
.twin-competition-explain{margin:16px 0!important;}
.twin-competition-grid{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);
  gap:16px;
  margin:16px 0;
  align-items:start;
}
.results-grid{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);}
.twin-competition-settings{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.twin-competition-run-form label{display:block;margin-bottom:12px;}
.twin-competition-run-form span,
.twin-competition-settings span{display:block;font-weight:950;color:#f4fff8;margin-bottom:6px;}
.twin-competition-run-form textarea,
.twin-competition-settings input[type="text"],
.twin-competition-settings input[type="number"]{
  width:100%;border-radius:16px;border:1px solid rgba(109,232,255,.22);
  background:rgba(245,255,249,.94);color:#111;padding:12px;font-weight:850;
}
.twin-competition-run-form button,
.twin-competition-settings button{
  border-radius:16px;border:1px solid rgba(87,240,139,.35);
  background:linear-gradient(135deg,#57f08b,#6de8ff);color:#06120c;
  font-weight:1000;padding:12px 16px;box-shadow:0 0 22px rgba(87,240,139,.18);
}
.twin-competition-candidates{margin-top:16px;display:grid;gap:10px;}
.twin-competition-candidates h3{margin:0;color:#f4fff8;}
.twin-competition-candidates article,
.twin-vote-list article{
  border:1px solid rgba(109,232,255,.16);border-radius:16px;padding:12px;
  background:linear-gradient(145deg,rgba(109,232,255,.06),rgba(0,0,0,.26));
}
.twin-competition-candidates strong,
.twin-vote-list strong{display:block;color:#f7fff8;overflow-wrap:anywhere;}
.twin-competition-candidates span,
.twin-vote-list span{display:block;color:rgba(235,255,247,.74);font-weight:850;font-size:.82rem;margin-top:4px;}
.twin-competition-candidates em{display:block;color:#57f08b;font-style:normal;font-weight:900;font-size:.8rem;margin-top:4px;}
.twin-vote-list{display:grid;gap:10px;max-height:620px;overflow:auto;padding-right:4px;}
.twin-vote-list p{font-size:.82rem;color:rgba(235,255,247,.72);line-height:1.35;margin:.45rem 0 0;}
.twin-competition-table{max-height:650px;overflow:auto;}
.twin-competition-table table{width:100%;border-collapse:separate;border-spacing:0 8px;}
.twin-competition-table th{font-size:.74rem;text-transform:uppercase;color:rgba(235,255,247,.65);text-align:left;padding:6px 8px;}
.twin-competition-table td{background:rgba(0,0,0,.24);border-top:1px solid rgba(109,232,255,.12);border-bottom:1px solid rgba(109,232,255,.12);padding:10px 8px;color:#f4fff8;font-weight:850;}
.twin-target-limit-note{font-size:.78rem;line-height:1.35;margin:0 0 10px!important;}
.twin-target-limit-note a{color:#6de8ff;font-weight:1000;}
@media(max-width:1100px){
  .twin-competition-grid,.results-grid{grid-template-columns:1fr;}
  .twin-competition-settings{grid-template-columns:1fr!important;}
}

/* === CromeSky Digital Twin Civilization Console === */
.twin-civilization-page {
  background:
    radial-gradient(circle at 18% 8%, rgba(31, 255, 142, .18), transparent 28%),
    radial-gradient(circle at 82% 20%, rgba(0, 211, 255, .13), transparent 34%),
    linear-gradient(135deg, rgba(8, 22, 17, .82), rgba(29, 10, 3, .86)),
    var(--page-bg, #160b05);
}
.twin-civ-shell { position: relative; }
.twin-civ-shell:before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(76,255,151,.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(76,255,151,.04) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.025) 50%, transparent 50%);
  background-size: 42px 42px, 42px 42px, 100% 4px;
  mix-blend-mode: screen;
  opacity: .46;
  z-index: 0;
}
.twin-civ-shell > * { position: relative; z-index: 1; }
.twin-civ-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 1.2rem;
  border-color: rgba(81, 255, 151, .34) !important;
  box-shadow: 0 0 34px rgba(28,255,140,.10), inset 0 0 24px rgba(0,0,0,.36);
}
.twin-civ-hero h1 {
  letter-spacing: -0.05em;
  text-shadow: 0 0 18px rgba(80,255,160,.18);
}
.twin-civ-token-core {
  border: 1px solid rgba(87,255,163,.36);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(9,35,22,.86), rgba(14,12,6,.72));
  padding: 1rem;
  display: grid;
  gap: .35rem;
  align-content: center;
  box-shadow: inset 0 0 28px rgba(64,255,145,.08), 0 0 18px rgba(64,255,145,.10);
}
.twin-civ-token-core strong {
  font-size: 2rem;
  line-height: 1;
  color: #65ff9e;
  text-shadow: 0 0 18px rgba(95,255,158,.30);
}
.twin-civ-warning {
  display: flex;
  gap: .75rem;
  align-items: center;
  border-color: rgba(255,190,77,.35) !important;
  background: linear-gradient(135deg, rgba(72,45,9,.72), rgba(29,12,4,.72)) !important;
  color: rgba(255,238,204,.94);
}
.twin-civ-warning strong { color: #ffd27a; }
.twin-civ-stats, .twin-civ-controls, .twin-civ-runner {
  border-color: rgba(91,255,174,.22) !important;
}
.twin-civ-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
  gap: 1rem;
  align-items: start;
}
.twin-civ-results { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.twin-civ-kpis article {
  background: linear-gradient(145deg, rgba(11,31,22,.84), rgba(43,20,9,.70)) !important;
  border-color: rgba(91,255,174,.26) !important;
  box-shadow: inset 0 0 18px rgba(91,255,174,.05);
}
.twin-civ-kpis article strong { color: #f7fff0; text-shadow: 0 0 12px rgba(103,255,165,.16); }
.twin-civ-last-status {
  margin-top: 1rem;
  padding: .85rem 1rem;
  border: 1px solid rgba(91,255,174,.22);
  border-radius: 16px;
  background: rgba(5,18,12,.60);
  color: rgba(236,255,235,.86);
  font-size: .92rem;
}
.twin-civ-settings label span:first-child,
.twin-civ-settings label > span { color: rgba(246,232,204,.88); font-weight: 800; }
.twin-civ-settings input,
.twin-civ-settings select {
  background: rgba(255,247,235,.94) !important;
  border: 1px solid rgba(255,255,255,.20) !important;
}
.twin-civ-form-divider {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
  border: 1px solid rgba(97,214,255,.22);
  border-radius: 18px;
  padding: .9rem 1rem;
  background: linear-gradient(90deg, rgba(9,30,34,.75), rgba(22,11,6,.55));
  color: #bdf5ff;
}
.twin-civ-form-divider span { color: rgba(255,244,220,.72); font-size: .82rem; }
.twin-civ-run-form button,
.twin-civ-settings .ai-twin-settings-actions button {
  border: 1px solid rgba(92,255,162,.52);
  color: #06140c;
  background: linear-gradient(135deg, #66ff9d, #f6b85d) !important;
  box-shadow: 0 0 22px rgba(92,255,162,.22);
}
.twin-civ-engine-map {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: .65rem;
  margin-top: 1rem;
}
.twin-civ-engine-map article {
  border: 1px solid rgba(92,255,162,.22);
  border-radius: 16px;
  background: rgba(7,22,14,.70);
  padding: .75rem;
}
.twin-civ-engine-map strong { display:block; color:#f7f1df; }
.twin-civ-engine-map span { color:#62ff9d; font-size:.82rem; }
.twin-civ-tribes,
.twin-civ-ledger,
.twin-civ-memory-list {
  display: grid;
  gap: .7rem;
  max-height: 520px;
  overflow: auto;
  padding-right: .25rem;
}
.twin-civ-tribes article,
.twin-civ-ledger article,
.twin-civ-memory-list article {
  border: 1px solid rgba(230,184,105,.22);
  border-radius: 18px;
  padding: .85rem;
  background: linear-gradient(145deg, rgba(22,12,7,.86), rgba(8,25,16,.62));
}
.twin-civ-tribes strong,
.twin-civ-ledger strong,
.twin-civ-memory-list strong { color: #fff3df; display: block; }
.twin-civ-tribes span,
.twin-civ-ledger small,
.twin-civ-memory-list span { color: rgba(255,239,217,.72); }
.twin-civ-tribes div { display:flex; flex-wrap: wrap; gap:.4rem; margin-top:.55rem; }
.twin-civ-tribes em {
  font-style: normal;
  font-size: .78rem;
  padding: .22rem .5rem;
  border-radius: 999px;
  color: #07140d;
  background: rgba(102,255,157,.86);
}
.twin-civ-ledger strong { display:flex; justify-content:space-between; gap:.5rem; }
.twin-civ-ledger strong span { color:#6aff9e; }
.twin-civ-memory-list p { margin: .45rem 0 0; color: rgba(245,236,218,.84); font-size:.86rem; line-height:1.45; }
.twin-civ-table table th { color: #b9ffcf; }
@media (max-width: 980px) {
  .twin-civ-hero,
  .twin-civ-grid,
  .twin-civ-results { grid-template-columns: 1fr; }
}


/* === CromeSky Birth + Death Lifecycle Engine === */
.twin-life-stats-card{
  border-color:rgba(255,98,134,.26)!important;
  background:
    radial-gradient(circle at 12% 18%,rgba(102,255,157,.10),transparent 28%),
    radial-gradient(circle at 86% 20%,rgba(255,78,117,.13),transparent 30%),
    linear-gradient(145deg,rgba(8,23,16,.92),rgba(35,9,12,.72))!important;
}
.twin-life-kpis article:nth-child(2),
.twin-life-kpis article:nth-child(3){border-color:rgba(102,255,157,.32)!important;}
.twin-life-kpis article:nth-child(4),
.twin-life-kpis article:nth-child(5){border-color:rgba(255,98,134,.35)!important;}
.twin-life-events-panel{border-color:rgba(255,98,134,.24)!important;}
.twin-life-events-list article{position:relative;overflow:hidden;}
.twin-life-events-list article:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#6aff9e;box-shadow:0 0 18px rgba(106,255,158,.55);}
.twin-life-events-list article.life-event-death:before{background:#ff6286;box-shadow:0 0 18px rgba(255,98,134,.55);}
.twin-life-events-list article.life-event-birth strong{color:#adffd0;}
.twin-life-events-list article.life-event-death strong{color:#ffc2ce;}
.twin-life-stats-card .pill.good{box-shadow:0 0 18px rgba(102,255,157,.22);}
@media (max-width: 980px){.twin-life-kpis{grid-template-columns:1fr!important;}}

/* =========================================================
   CromeSky Digital Twin Family Tree Engine
   ========================================================= */
.twin-family-tree-page{
  background:
    radial-gradient(circle at 12% 8%, rgba(38,255,187,.16), transparent 26%),
    radial-gradient(circle at 82% 18%, rgba(91,169,255,.14), transparent 28%),
    linear-gradient(135deg, #060b12 0%, #10151f 46%, #1a120b 100%);
}
.twin-family-shell{position:relative;}
.twin-family-hero{
  display:flex;align-items:center;justify-content:space-between;gap:22px;
  border:1px solid rgba(81,255,205,.28);
  background:linear-gradient(135deg, rgba(7,18,28,.94), rgba(16,12,8,.91));
  box-shadow:0 0 44px rgba(30,255,190,.09), inset 0 0 42px rgba(94,255,205,.045);
}
.twin-family-hero h1{margin:.2rem 0 .55rem;font-size:clamp(2rem,4vw,4rem);letter-spacing:-.055em;}
.twin-family-core{
  min-width:260px;padding:18px;border-radius:24px;border:1px solid rgba(80,255,206,.26);
  background:linear-gradient(180deg, rgba(9,24,32,.84), rgba(6,12,18,.78));
  box-shadow:inset 0 0 30px rgba(62,255,207,.06);
}
.twin-family-core strong{display:block;margin-top:12px;font-size:2.15rem;color:#eafff8;}
.twin-family-core small{display:block;color:rgba(219,255,246,.68);line-height:1.45;}
.twin-family-kpis article{min-height:118px;}
.twin-family-layout-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(300px,.55fr);gap:18px;margin-top:18px;align-items:start;}
.twin-family-settings-card,.twin-family-detail-card,.twin-family-graph-card,.twin-family-stats{
  border:1px solid rgba(88,255,208,.2);
  background:linear-gradient(180deg, rgba(8,16,25,.93), rgba(10,12,16,.9));
  box-shadow:0 24px 70px rgba(0,0,0,.32), inset 0 0 36px rgba(85,255,218,.04);
}
.twin-family-settings{grid-template-columns:repeat(2,minmax(0,1fr));}
.twin-family-settings .ai-switch-line{grid-column:1/-1;}
.twin-family-action-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;}
.twin-family-action-row form{margin:0;}
.twin-family-action-row button,.twin-family-toolbar button,.twin-family-settings .ai-twin-settings-actions button{
  border:1px solid rgba(86,255,209,.28);background:linear-gradient(135deg, rgba(20,255,179,.18), rgba(48,143,255,.16));
  color:#ecfff9;border-radius:16px;padding:11px 16px;font-weight:800;cursor:pointer;
  box-shadow:0 0 22px rgba(62,255,203,.10);
}
.twin-family-action-row button.secondary,.twin-family-toolbar button.secondary{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15);}
.twin-family-selected{border-radius:22px;border:1px solid rgba(255,255,255,.1);padding:16px;background:rgba(0,0,0,.22);}
.selected-node-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:10px;margin-bottom:12px;}
.selected-node-title strong{font-size:1.2rem;color:#f0fff9;}
.selected-node-title span{font-size:.82rem;color:rgba(229,255,247,.62);}
.selected-score-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0;}
.selected-score-grid span{display:grid;gap:2px;padding:10px;border-radius:15px;background:rgba(69,255,210,.07);border:1px solid rgba(82,255,211,.13);text-align:center;}
.selected-score-grid b{font-size:1.15rem;color:#75ffd5;}.selected-score-grid small{font-size:.72rem;color:rgba(230,255,247,.62);}
.twin-family-graph-card{margin-top:18px;padding-bottom:22px;}
.twin-family-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:12px 0 16px;}
.twin-family-toolbar label{display:grid;gap:6px;color:rgba(233,255,249,.72);font-size:.82rem;font-weight:800;}
.twin-family-toolbar input,.twin-family-toolbar select,.twin-family-settings input,.twin-family-settings select{
  border-radius:14px;border:1px solid rgba(103,255,216,.19);background:rgba(1,8,14,.72);color:#f2fff9;padding:11px 12px;outline:none;
}
.twin-family-toolbar input[type="search"]{min-width:260px;}
.twin-family-toolbar .mini-check{display:flex;align-items:center;gap:8px;padding:11px 12px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);}
.twin-family-mini-stat{margin-left:auto;padding:11px 14px;border-radius:999px;background:rgba(68,255,209,.08);border:1px solid rgba(70,255,208,.18);color:#a8ffe7;font-weight:900;}
.twin-family-graph-shell{position:relative;height:720px;border-radius:28px;overflow:hidden;border:1px solid rgba(83,255,211,.19);background:
  linear-gradient(rgba(80,255,205,.045) 1px, transparent 1px),
  linear-gradient(90deg, rgba(80,255,205,.045) 1px, transparent 1px),
  radial-gradient(circle at 30% 20%, rgba(52,255,198,.13), transparent 24%),
  radial-gradient(circle at 70% 70%, rgba(75,147,255,.10), transparent 30%),
  rgba(1,7,12,.88);
  background-size:34px 34px,34px 34px,100% 100%,100% 100%,100% 100%;
  box-shadow:inset 0 0 80px rgba(66,255,210,.08);
}
.twin-family-graph-shell:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(transparent 50%, rgba(255,255,255,.025) 51%);background-size:100% 5px;mix-blend-mode:screen;opacity:.42;}
#familyTreeSvg{width:100%;height:100%;display:block;cursor:grab;}
#familyTreeSvg:active{cursor:grabbing;}
.family-edge{fill:none;stroke-width:2.4;opacity:.68;filter:url(#familyGlow);}
.family-edge.birth{stroke:#50ffd2;marker-end:url(#arrowBirth);} .family-edge.memory{stroke:#79a7ff;stroke-dasharray:7 6;marker-end:url(#arrowMemory);}
.family-edge.active{stroke-width:4.2;opacity:1;}
#arrowBirth path{fill:#50ffd2;} #arrowMemory path{fill:#79a7ff;}
.family-edge-label{font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;text-anchor:middle;paint-order:stroke;stroke:#061018;stroke-width:4px;}
.family-edge-label.birth{fill:#8affdf}.family-edge-label.memory{fill:#9ebcff;}
.family-node{cursor:pointer;filter:url(#familyGlow);transition:opacity .2s ease;}
.family-node rect{fill:rgba(5,18,26,.94);stroke:rgba(112,255,218,.48);stroke-width:1.4;}
.family-node.accepted rect{fill:linear-gradient(135deg, rgba(8,36,29,.95), rgba(8,18,24,.95));stroke:#63ffce;}
.family-node.sandbox rect{stroke:#ffd166;}.family-node.rejected rect{stroke:#ff6b6b;fill:rgba(28,8,10,.92);}
.family-node.selected rect{stroke:#ffffff;stroke-width:3;}
.family-node .node-title{font-size:14px;font-weight:900;fill:#f0fff9;}
.family-node .node-sub{font-size:11px;fill:rgba(226,255,247,.68);}
.family-node .node-score{font-size:12px;font-weight:900;fill:#84ffd9;}
.family-node.low .node-score{fill:#ff8e8e}.family-node.mid .node-score{fill:#ffe08a}.family-node.hot .node-score{fill:#63ffce;}
.family-node circle{fill:rgba(0,0,0,.35);stroke:rgba(255,255,255,.22);}.family-node .node-kids{font-size:12px;font-weight:900;fill:#fff;}
.twin-family-empty{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:8px;color:#eafff7;background:rgba(0,0,0,.28);}
.twin-family-empty span{color:rgba(232,255,248,.66);}
@media (max-width: 980px){.twin-family-hero,.twin-family-layout-grid{grid-template-columns:1fr;display:grid}.twin-family-settings{grid-template-columns:1fr}.twin-family-toolbar input[type="search"]{min-width:100%}.twin-family-mini-stat{margin-left:0}.twin-family-graph-shell{height:620px}.selected-score-grid{grid-template-columns:repeat(2,1fr)}}

/* === CromeSky Ancestry-style Family Tree Links Patch === */
.twin-family-toolbar select option[value="ancestry"]{font-weight:900;}
.twin-family-graph-shell{height:780px;}
.family-edge.ancestry{stroke:#85ffe2;stroke-width:3.2;opacity:.88;stroke-linecap:round;stroke-linejoin:round;filter:url(#familyGlow);}
.family-edge.ancestry.family-parent-bar{stroke:#e7fff8;stroke-width:2.2;opacity:.74;}
.family-edge.ancestry.family-child-stem{stroke:#59ffd0;stroke-width:3.6;}
.family-edge.ancestry.active{stroke:#ffffff;stroke-width:5;opacity:1;}
.family-join-dot{fill:#061018;stroke:#7dffe1;stroke-width:2.2;filter:url(#familyGlow);}
.family-join-dot.child{fill:#55ffd1;stroke:#061018;}
.family-join-dot.active{fill:#ffffff;stroke:#ffffff;}
.family-edge-label.ancestry-label{fill:#dffff7;font-size:10px;letter-spacing:.08em;}
.family-node.ancestry-card rect{width:230px;height:98px;fill:rgba(4,16,24,.96);stroke:rgba(148,255,230,.62);stroke-width:1.65;filter:drop-shadow(0 0 12px rgba(80,255,210,.10));}
.family-node.ancestry-card .lineage-port{fill:#07121a;stroke:#83ffe3;stroke-width:2;}
.family-node.ancestry-card .node-title{font-size:14px;}
.family-node.ancestry-card .node-sub{font-size:11px;}
.family-node.ancestry-card .node-score{font-size:11px;}
.family-node.ancestry-card .node-role{font-size:10px;font-weight:850;fill:rgba(229,255,247,.58);}
.family-node.ancestry-card .children-badge{fill:rgba(0,0,0,.42);stroke:rgba(131,255,227,.38);stroke-width:1.3;}
.family-node.ancestry-card.selected rect{stroke:#ffffff;stroke-width:3.2;filter:drop-shadow(0 0 18px rgba(255,255,255,.25));}
@media (max-width: 980px){.twin-family-graph-shell{height:660px;}}


/* === CromeSky Ancestry Feel + Connected Records Only Patch === */
.twin-family-graph-card{
  background:
    radial-gradient(circle at 18% 0%, rgba(230,194,111,.13), transparent 28%),
    linear-gradient(180deg, rgba(8,28,26,.96), rgba(18,16,10,.94));
}
.twin-family-graph-card .ai-twin-section-head h2:before{
  content:"";
  display:inline-block;
  width:10px;
  height:10px;
  margin-right:10px;
  border-radius:999px;
  background:#c9a64f;
  box-shadow:0 0 0 5px rgba(201,166,79,.11), 0 0 24px rgba(201,166,79,.35);
}
.ancestry-mode-pill{
  background:linear-gradient(135deg, rgba(208,168,78,.22), rgba(54,130,94,.20))!important;
  border-color:rgba(226,196,126,.34)!important;
  color:#fff2c9!important;
}
.twin-family-graph-shell{
  border-color:rgba(207,178,112,.36)!important;
  background:
    linear-gradient(rgba(232,217,176,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(232,217,176,.035) 1px, transparent 1px),
    radial-gradient(circle at 48% 8%, rgba(230,191,105,.12), transparent 25%),
    radial-gradient(circle at 50% 92%, rgba(28,120,87,.16), transparent 35%),
    linear-gradient(180deg, rgba(5,25,23,.94), rgba(10,13,12,.96))!important;
  background-size:30px 30px,30px 30px,100% 100%,100% 100%,100% 100%!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,239,193,.05),
    inset 0 0 90px rgba(207,178,112,.08),
    0 25px 80px rgba(0,0,0,.38)!important;
}
.twin-family-graph-shell:after{
  content:"";
  position:absolute;
  inset:18px;
  pointer-events:none;
  border-radius:22px;
  border:1px solid rgba(223,199,139,.10);
  box-shadow:inset 0 0 60px rgba(0,0,0,.26);
}
.ancestry-generation-ribbon{
  fill:rgba(223,199,139,.12);
  stroke:rgba(223,199,139,.32);
  stroke-width:1;
}
.ancestry-generation-label{
  fill:#fff1c3;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  paint-order:stroke;
  stroke:#071614;
  stroke-width:4px;
}
.family-edge.ancestry{
  stroke:#d8c17a!important;
  stroke-width:3.1!important;
  opacity:.86!important;
}
.family-edge.ancestry.family-parent-bar{
  stroke:#fff0bd!important;
  stroke-width:2.3!important;
}
.family-edge.ancestry.family-child-stem{
  stroke:#65d99d!important;
  stroke-width:3.7!important;
}
.family-join-dot{
  fill:#12231f!important;
  stroke:#e7ce85!important;
}
.family-join-dot.child{
  fill:#66d99c!important;
  stroke:#0b1715!important;
}
.family-edge-label.ancestry-label{
  fill:#fff0bd!important;
  stroke:#071614!important;
}
.family-node.ancestry-card > rect:first-child{
  fill:#f4ead2;
  stroke:#d2b46e;
  stroke-width:1.8;
  filter:drop-shadow(0 12px 18px rgba(0,0,0,.22));
}
.family-node.ancestry-card.accepted > rect:first-child{stroke:#7cbf8e;}
.family-node.ancestry-card.sandbox > rect:first-child{stroke:#d6a84d;}
.family-node.ancestry-card.rejected > rect:first-child{fill:#291713;stroke:#d16e62;}
.family-node.ancestry-card.selected > rect:first-child{
  stroke:#fff4c7;
  stroke-width:3.2;
  filter:drop-shadow(0 0 22px rgba(223,199,139,.28));
}
.family-node.ancestry-card .record-tab{
  fill:rgba(20,68,58,.92);
  stroke:rgba(20,68,58,.35);
  stroke-width:1;
}
.family-node.ancestry-card .record-label{
  font-size:9px;
  font-weight:950;
  letter-spacing:.12em;
  fill:#fff2c7;
}
.family-node.ancestry-card .node-title{fill:#17211d!important;font-size:15px!important;}
.family-node.ancestry-card .node-sub{fill:#496057!important;font-size:11px!important;}
.family-node.ancestry-card .node-score{fill:#244c3e!important;font-size:11px!important;}
.family-node.ancestry-card.low .node-score{fill:#9d392e!important;}
.family-node.ancestry-card.mid .node-score{fill:#8c651a!important;}
.family-node.ancestry-card.hot .node-score{fill:#17683f!important;}
.family-node.ancestry-card .node-role{
  fill:#336b57!important;
  font-size:9px!important;
  font-weight:900!important;
  letter-spacing:.04em;
}
.family-node.ancestry-card.rejected .node-title,
.family-node.ancestry-card.rejected .node-sub,
.family-node.ancestry-card.rejected .node-score,
.family-node.ancestry-card.rejected .node-role{fill:#ffe9df!important;}
.family-node.ancestry-card .lineage-port{
  fill:#10231f!important;
  stroke:#e7ce85!important;
  stroke-width:2.2!important;
}
.family-node.ancestry-card .children-badge{
  fill:#143f35!important;
  stroke:rgba(226,196,126,.62)!important;
  stroke-width:1.4!important;
}
.family-node.ancestry-card .node-kids{
  fill:#fff1c2!important;
  font-weight:950!important;
}


/* CromeSky all-stats top-bar icon link */
.navlinks a.stats-nav-link{
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid rgba(34,197,94,.42)!important;
  background:linear-gradient(180deg,rgba(34,197,94,.20),rgba(245,180,83,.10))!important;
  color:#d8ffe8!important;
  box-shadow:0 0 18px rgba(34,197,94,.14), inset 0 0 18px rgba(255,255,255,.04);
  font-weight:950!important;
}
.navlinks a.stats-nav-link.active{
  border-color:rgba(245,180,83,.72)!important;
  color:#fff1c2!important;
}

/* Core Twin Web Developer dashboard */
.core-dev-console {
  border-color: rgba(45, 212, 191, .28) !important;
  background: linear-gradient(135deg, rgba(11, 18, 28, .88), rgba(55, 31, 16, .82)) !important;
  box-shadow: 0 18px 46px rgba(0, 0, 0, .28), inset 0 0 0 1px rgba(255, 255, 255, .05);
}
.core-dev-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 14px 0 18px;
}
.core-dev-stats article {
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 16px;
  padding: 13px;
  background: rgba(0, 0, 0, .18);
  min-width: 0;
}
.core-dev-stats small {
  display: block;
  color: #f5b453;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.core-dev-stats strong {
  display: block;
  color: #fff;
  font-size: .98rem;
  line-height: 1.22;
  overflow-wrap: anywhere;
}
.core-dev-playbook {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 10px 0 18px;
}
.core-dev-playbook div {
  border: 1px solid rgba(245, 180, 83, .22);
  border-radius: 16px;
  padding: 12px;
  background: rgba(245, 180, 83, .07);
  min-width: 0;
}
.core-dev-playbook strong {
  display: block;
  color: #fff;
  margin-bottom: 5px;
}
.core-dev-playbook span {
  display: block;
  color: rgba(255, 255, 255, .72);
  font-size: .9rem;
  line-height: 1.35;
}
@media (max-width: 980px) {
  .core-dev-stats,
  .core-dev-playbook {
    grid-template-columns: 1fr;
  }
}



/* Quick AI photo upload button corner-alignment hotfix
   Keeps the Pro image upload icon inside the Job Description textarea,
   aligned in the bottom-left corner with the same spacing as the mic button. */
#quote .quote-showcase-panel .textarea-mic-wrap,
#quickQuoteForm .textarea-mic-wrap{
  position:relative!important;
  overflow:visible!important;
}
#quote .quote-showcase-panel .textarea-mic-wrap textarea,
#quickQuoteForm .textarea-mic-wrap textarea{
  padding-left:82px!important;
  padding-right:82px!important;
  padding-bottom:88px!important;
}
#quote .quote-showcase-panel .textarea-mic-wrap .fake-upload-pro-btn,
#quote .textarea-mic-wrap .fake-upload-pro-btn,
#quickQuoteForm .textarea-mic-wrap .fake-upload-pro-btn{
  position:absolute!important;
  left:16px!important;
  bottom:16px!important;
  right:auto!important;
  top:auto!important;
  width:50px!important;
  height:50px!important;
  margin:0!important;
  z-index:35!important;
  transform:none!important;
}
#quote .quote-showcase-panel .textarea-mic-wrap .fake-upload-pro-btn:hover,
#quote .textarea-mic-wrap .fake-upload-pro-btn:hover,
#quickQuoteForm .textarea-mic-wrap .fake-upload-pro-btn:hover{
  transform:translateY(-1px)!important;
}
@media(max-width:620px){
  #quote .quote-showcase-panel .textarea-mic-wrap textarea,
  #quickQuoteForm .textarea-mic-wrap textarea{
    padding-left:78px!important;
    padding-right:78px!important;
    padding-bottom:86px!important;
  }
  #quote .quote-showcase-panel .textarea-mic-wrap .fake-upload-pro-btn,
  #quote .textarea-mic-wrap .fake-upload-pro-btn,
  #quickQuoteForm .textarea-mic-wrap .fake-upload-pro-btn{
    left:14px!important;
    bottom:16px!important;
  }
}


/* Core Twin Landing Page Evolution monitor */
.core-dev-live-panel{
  border:1px solid rgba(45,212,191,.26);
  border-radius:20px;
  padding:14px;
  margin:14px 0 18px;
  background:linear-gradient(135deg,rgba(45,212,191,.10),rgba(245,180,83,.06));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
}
.core-dev-live-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:12px;
}
.core-dev-live-head h4{margin:0 0 4px;color:#fff;font-size:1rem}.core-dev-live-head form{flex:0 0 auto}.core-dev-stats.compact{grid-template-columns:repeat(3,minmax(0,1fr));margin:10px 0}.core-dev-status-line{border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:10px 12px;background:rgba(0,0,0,.16);color:rgba(255,255,255,.78);font-size:.92rem}.core-dev-action-list{margin-top:18px;display:grid;gap:10px}.core-dev-action-list h3{margin:0;color:#fff}.core-dev-action-card{border:1px solid rgba(255,255,255,.12);border-radius:17px;padding:12px;background:rgba(0,0,0,.18)}.core-dev-action-card.auto_applied,.core-dev-action-card.admin_applied{border-color:rgba(34,197,94,.32);background:rgba(34,197,94,.08)}.core-dev-action-card.pending_review{border-color:rgba(245,180,83,.34);background:rgba(245,180,83,.07)}.core-dev-action-card.rejected{opacity:.72}.core-dev-action-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.core-dev-action-top strong{color:#fff;overflow-wrap:anywhere}.core-dev-action-top span{display:inline-flex;border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:4px 8px;color:#d8ffe8;font-size:.76rem;font-weight:900;white-space:nowrap}.core-dev-action-card p{margin:0;color:rgba(255,255,255,.70);font-size:.9rem;line-height:1.35}.compact-actions{margin-top:10px;gap:8px}.compact-actions form{display:inline-flex}.compact-actions .btn{padding:8px 12px;font-size:.82rem}@media(max-width:980px){.core-dev-live-head{flex-direction:column}.core-dev-live-head form,.core-dev-live-head .btn{width:100%}.core-dev-stats.compact{grid-template-columns:1fr}.core-dev-action-top{align-items:flex-start;flex-direction:column}}

/* Core Teacher University nav shortcut */
.university-nav-link,.navlinks a[href="admin_core_university.php"]{border-color:rgba(56,189,248,.34);background:rgba(56,189,248,.08)}


/* Salt + Pepper Fragmented Memory Engine */
.salt-pepper-memory-page .spm-shell{position:relative;}
.spm-hero{display:flex;justify-content:space-between;gap:20px;align-items:stretch;background:linear-gradient(135deg,rgba(24,14,28,.95),rgba(68,31,39,.86)),radial-gradient(circle at top right,rgba(255,184,94,.18),transparent 45%);border:1px solid rgba(255,210,144,.22);}
.spm-hero h1{margin:8px 0 8px;font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.05em;}
.spm-core-status{min-width:220px;border:1px solid rgba(255,255,255,.14);border-radius:24px;padding:18px;background:rgba(255,255,255,.06);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;box-shadow:0 22px 60px rgba(0,0,0,.22);}
.spm-core-status strong{font-size:3.2rem;line-height:.9;color:#ffe6bb;text-shadow:0 0 20px rgba(255,184,94,.35);}
.spm-last-status{margin-top:12px;border:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.18);border-radius:18px;padding:12px 14px;color:#ffe8c6;}
.spm-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;margin:18px 0;align-items:start;}
.spm-settings-form{grid-template-columns:repeat(2,minmax(0,1fr));}
.spm-settings-form .ai-switch-line{grid-column:span 2;}
.spm-action-stack{display:grid;gap:12px;}
.spm-action-stack form{border:1px solid rgba(255,255,255,.11);background:rgba(0,0,0,.16);border-radius:18px;padding:14px;}
.spm-action-stack p{margin:8px 0 0;}
.spm-export-list{margin-top:16px;display:grid;gap:8px;}
.spm-export-list div{border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:10px 12px;background:rgba(255,255,255,.05);display:flex;flex-direction:column;}
.spm-kpis article strong{font-variant-numeric:tabular-nums;}
.spm-graph-card{overflow:hidden;}
.spm-graph-wrap{border:1px solid rgba(255,255,255,.12);border-radius:24px;background:radial-gradient(circle at 20% 20%,rgba(255,189,99,.12),transparent 28%),radial-gradient(circle at 80% 70%,rgba(142,98,255,.16),transparent 30%),rgba(0,0,0,.22);overflow:hidden;box-shadow:inset 0 0 50px rgba(0,0,0,.28);}
.spm-vector-svg{display:block;width:100%;height:auto;min-height:420px;}
.spm-edge{stroke:rgba(255,218,158,.28);stroke-linecap:round;}
.spm-node circle{stroke-width:2.2;fill:rgba(255,255,255,.12);}
.spm-node text{font-size:12px;font-weight:900;fill:#fff;pointer-events:none;}
.spm-node-salt circle{stroke:#ffe2a8;fill:rgba(255,197,92,.34);}
.spm-node-pepper circle{stroke:#ff9b86;fill:rgba(255,89,73,.32);}
.spm-node-blend circle{stroke:#b9a7ff;fill:rgba(129,99,255,.28);}
.spm-legend{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 4px;}
.spm-legend span,.spm-type-pill{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.82rem;font-weight:800;border:1px solid rgba(255,255,255,.14);}
.spm-legend .salt,.spm-type-pill.salt{background:rgba(255,197,92,.16);color:#ffe2a8;}
.spm-legend .pepper,.spm-type-pill.pepper{background:rgba(255,89,73,.14);color:#ffb0a0;}
.spm-legend .blend,.spm-type-pill.blend{background:rgba(129,99,255,.14);color:#d0c6ff;}
.spm-image-tile-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:16px;}
.spm-image-tile{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:18px;padding:12px;display:grid;gap:8px;align-content:start;}
.spm-image-tile strong{font-size:.92rem;line-height:1.15;color:#fff;}
.spm-image-tile small{color:rgba(255,238,211,.68);}
.spm-tile-svg{width:72px;height:72px;filter:drop-shadow(0 10px 20px rgba(0,0,0,.28));}
.spm-tile-svg rect{fill:rgba(255,255,255,.08);stroke:rgba(255,255,255,.25);stroke-width:2;}
.spm-tile-svg path{fill:none;stroke:rgba(255,255,255,.72);stroke-width:4;stroke-linecap:round;}
.spm-tile-svg circle{fill:rgba(255,255,255,.82);}
.spm-tile-svg text{fill:#171019;font-weight:900;font-size:26px;}
.spm-tile-svg.salt rect{fill:rgba(255,197,92,.24);}
.spm-tile-svg.pepper rect{fill:rgba(255,89,73,.22);}
.spm-tile-svg.blend rect{fill:rgba(129,99,255,.22);}
.spm-table td small{display:block;color:rgba(255,238,211,.63);margin-top:4px;max-width:520px;}
.spm-empty{border:1px dashed rgba(255,255,255,.18);border-radius:18px;padding:24px;text-align:center;color:rgba(255,238,211,.76);background:rgba(255,255,255,.04);}
.dashboard-salt-pepper-summary{background:linear-gradient(135deg,rgba(28,18,30,.86),rgba(62,34,38,.78));border:1px solid rgba(255,210,144,.18);}
@media (max-width:900px){.spm-hero,.spm-grid{grid-template-columns:1fr;display:grid}.spm-core-status{min-width:0}.spm-settings-form{grid-template-columns:1fr}.spm-settings-form .ai-switch-line{grid-column:span 1}}

/* =========================================================
   CromeSky Admin/Stats cards: Bifurcation-console stat style
   Matches Meta-Evolution stable/free reality cards.
   ========================================================= */
:root{
  --csky-console-bg:#101815;
  --csky-console-bg-2:#15100d;
  --csky-console-line:rgba(255,234,205,.18);
  --csky-console-text:#fff6ea;
  --csky-console-muted:rgba(255,234,205,.70);
  --csky-console-aqua:#39e3d6;
  --csky-console-green:#32d583;
  --csky-console-gold:#ffbd4a;
}
.admin-dashboard-kpis .kpi,
.client-message-kpis .kpi,
.admin-unified-metric-grid article,
.cromesky-engine-all-stats-card article,
.cromesky-engine-family-card,
.cromesky-intelligence-kpi-grid article,
.ai-twin-kpi-grid article,
.ai-twin-status-card,
.aiml-status-card,
.ai-twin-comms-status-card,
.ai-twin-role-stats-card,
.role-stats-hero,
.openai-platform-metric{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(255,234,205,.18)!important;
  border-radius:28px!important;
  background:
    repeating-linear-gradient(0deg,rgba(255,255,255,.028) 0,rgba(255,255,255,.028) 1px,transparent 1px,transparent 5px),
    radial-gradient(circle at 0 0,rgba(57,227,214,.13),transparent 42%),
    linear-gradient(145deg,rgba(18,34,30,.92),rgba(15,12,10,.94) 58%,rgba(29,20,16,.92))!important;
  box-shadow:0 22px 60px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.08)!important;
  backdrop-filter:blur(16px)!important;
}
.admin-dashboard-kpis .kpi:nth-child(even),
.client-message-kpis .kpi:nth-child(even),
.admin-unified-metric-grid article:nth-child(even),
.cromesky-engine-all-stats-card article:nth-child(even),
.cromesky-intelligence-kpi-grid article:nth-child(even),
.ai-twin-kpi-grid article:nth-child(even){
  background:
    repeating-linear-gradient(0deg,rgba(255,255,255,.026) 0,rgba(255,255,255,.026) 1px,transparent 1px,transparent 5px),
    radial-gradient(circle at 0 0,rgba(255,189,74,.13),transparent 43%),
    linear-gradient(145deg,rgba(34,27,22,.94),rgba(18,13,10,.95) 58%,rgba(38,24,20,.92))!important;
}
.admin-dashboard-kpis .kpi::before,
.client-message-kpis .kpi::before,
.admin-unified-metric-grid article::before,
.cromesky-engine-all-stats-card article::before,
.cromesky-engine-family-card::before,
.cromesky-intelligence-kpi-grid article::before,
.ai-twin-kpi-grid article::before,
.ai-twin-status-card::before,
.aiml-status-card::before,
.ai-twin-comms-status-card::before,
.openai-platform-metric::before{
  content:"LIVE";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  padding:4px 11px;
  margin:0 0 12px;
  border-radius:999px;
  border:1px solid rgba(57,227,214,.34);
  background:rgba(57,227,214,.13);
  color:#bffefa;
  font-size:.66rem;
  font-weight:950;
  line-height:1;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.admin-dashboard-kpis .kpi:nth-child(even)::before,
.client-message-kpis .kpi:nth-child(even)::before,
.admin-unified-metric-grid article:nth-child(even)::before,
.cromesky-engine-all-stats-card article:nth-child(even)::before,
.cromesky-intelligence-kpi-grid article:nth-child(even)::before,
.ai-twin-kpi-grid article:nth-child(even)::before{
  content:"FREE";
  border-color:rgba(255,189,74,.42);
  background:rgba(255,189,74,.13);
  color:#ffe2a3;
}
.admin-dashboard-kpis .kpi small,
.client-message-kpis .kpi small,
.admin-unified-metric-grid article span,
.cromesky-engine-all-stats-card article span,
.cromesky-engine-family-card small,
.cromesky-intelligence-kpi-grid article span,
.ai-twin-kpi-grid article span,
.stats-card small,
.openai-platform-metric span{
  display:block!important;
  color:var(--csky-console-text)!important;
  text-transform:none!important;
  letter-spacing:-.015em!important;
  font-size:clamp(.84rem,.95vw,.98rem)!important;
  font-weight:950!important;
  line-height:1.18!important;
  margin:0 0 10px!important;
}
.admin-dashboard-kpis .kpi strong,
.client-message-kpis .kpi strong,
.admin-unified-metric-grid article strong,
.cromesky-engine-all-stats-card article strong,
.cromesky-engine-family-card > strong,
.cromesky-intelligence-kpi-grid article strong,
.ai-twin-kpi-grid article strong,
.ai-twin-status-card strong,
.aiml-status-card strong,
.ai-twin-comms-status-card strong,
.stats-card strong,
.openai-platform-metric strong{
  color:var(--csky-console-text)!important;
  font-size:clamp(1.25rem,2vw,2.05rem)!important;
  line-height:1!important;
  letter-spacing:-.055em!important;
  margin:6px 0 8px!important;
  word-break:break-word!important;
}
.admin-dashboard-kpis .kpi span,
.client-message-kpis .kpi span,
.admin-unified-metric-grid article em,
.cromesky-engine-all-stats-card article em,
.cromesky-engine-family-card p,
.cromesky-intelligence-kpi-grid article em,
.ai-twin-kpi-grid article em,
.stats-card em,
.openai-platform-metric em{
  color:var(--csky-console-muted)!important;
  font-size:.86rem!important;
  font-weight:800!important;
  line-height:1.28!important;
  font-style:normal!important;
}
.admin-dashboard-kpis .kpi::after,
.client-message-kpis .kpi::after,
.admin-unified-metric-grid article::after,
.cromesky-engine-all-stats-card article::after,
.cromesky-engine-family-card::after,
.cromesky-intelligence-kpi-grid article::after,
.ai-twin-kpi-grid article::after,
.ai-twin-status-card::after,
.aiml-status-card::after,
.ai-twin-comms-status-card::after,
.openai-platform-metric::after{
  content:""!important;
  display:block!important;
  position:static!important;
  width:72%!important;
  max-width:190px!important;
  height:7px!important;
  margin-top:14px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,var(--csky-console-aqua) 0 70%,rgba(255,255,255,.16) 70% 100%)!important;
  box-shadow:0 0 16px rgba(57,227,214,.24)!important;
}
.admin-dashboard-kpis .kpi:nth-child(even)::after,
.client-message-kpis .kpi:nth-child(even)::after,
.admin-unified-metric-grid article:nth-child(even)::after,
.cromesky-engine-all-stats-card article:nth-child(even)::after,
.cromesky-intelligence-kpi-grid article:nth-child(even)::after,
.ai-twin-kpi-grid article:nth-child(even)::after{
  width:62%!important;
  background:linear-gradient(90deg,var(--csky-console-green) 0 62%,rgba(255,255,255,.16) 62% 100%)!important;
  box-shadow:0 0 16px rgba(50,213,131,.20)!important;
}
.admin-unified-overview-card,
.admin-ecosystem-dashboard-card,
.cromesky-learning-automation-dashboard-card,
.twin-autonomy-dashboard-card,
.cromesky-intelligence-dashboard-card,
.client-message-admin-summary{
  background:
    repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0,rgba(255,255,255,.025) 1px,transparent 1px,transparent 5px),
    linear-gradient(180deg,rgba(16,24,21,.94),rgba(12,12,10,.95))!important;
  border-color:rgba(255,234,205,.16)!important;
}
@media(max-width:760px){
  .admin-dashboard-kpis .kpi,
  .client-message-kpis .kpi,
  .admin-unified-metric-grid article,
  .cromesky-engine-all-stats-card article,
  .cromesky-intelligence-kpi-grid article{border-radius:22px!important;}
}

/* ========================================================================
   CromeSky Universal Desert Glass Console Theme
   Applied across the CromeSky system to match the graduate-addon installer:
   warm Coober Pedy desert background, frosted glass cards, gold labels,
   soft table glass, and console-style stats.  This is deliberately appended
   late and uses scoped !important rules to beat old inline page themes while
   preserving existing buttons, links, forms, and functional structure.
   ======================================================================== */
:root{
  --csky-glass-bg: rgba(68, 36, 18, .30);
  --csky-glass-bg-strong: rgba(68, 36, 18, .46);
  --csky-glass-bg-dark: rgba(20, 10, 5, .58);
  --csky-glass-border: rgba(255, 235, 205, .22);
  --csky-glass-border-soft: rgba(255, 235, 205, .14);
  --csky-glass-highlight: rgba(255, 255, 255, .11);
  --csky-gold: #ffb13d;
  --csky-gold-soft: #ffd99a;
  --csky-text: #fff7ed;
  --csky-muted: rgba(255, 247, 237, .74);
  --csky-green: #47e08e;
  --csky-cyan: #37d9d2;
  --csky-bad: #ff8f78;
  --csky-shadow: 0 28px 90px rgba(0,0,0,.38);
  --csky-radius: 24px;
}

html{min-height:100% !important; scroll-behavior:smooth;}
body,
body.admin-university-portal-page,
body.core-university-page,
body.deep-addon-install-page,
body.stats-panel-page,
body.webdev-chat-page{
  min-height:100% !important;
  color:var(--csky-text) !important;
  background:
    linear-gradient(90deg, rgba(3,1,0,.72), rgba(97,44,15,.34) 45%, rgba(3,1,0,.78)),
    radial-gradient(circle at 18% 38%, rgba(255,177,61,.20), transparent 24rem),
    url('../assets/desert.jpg') center/cover fixed no-repeat !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.32);
}
body::before,
body.admin-university-portal-page::before,
body.core-university-page::before,
body.deep-addon-install-page::before,
body.stats-panel-page::before,
body.webdev-chat-page::before{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  pointer-events:none !important;
  z-index:-2 !important;
  background:
    linear-gradient(180deg, rgba(255,220,164,.10), rgba(35,14,4,.20) 34%, rgba(0,0,0,.54) 100%),
    radial-gradient(circle at 50% 12%, rgba(255,206,125,.20), transparent 26rem) !important;
}
body::after,
body.admin-university-portal-page::after,
body.core-university-page::after,
body.deep-addon-install-page::after,
body.stats-panel-page::after,
body.webdev-chat-page::after{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  pointer-events:none !important;
  z-index:-1 !important;
  opacity:.44 !important;
  background:
    repeating-linear-gradient(0deg, rgba(255,255,255,.025) 0 1px, transparent 1px 5px),
    linear-gradient(90deg, rgba(255,198,108,.035), transparent 28%, rgba(0,0,0,.22)) !important;
  mix-blend-mode:screen !important;
}

/* Main shell and navigation */
.wrap,.ou-wrap,.main,.shell main,.content,.container{
  position:relative !important;
  z-index:1 !important;
}
.topbar,
.sidebar,
.ou-topbar,
.admin-university-portal-page .topbar,
.core-university-page .topbar{
  background:linear-gradient(180deg, rgba(42,20,10,.82), rgba(26,12,6,.76)) !important;
  border-bottom:1px solid rgba(255,222,175,.16) !important;
  box-shadow:0 14px 48px rgba(0,0,0,.34) !important;
  backdrop-filter:blur(18px) saturate(1.18) !important;
}
.brand,
.brand strong,
.topbar a,
.navlinks a{
  color:var(--csky-text) !important;
}
.brand span span,
.brand .sub,
.navlinks a span{
  color:var(--csky-muted) !important;
}
.navlinks a,
.nav-btn,
.ou-tabs a,
.uni-tabs a,
.stats-link{
  border:1px solid rgba(255,235,205,.18) !important;
  background:rgba(255,255,255,.055) !important;
  color:var(--csky-text) !important;
  border-radius:999px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.navlinks a:hover,.nav-btn:hover,.nav-btn.active,.ou-tabs a:hover,.uni-tabs a:hover,.stats-link:hover{
  background:rgba(255,177,61,.15) !important;
  border-color:rgba(255,177,61,.42) !important;
}

/* Big frosted glass page panels */
.panel,.card,.auth-card,
.install-hero,.install-card,.install-table,
.ou-hero,.ou-panel,.ou-card,.ou-stat,.ou-row,.ou-lesson-panel,.ou-lesson-box,.ou-certificate,
.uni-card,.uni-row,.switch-card,.entity-chip,
.stats-hero,.stats-group,.stats-summary article,.stats-card,
.admin-unified-overview-card,.admin-unified-section,.admin-unified-metric-grid article,
.cromesky-engine-all-stats-card,.admin-engine-compact-stats,
.csky-stat-card,.metric,.job-card,.reward-card,.tx,.item,.sidebar-card,
.dev-rule-card,.dev-chat-panel,.dev-message,
.table-wrap,.route-controls,.job-itemization,.notice,.error,.success,.msg-good,.msg-bad,.ou-msg,.ou-error,
.memory-card,.engine-card,.health-card,.diagnostic-card,.evolution-card,.civilization-card{
  color:var(--csky-text) !important;
  background:linear-gradient(180deg, var(--csky-glass-bg-strong), rgba(37,16,6,.34)) !important;
  border:1px solid var(--csky-glass-border) !important;
  border-radius:var(--csky-radius) !important;
  box-shadow:var(--csky-shadow), inset 0 1px 0 rgba(255,255,255,.10) !important;
  backdrop-filter:blur(16px) saturate(1.15) !important;
}
.install-hero,.ou-hero,.stats-hero,.university-hero{
  padding:clamp(22px,3vw,36px) !important;
  overflow:hidden !important;
}
.install-hero::before,.ou-hero::before,.stats-hero::before,.university-hero::before,
.panel::before,.stats-group::before{
  pointer-events:none !important;
}
.panel h1,.panel h2,.panel h3,
.install-hero h1,.ou-hero h1,.stats-hero h1,
.ou-section-title h2,.uni-row h3,.ou-card h3,.stats-title h2,
h1,h2,h3{
  color:var(--csky-text) !important;
  text-shadow:0 3px 16px rgba(0,0,0,.34) !important;
}
p,.muted,.ou-muted,.stats-title p,.install-hero p,.ou-hero p,.card p,.panel p,
small,em,span{
  color:var(--csky-muted) !important;
}

/* Console-style stat cards like the screenshot */
.kpi,.ou-stat,.uni-card,.stats-summary article,.stats-card,.metric,
.admin-unified-metric-grid article,.install-card,.csky-stat-card,
.client-message-kpis article,.dev-stat-grid article{
  position:relative !important;
  overflow:hidden !important;
  min-height:112px !important;
  padding:18px 20px !important;
  border-radius:20px !important;
  background:linear-gradient(180deg, rgba(125,66,27,.36), rgba(41,18,7,.32)) !important;
  border:1px solid rgba(255,235,205,.21) !important;
  box-shadow:0 22px 60px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.kpi::before,.ou-stat::before,.uni-card::before,.stats-summary article::before,.stats-card::before,.metric::before,
.admin-unified-metric-grid article::before,.install-card::before,.csky-stat-card::before,
.client-message-kpis article::before,.dev-stat-grid article::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important; top:0 !important; bottom:0 !important;
  width:4px !important;
  background:linear-gradient(180deg, var(--csky-gold), var(--csky-green), var(--csky-cyan)) !important;
  border-radius:999px !important;
}
.kpi small,.ou-stat small,.uni-card small,.stats-summary span,.stats-card small,.metric span,.metric small,
.install-card small,.admin-unified-metric-grid article span,.dev-stat-grid small{
  display:block !important;
  color:var(--csky-gold) !important;
  text-transform:uppercase !important;
  letter-spacing:.105em !important;
  font-weight:950 !important;
  font-size:.72rem !important;
}
.kpi strong,.ou-stat strong,.uni-card strong,.stats-summary strong,.stats-card strong,.metric strong,
.install-card strong,.admin-unified-metric-grid article strong,.dev-stat-grid strong{
  display:block !important;
  color:var(--csky-text) !important;
  font-size:clamp(1.75rem,2.7vw,2.35rem) !important;
  line-height:.96 !important;
  letter-spacing:-.045em !important;
  margin-top:7px !important;
}
.kpi span,.ou-stat span,.uni-card span,.stats-card em,.metric small,.install-card span,
.admin-unified-metric-grid article em,.dev-stat-grid article span{
  color:var(--csky-muted) !important;
  font-size:.88rem !important;
}

/* Tables */
table{border-collapse:collapse !important; width:100% !important;}
.table-wrap,.install-table,.stats-table{
  overflow:auto !important;
  border-radius:22px !important;
  background:rgba(44,19,7,.34) !important;
}
th{
  color:var(--csky-gold) !important;
  text-transform:uppercase !important;
  letter-spacing:.11em !important;
  font-size:.75rem !important;
  font-weight:950 !important;
  background:rgba(255,177,61,.08) !important;
}
td{
  color:var(--csky-text) !important;
}
th,td{
  border-bottom:1px solid rgba(255,235,205,.12) !important;
  padding:13px 14px !important;
}
tr:hover td{
  background:rgba(255,177,61,.055) !important;
}

/* Buttons and chips */
.btn,button,.ou-btn,.ou-btn-dark,.small-btn,.chip,.segmented button,.install-actions button,
.ou-course-actions button,.ou-row-actions button,input[type="submit"]{
  border-radius:999px !important;
  min-height:42px !important;
  font-weight:950 !important;
  border:1px solid rgba(255,235,205,.16) !important;
  background:linear-gradient(135deg,#ffe0a2,#ffb13d 58%,#f18e27) !important;
  color:#211006 !important;
  box-shadow:0 16px 44px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.34) !important;
}
.btn.secondary,button.secondary,.btn.ghost,.ou-btn-dark,.small-btn,.segmented button,.nav-btn,
.ou-course-actions .open,.ou-row-actions .open{
  background:rgba(255,255,255,.075) !important;
  color:var(--csky-text) !important;
  border-color:rgba(255,235,205,.18) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 14px 40px rgba(0,0,0,.20) !important;
}
.btn:hover,button:hover,.ou-btn:hover,.ou-btn-dark:hover,.small-btn:hover{
  filter:brightness(1.05) !important;
  transform:translateY(-1px) !important;
}
.pill,.badge,.ou-chip,.faculty-ribbon,.ou-eyebrow,.eyebrow{
  display:inline-flex !important;
  align-items:center !important;
  border-radius:999px !important;
  border:1px solid rgba(255,235,205,.20) !important;
  background:rgba(255,255,255,.08) !important;
  color:var(--csky-text) !important;
  font-weight:950 !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08) !important;
}
.pill.good,.badge.good,.ou-chip.green,.msg-good,.ou-msg{
  color:#d6ffe4 !important;
  border-color:rgba(71,224,142,.42) !important;
  background:rgba(44,173,98,.15) !important;
}
.pill.warn,.badge.warn{
  color:#ffe6ab !important;
  border-color:rgba(255,177,61,.45) !important;
  background:rgba(255,177,61,.15) !important;
}
.pill.bad,.badge.danger,.msg-bad,.ou-error,.error{
  color:#ffd2c8 !important;
  border-color:rgba(255,143,120,.45) !important;
  background:rgba(180,54,34,.18) !important;
}

/* Forms */
input,textarea,select,
.uni-form input,.uni-form select,.uni-form textarea,.ou-form input,.ou-form textarea{
  color:#2b1608 !important;
  background:rgba(255,249,240,.94) !important;
  border:1px solid rgba(255,235,205,.44) !important;
  border-radius:18px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.42),0 10px 28px rgba(0,0,0,.10) !important;
}
input:focus,textarea:focus,select:focus{
  outline:none !important;
  border-color:rgba(255,177,61,.86) !important;
  box-shadow:0 0 0 4px rgba(255,177,61,.20), inset 0 1px 0 rgba(255,255,255,.42) !important;
}
label,.uni-form label,.ou-form label{
  color:var(--csky-gold-soft) !important;
  font-weight:900 !important;
}
textarea::placeholder,input::placeholder{color:rgba(43,22,8,.48) !important;}

/* Progress bars and meters */
progress,.ou-progress,.mastery-bar,.route-swatch,
[class*="progress"], [class*="meter"]{
  border-radius:999px !important;
}
.ou-progress,.mastery-bar,.stats-meter,.meter-track{
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,235,205,.14) !important;
  overflow:hidden !important;
}
.ou-progress i,.mastery-bar i,.meter-fill,.stats-meter i{
  background:linear-gradient(90deg,var(--csky-cyan),var(--csky-green),var(--csky-gold)) !important;
  box-shadow:0 0 16px rgba(55,217,210,.28) !important;
}

/* Lesson workspace: preserve readability but match the glass system */
.ou-window-bar{
  background:rgba(32,15,8,.88) !important;
  border:1px solid rgba(255,235,205,.13) !important;
  border-radius:18px !important;
}
.ou-lesson-content,.uni-lesson-content,.ou-lesson-box,.ou-evidence,.ou-course-next,.ou-deep-section{
  color:var(--csky-text) !important;
}
.ou-lesson-box,.ou-evidence,.ou-course-next,.ou-deep-section,.ou-empty-lesson{
  background:rgba(255,255,255,.055) !important;
  border-color:rgba(255,235,205,.18) !important;
}
.ou-lesson-box h4,.ou-deep-section h4,.ou-empty-lesson h2{
  color:var(--csky-text) !important;
}
.ou-key-terms span{
  color:#ffe1ad !important;
  background:rgba(255,177,61,.12) !important;
  border-color:rgba(255,177,61,.26) !important;
}
.ou-resource-list a,a{
  color:#ffd58c !important;
}

/* Grid consistency */
.install-grid,.ou-stats,.uni-grid,.stats-summary,.stats-grid,.kpis,.client-message-kpis,
.admin-unified-metric-grid,.metrics{
  gap:14px !important;
}
@media(max-width:1100px){
  .install-grid,.ou-stats,.uni-grid,.stats-summary,.stats-grid,.kpis,.client-message-kpis,
  .admin-unified-metric-grid,.metrics{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}
@media(max-width:720px){
  .install-grid,.ou-stats,.uni-grid,.stats-summary,.stats-grid,.kpis,.client-message-kpis,
  .admin-unified-metric-grid,.metrics{grid-template-columns:1fr !important;}
  .wrap,.ou-wrap,.main{padding-left:14px !important;padding-right:14px !important;}
}

/* Core Web Developer chat readability + action-console fix */
body.webdev-chat-page .dev-input textarea,
body.webdev-chat-page textarea#message {
  background: rgba(255,249,240,.97) !important;
  color: #2b1608 !important;
  caret-color: #2b1608 !important;
  border-color: rgba(255,206,115,.55) !important;
  font-weight: 800 !important;
}
body.webdev-chat-page .dev-input textarea::placeholder,
body.webdev-chat-page textarea#message::placeholder {
  color: rgba(43,22,8,.55) !important;
}
body.webdev-chat-page .dev-input textarea:focus,
body.webdev-chat-page textarea#message:focus {
  background: #fffaf2 !important;
  color: #2b1608 !important;
}

/* CromeSky global desert glass overlay is loaded separately on every HTML page. */
@import url('cromesky_system_glass.css?v=align-fix-1');

/* Quote label alignment patch: center the Job description text above the textarea */
#quote #quickQuoteForm .voice-label-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  margin:0 0 10px!important;
  padding:0!important;
  text-align:center!important;
}
#quote #quickQuoteForm .voice-label-row label,
#quote .quote-showcase-panel .voice-label-row label{
  display:block!important;
  width:100%!important;
  margin:0!important;
  text-align:center!important;
  color:var(--accent,#ffbf5e)!important;
  font-weight:950!important;
  letter-spacing:.01em!important;
}

/* Quick AI quote top upload button: replaces the old Job description text label with a clear picture-upload action. */
#quote #quickQuoteForm .upload-picture-label-row,
#quote .quote-showcase-panel #quickQuoteForm .upload-picture-label-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  margin:0 0 12px!important;
  padding:0!important;
  text-align:center!important;
}
#quote #quickQuoteForm .quote-label-upload-btn,
#quote .quote-showcase-panel #quickQuoteForm .quote-label-upload-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:36px!important;
  padding:8px 15px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  text-align:center!important;
  color:#fff6df!important;
  font-weight:950!important;
  font-size:.9rem!important;
  line-height:1!important;
  letter-spacing:.005em!important;
  background:linear-gradient(180deg,rgba(255,180,68,.30),rgba(108,49,20,.46))!important;
  border:1px solid rgba(255,199,99,.52)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.18)!important;
  cursor:pointer!important;
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease!important;
}
#quote #quickQuoteForm .quote-label-upload-btn:hover,
#quote #quickQuoteForm .quote-label-upload-btn:focus-visible{
  transform:translateY(-1px)!important;
  border-color:rgba(255,218,142,.86)!important;
  background:linear-gradient(180deg,rgba(255,196,85,.42),rgba(138,65,26,.56))!important;
  box-shadow:0 14px 34px rgba(0,0,0,.32),0 0 0 5px rgba(255,181,72,.10),inset 0 1px 0 rgba(255,255,255,.24)!important;
  outline:none!important;
}
#quote #quickQuoteForm .quote-label-upload-icon{
  display:grid!important;
  place-items:center!important;
  width:22px!important;
  height:22px!important;
  border-radius:999px!important;
  background:rgba(255,246,224,.22)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22)!important;
  line-height:1!important;
}
#quote #quickQuoteForm .quote-label-upload-text{
  color:inherit!important;
  line-height:1!important;
  text-align:center!important;
}
@media(max-width:620px){
  #quote #quickQuoteForm .quote-label-upload-btn{min-height:38px!important;padding:9px 16px!important;}
}

/* Quick AI quote protected layout restore — keep upload picture bottom-left and mic bottom-right. */
#quote #quickQuoteForm .upload-picture-label-row,
#quote .quote-showcase-panel #quickQuoteForm .upload-picture-label-row,
#quote #quickQuoteForm .quote-label-upload-btn{
  display:none!important;
}
#quote #quickQuoteForm.quick-ai-quote-form,
#quote #quickQuoteForm{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  margin-top:8px!important;
}
#quote #quickQuoteForm .quick-ai-textarea-shell,
#quote #quickQuoteForm .textarea-mic-wrap,
#quote .quote-showcase-panel #quickQuoteForm .textarea-mic-wrap{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:190px!important;
  margin:0 0 12px!important;
  padding:0!important;
  overflow:visible!important;
  flex:0 0 auto!important;
}
#quote #quickQuoteForm .quick-ai-textarea-shell textarea,
#quote #quickQuoteForm .textarea-mic-wrap textarea,
#quote .quote-showcase-panel #quickQuoteForm .textarea-mic-wrap textarea{
  display:block!important;
  width:100%!important;
  min-height:190px!important;
  height:190px!important;
  margin:0!important;
  padding:18px 82px 82px 18px!important;
  border-radius:24px!important;
  background:rgba(255,247,239,.96)!important;
  color:#241308!important;
  resize:vertical!important;
}
#quote #quickQuoteForm .quick-ai-upload-picture-btn,
#quote #quickQuoteForm .fake-upload-pro-btn,
#quote .quote-showcase-panel #quickQuoteForm .fake-upload-pro-btn{
  position:absolute!important;
  left:16px!important;
  right:auto!important;
  bottom:16px!important;
  top:auto!important;
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  padding:0!important;
  margin:0!important;
  z-index:50!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  font-size:1.08rem!important;
  line-height:1!important;
  text-decoration:none!important;
  background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,238,217,.72))!important;
  color:#241308!important;
  border:1px solid rgba(255,234,205,.82)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.28),0 0 0 7px rgba(255,204,118,.08),inset 0 1px 0 rgba(255,255,255,.55)!important;
  transform:none!important;
}
#quote #quickQuoteForm .quick-ai-mic-btn,
#quote #quickQuoteForm #voiceDictateBtn.dictation-mic-inside,
#quote .quote-showcase-panel #quickQuoteForm #voiceDictateBtn.dictation-mic-inside{
  position:absolute!important;
  right:16px!important;
  left:auto!important;
  bottom:16px!important;
  top:auto!important;
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  min-height:52px!important;
  padding:0!important;
  margin:0!important;
  z-index:51!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  font-size:1.08rem!important;
  line-height:1!important;
  background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,238,217,.72))!important;
  color:#241308!important;
  border:1px solid rgba(255,234,205,.82)!important;
  box-shadow:0 16px 36px rgba(0,0,0,.28),0 0 0 7px rgba(255,204,118,.08),inset 0 1px 0 rgba(255,255,255,.55)!important;
  transform:none!important;
}
#quote #quickQuoteForm .quick-ai-upload-picture-btn:hover,
#quote #quickQuoteForm .fake-upload-pro-btn:hover,
#quote #quickQuoteForm #voiceDictateBtn.dictation-mic-inside:hover{
  transform:translateY(-1px)!important;
  border-color:rgba(255,204,118,.95)!important;
  box-shadow:0 18px 42px rgba(0,0,0,.34),0 0 0 8px rgba(255,204,118,.12),inset 0 1px 0 rgba(255,255,255,.60)!important;
}
#quote #quickQuoteForm .quick-ai-generate-btn,
#quote .quote-showcase-panel #quickQuoteForm button.full{
  width:100%!important;
  min-height:52px!important;
  margin:0!important;
  border-radius:18px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}
@media(max-width:620px){
  #quote #quickQuoteForm .quick-ai-textarea-shell,
  #quote #quickQuoteForm .textarea-mic-wrap{min-height:180px!important;}
  #quote #quickQuoteForm .quick-ai-textarea-shell textarea,
  #quote #quickQuoteForm .textarea-mic-wrap textarea{height:180px!important;min-height:180px!important;padding:16px 78px 78px 16px!important;}
  #quote #quickQuoteForm .quick-ai-upload-picture-btn,
  #quote #quickQuoteForm .fake-upload-pro-btn{left:14px!important;bottom:14px!important;width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;}
  #quote #quickQuoteForm .quick-ai-mic-btn,
  #quote #quickQuoteForm #voiceDictateBtn.dictation-mic-inside{right:14px!important;bottom:14px!important;width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important;}
}

