/*
 * Taxly V65 — cosmetic polish only.
 * Loaded after the existing public styles and before the isolated official-form stylesheet.
 * No JavaScript, calculations, document mapping, payment logic, AI flow or manager permissions are changed.
 */

:root{
  --taxly-ink:#172033;
  --taxly-muted:#647084;
  --taxly-green:#2e8b57;
  --taxly-green-dark:#216a43;
  --taxly-gold:#c79a3b;
  --taxly-gold-soft:#f7ecd2;
  --taxly-line:rgba(109,121,145,.20);
  --taxly-card:#ffffff;
  --taxly-page:#fbfaf6;
  --taxly-shadow-sm:0 8px 24px rgba(28,36,55,.06);
  --taxly-shadow-md:0 18px 50px rgba(28,36,55,.09);
  --taxly-shadow-lg:0 28px 78px rgba(28,36,55,.12);
}

/* Global refinement — visual only */
body{
  color:var(--taxly-ink);
  font-feature-settings:"kern" 1,"liga" 1;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
::selection{background:rgba(199,154,59,.24);color:#111827}
:focus-visible{outline:3px solid rgba(46,139,87,.28);outline-offset:3px}

/* Public page */
body:not(.taxly-admin-unlocked){
  background:
    radial-gradient(circle at 78% 0%,rgba(247,236,210,.72),transparent 28%),
    linear-gradient(180deg,#fffdfa 0%,var(--taxly-page) 42%,#ffffff 100%) !important;
}
body:not(.taxly-admin-unlocked) main,
body:not(.taxly-admin-unlocked) section{
  background-color:transparent;
}

body:not(.taxly-admin-unlocked) .site-header{
  background:rgba(255,255,255,.90) !important;
  border-bottom:1px solid rgba(199,154,59,.18) !important;
  box-shadow:0 8px 28px rgba(28,36,55,.045) !important;
  backdrop-filter:blur(18px) saturate(130%);
}
body:not(.taxly-admin-unlocked) .nav{height:76px}
body:not(.taxly-admin-unlocked) .brand-mark{
  border-radius:16px;
  background:linear-gradient(145deg,var(--taxly-green),var(--taxly-green-dark));
  border:1px solid rgba(255,255,255,.48);
  box-shadow:0 12px 30px rgba(46,139,87,.24);
}
body:not(.taxly-admin-unlocked) .brand strong{color:#192235;letter-spacing:-.02em}
body:not(.taxly-admin-unlocked) .brand small{color:#758095}
body:not(.taxly-admin-unlocked) .nav nav{gap:26px;color:#566176}
body:not(.taxly-admin-unlocked) .nav nav a{position:relative;padding:8px 0}
body:not(.taxly-admin-unlocked) .nav nav a::after{
  content:"";position:absolute;inset-inline:18% 18%;bottom:2px;height:2px;border-radius:999px;
  background:var(--taxly-gold);opacity:0;transition:opacity .18s ease;
}
body:not(.taxly-admin-unlocked) .nav nav a:hover::after{opacity:1}
body:not(.taxly-admin-unlocked) .admin-entry-btn{
  background:#fff;border-color:rgba(109,121,145,.20);color:#4e596c;
  box-shadow:none;transition:border-color .18s ease,box-shadow .18s ease,color .18s ease;
}
body:not(.taxly-admin-unlocked) .admin-entry-btn:hover{
  color:var(--taxly-green-dark);border-color:rgba(46,139,87,.30);box-shadow:var(--taxly-shadow-sm);
}

body:not(.taxly-admin-unlocked) .hero.hero-selected{
  padding:clamp(2.7rem,6vw,5rem) 0 1.35rem !important;
}
body:not(.taxly-admin-unlocked) .hero-accessible-copy{
  max-width:900px;
  padding:clamp(1.4rem,3vw,2.3rem);
  border:1px solid rgba(199,154,59,.16);
  border-radius:34px;
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(255,253,248,.84));
  box-shadow:var(--taxly-shadow-md);
}
body:not(.taxly-admin-unlocked) .hero-accessible-copy .eyebrow,
body:not(.taxly-admin-unlocked) .hero-accessible-copy .kicker{
  color:#80611f;background:#fffaf0;border-color:rgba(199,154,59,.30);box-shadow:none;
}
body:not(.taxly-admin-unlocked) .hero-accessible-copy h1{
  color:#151d2d;letter-spacing:-.045em;margin-top:1rem !important;
}
body:not(.taxly-admin-unlocked) .hero-accessible-copy .lead{
  color:#5b6679;line-height:1.8;font-size:clamp(1rem,1.7vw,1.18rem);
}
body:not(.taxly-admin-unlocked) .hero-actions{justify-content:center;margin:1.7rem 0 .4rem}

.btn,.nav-cta,.admin-entry-btn{
  transition:box-shadow .18s ease,border-color .18s ease,background-color .18s ease,color .18s ease,opacity .18s ease;
}
.btn.primary,.nav-cta{
  background:linear-gradient(135deg,var(--taxly-green),var(--taxly-green-dark));
  border:1px solid rgba(33,106,67,.35);
  color:#fff;
  box-shadow:0 14px 30px rgba(46,139,87,.20);
}
.btn.primary:hover,.nav-cta:hover{box-shadow:0 18px 38px rgba(46,139,87,.27)}
.btn.glass{
  background:#fff;color:#3f4a5d;border:1px solid rgba(109,121,145,.22);box-shadow:var(--taxly-shadow-sm);
}
.btn.glass:hover{border-color:rgba(199,154,59,.42);color:#77591e;box-shadow:0 14px 32px rgba(28,36,55,.09)}

/* Client intake */
body:not(.taxly-admin-unlocked) .taxly-client-flow-v56{padding:1.2rem 0 5rem}
body:not(.taxly-admin-unlocked) .taxly-client-shell{
  max-width:940px;
  border:1px solid rgba(199,154,59,.20) !important;
  border-radius:34px !important;
  background:linear-gradient(180deg,#fff 0%,#fffdf8 100%) !important;
  box-shadow:var(--taxly-shadow-lg) !important;
  padding:clamp(1rem,3vw,1.85rem) !important;
}
body:not(.taxly-admin-unlocked) .taxly-client-card{
  max-width:800px;border-radius:26px !important;padding:clamp(1.15rem,3vw,2rem) !important;
}
body:not(.taxly-admin-unlocked) .taxly-client-card-head{
  margin-bottom:1.25rem;padding-bottom:1.05rem;border-bottom:1px solid rgba(109,121,145,.14);
}
body:not(.taxly-admin-unlocked) .taxly-client-card h3{font-size:clamp(1.45rem,2.5vw,2rem);letter-spacing:-.03em}
body:not(.taxly-admin-unlocked) .taxly-client-price{
  min-width:5.35rem;height:5.35rem;border-radius:22px;
  background:linear-gradient(145deg,var(--taxly-green),#3f9d66 56%,var(--taxly-gold));
  box-shadow:0 16px 36px rgba(46,139,87,.20);
}
body:not(.taxly-admin-unlocked) .taxly-plan-picker{
  padding:1.05rem !important;border-radius:22px !important;background:#fafbfc !important;
  border-color:rgba(109,121,145,.18) !important;gap:.75rem;
}
body:not(.taxly-admin-unlocked) .taxly-plan-option{
  border-radius:18px !important;padding:.9rem !important;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
body:not(.taxly-admin-unlocked) .taxly-plan-option:hover{
  border-color:rgba(199,154,59,.42) !important;box-shadow:var(--taxly-shadow-sm) !important;
}
body:not(.taxly-admin-unlocked) .taxly-plan-option.is-selected{
  background:linear-gradient(180deg,#f1fbf5,#ecf8f0) !important;
  border-color:rgba(46,139,87,.42) !important;
  box-shadow:0 10px 24px rgba(46,139,87,.10) !important;
}
body:not(.taxly-admin-unlocked) .taxly-client-card label{color:#303a4d}
body:not(.taxly-admin-unlocked) .taxly-client-card input,
body:not(.taxly-admin-unlocked) .taxly-client-card select,
body:not(.taxly-admin-unlocked) .taxly-client-card textarea{
  border-radius:15px !important;border-color:rgba(109,121,145,.25) !important;
  background:#fff !important;color:#1c2638;box-shadow:inset 0 1px 2px rgba(28,36,55,.02);
}
body:not(.taxly-admin-unlocked) .taxly-client-card input:hover,
body:not(.taxly-admin-unlocked) .taxly-client-card select:hover,
body:not(.taxly-admin-unlocked) .taxly-client-card textarea:hover{border-color:rgba(109,121,145,.42) !important}
body:not(.taxly-admin-unlocked) .taxly-client-card input:focus,
body:not(.taxly-admin-unlocked) .taxly-client-card select:focus,
body:not(.taxly-admin-unlocked) .taxly-client-card textarea:focus{
  border-color:rgba(46,139,87,.62) !important;box-shadow:0 0 0 4px rgba(46,139,87,.10) !important;
}
body:not(.taxly-admin-unlocked) .taxly-client-actions{padding-top:.35rem}
body:not(.taxly-admin-unlocked) .taxly-client-status{
  border-radius:16px !important;border-color:rgba(109,121,145,.18) !important;background:#f8fafb !important;
}

/* Free checker, if opened */
body:not(.taxly-admin-unlocked) .taxly-flow-strip{gap:12px}
body:not(.taxly-admin-unlocked) .flow-chip{
  border-color:rgba(109,121,145,.17);background:#fff;box-shadow:var(--taxly-shadow-sm);
}
body:not(.taxly-admin-unlocked) .flow-chip span{
  background:linear-gradient(145deg,var(--taxly-green),var(--taxly-green-dark));color:#fff;
}
body:not(.taxly-admin-unlocked) .progress-panel,
body:not(.taxly-admin-unlocked) .quiz-card{
  border-color:rgba(109,121,145,.18);background:#fff;box-shadow:var(--taxly-shadow-md);
}
body:not(.taxly-admin-unlocked) .quiz-top{background:linear-gradient(180deg,#fff,#fbfcfd)}
body:not(.taxly-admin-unlocked) .steps li.active{color:var(--taxly-green-dark)}
body:not(.taxly-admin-unlocked) .steps li.active::before{background:linear-gradient(145deg,var(--taxly-green),var(--taxly-green-dark))}
body:not(.taxly-admin-unlocked) .pill{background:#f1f8f4;color:var(--taxly-green-dark);border-color:rgba(46,139,87,.24)}

/* FAQ and supporting cards */
body:not(.taxly-admin-unlocked) .faq-section details,
body:not(.taxly-admin-unlocked) .seo-panel,
body:not(.taxly-admin-unlocked) .route-card{
  border-color:rgba(109,121,145,.18);background:rgba(255,255,255,.94);box-shadow:var(--taxly-shadow-sm);
}
body:not(.taxly-admin-unlocked) .faq-section details[open]{border-color:rgba(199,154,59,.34);box-shadow:var(--taxly-shadow-md)}

/* Manager mode — operational layout remains unchanged */
body.taxly-admin-unlocked,
body.taxly-ai-lab-force{
  background:linear-gradient(180deg,#f7f9fc 0%,#f4f7fb 45%,#ffffff 100%);
}
body.taxly-admin-unlocked .site-header,
body.taxly-ai-lab-force .site-header{
  background:rgba(255,255,255,.92);border-bottom:1px solid rgba(109,121,145,.16);
  box-shadow:0 8px 26px rgba(28,36,55,.05);backdrop-filter:blur(18px);
}
body.taxly-admin-unlocked .taxly-ai-lab-section,
body.taxly-ai-lab-force .taxly-ai-lab-section{
  background:transparent !important;padding-top:6.8rem !important;
}
body.taxly-admin-unlocked .taxly-ai-lab-card,
body.taxly-ai-lab-force .taxly-ai-lab-card{
  border:1px solid rgba(109,121,145,.16) !important;border-radius:26px !important;
  box-shadow:var(--taxly-shadow-md) !important;background:rgba(255,255,255,.97) !important;
}
body.taxly-admin-unlocked .taxly-ai-lab-head,
body.taxly-ai-lab-force .taxly-ai-lab-head{
  padding:1.1rem 1.2rem 1.3rem;margin:-.2rem -.2rem 1.25rem;
  border-radius:20px;background:linear-gradient(135deg,#f8fbff,#fffdf8);
  border:1px solid rgba(109,121,145,.14);
}
body.taxly-admin-unlocked .taxly-ai-lab-head h2,
body.taxly-ai-lab-force .taxly-ai-lab-head h2{letter-spacing:-.035em}
body.taxly-admin-unlocked .taxly-ai-lab-head::before{
  background:#eef8f2 !important;border-color:rgba(46,139,87,.24) !important;color:var(--taxly-green-dark) !important;
}
.taxly-admin-dash,
.taxly-admin-full-card,
.taxly-admin-case-card,
.taxly-case-overview{
  border-color:rgba(109,121,145,.16) !important;
  box-shadow:var(--taxly-shadow-sm) !important;
}
.taxly-admin-case-card{
  border-radius:18px !important;padding:16px !important;
  transition:border-color .18s ease,box-shadow .18s ease;
}
.taxly-admin-case-card:hover{border-color:rgba(23,92,211,.25) !important;box-shadow:var(--taxly-shadow-md) !important}
.taxly-admin-case-main>div,
.taxly-admin-full-metrics>div,
.taxly-admin-full-box{
  background:#fbfcfe !important;border-color:rgba(109,121,145,.14) !important;
}
.taxly-admin-full-card{border-radius:22px !important;background:linear-gradient(180deg,#fff,#fbfcfe) !important}
.taxly-admin-management-panel,
.taxly-admin-subpanel,
.taxly-admin-decision-panel{
  border-color:rgba(109,121,145,.17) !important;box-shadow:0 6px 18px rgba(28,36,55,.035);
}
.taxly-admin-search input,
.taxly-admin-status-select select,
.taxly-admin-management-grid input,
.taxly-admin-management-grid textarea,
.taxly-admin-structured-row input,
.taxly-admin-structured-row select,
.taxly-ai-lab-grid input,
.taxly-ai-lab-upload input{
  border-color:rgba(109,121,145,.24) !important;border-radius:12px !important;
}
.taxly-admin-search input:focus,
.taxly-admin-status-select select:focus,
.taxly-admin-management-grid input:focus,
.taxly-admin-management-grid textarea:focus,
.taxly-admin-structured-row input:focus,
.taxly-admin-structured-row select:focus,
.taxly-ai-lab-grid input:focus,
.taxly-ai-lab-upload input:focus{
  border-color:rgba(23,92,211,.55) !important;box-shadow:0 0 0 4px rgba(23,92,211,.09) !important;outline:none;
}
.taxly-ai-lab-table{border-color:rgba(109,121,145,.16) !important;border-radius:16px !important}
.taxly-ai-lab-table th{background:#f5f8fc !important;color:#344054}
.taxly-ai-lab-table tbody tr:hover td{background:#fbfcff}
.taxly-ai-lab-upload{background:#f9fbfd !important;border-color:rgba(46,139,87,.28) !important}
.taxly-ai-lab-status{border-radius:14px !important}

/* Responsive polish */
@media(max-width:900px){
  body:not(.taxly-admin-unlocked) .nav nav{display:none}
  body:not(.taxly-admin-unlocked) .brand{min-width:0}
  body:not(.taxly-admin-unlocked) .hero-accessible-copy{border-radius:26px;padding:1.35rem}
  body:not(.taxly-admin-unlocked) .taxly-client-shell{border-radius:26px !important}
}
@media(max-width:620px){
  .container{width:min(100% - 22px,1180px)}
  body:not(.taxly-admin-unlocked) .nav{height:68px;gap:8px}
  body:not(.taxly-admin-unlocked) .brand-mark{width:42px;height:42px;border-radius:14px}
  body:not(.taxly-admin-unlocked) .brand small{display:none}
  body:not(.taxly-admin-unlocked) .admin-entry-btn{padding:.62rem .78rem;font-size:.82rem}
  body:not(.taxly-admin-unlocked) .nav-cta{padding:.65rem .9rem;font-size:.86rem}
  body:not(.taxly-admin-unlocked) .hero.hero-selected{padding-top:1.4rem !important}
  body:not(.taxly-admin-unlocked) .hero-accessible-copy{border-radius:22px;padding:1.15rem}
  body:not(.taxly-admin-unlocked) .hero-actions .btn{width:100%}
  body:not(.taxly-admin-unlocked) .taxly-client-shell{padding:.65rem !important;border-radius:22px !important}
  body:not(.taxly-admin-unlocked) .taxly-client-card{padding:1rem !important}
  body:not(.taxly-admin-unlocked) .taxly-client-card-head{align-items:flex-start}
  body:not(.taxly-admin-unlocked) .taxly-client-price{min-width:4.5rem;height:4.5rem;font-size:1.05rem}
  body:not(.taxly-admin-unlocked) .taxly-client-actions .btn{width:100%}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}
