/* Shared Klinks identity. Client page themes are deliberately not restyled. */
:root {
  --kl-violet:#6545ee; --kl-deep:#4726b9; --kl-light:#9673f4;
  --kl-ink:#252039; --kl-muted:#6e647d; --kl-night:#18141f;
  --kl-paper:#faf9fc; --kl-lavender:#f0ebfa; --kl-line:#e5dff0;
  --kl-mint:#c7eee2; --kl-peach:#f5d6c8;
}
.klinks-brand-symbol{display:inline-block;width:46px;height:30px;object-fit:contain;flex:none;vertical-align:middle}
.profile-footer .klinks-brand-symbol{width:34px;height:23px}
.landing,.not-found,.klinks-studio,.klinks-portal{color:var(--kl-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.landing,.not-found{--purple:var(--kl-violet);--ink:var(--kl-ink);--lime:var(--kl-mint);--line:var(--kl-line)}
:is(.landing,.not-found,.klinks-studio,.klinks-portal) :is(button,a,input,textarea,select,summary):focus-visible{outline:3px solid var(--kl-light);outline-offset:3px}
:is(.landing,.not-found,.klinks-studio,.klinks-portal) input:not([type=color]),
:is(.landing,.not-found,.klinks-studio,.klinks-portal) textarea,
:is(.landing,.not-found,.klinks-studio,.klinks-portal) select{accent-color:var(--kl-violet)}
/* Public Klinks surfaces */
.landing{background:var(--kl-paper)}
.landing .site-nav,.landing .site-footer{background:#fff;border-color:var(--kl-line)}
.landing .brand,.not-found .brand{gap:10px;color:var(--kl-ink)}
.landing .btn,.not-found .btn{background:var(--kl-violet);box-shadow:0 7px 20px #6545ee16}
.landing .btn:hover,.not-found .btn:hover{background:var(--kl-deep)}
.landing .hero-description,.landing .section-heading>p,.landing .how-section>div>p{color:var(--kl-muted)}
.landing .violet{background:var(--kl-lavender)}
.landing .soft{background:#f2eef8}
.landing .lime{background:var(--kl-mint)}
.landing .dark{background:var(--kl-night)}
.landing .ticker{background:var(--kl-night);color:#b79aff}
.landing .ticker span{color:#eee7fc}
.landing .float-b{background:var(--kl-peach);color:var(--kl-ink)}
.landing .request-section{border-color:var(--kl-line)}
.landing #request-form input,.landing #request-form textarea{border-color:var(--kl-line);color:var(--kl-ink)}
.landing .slug-input{border-color:var(--kl-line);background:#fff}
.landing .steps li>span{background:var(--kl-lavender);color:var(--kl-deep)}
.landing dialog,.not-found{background:var(--kl-paper);color:var(--kl-ink)}
/* Both local and client editors share the same chrome, never iframe themes. */
.klinks-studio{background:var(--kl-paper)}
.klinks-studio .logo{display:inline-flex;align-items:center;gap:10px;color:var(--kl-violet)}
.klinks-studio .logo strong{color:var(--kl-ink);letter-spacing:-1.4px}
.klinks-studio :is(.sidebar,.topbar){background:#fff;border-color:var(--kl-line)}
.klinks-studio :is(.workspace,.tabs){background:var(--kl-paper)}
.klinks-studio .preview{background:var(--kl-lavender);border-radius:24px}
.klinks-studio button{border-color:var(--kl-line)}
.klinks-studio button:hover{border-color:var(--kl-light);background:var(--kl-lavender)}
.klinks-studio .primary{background:var(--kl-violet);border-color:var(--kl-violet);color:#fff}
.klinks-studio .primary:hover{background:var(--kl-deep);border-color:var(--kl-deep);color:#fff}
.klinks-studio .page.active{background:var(--kl-lavender);border-color:#d9cdf8;color:var(--kl-deep)}
.klinks-studio .tabs button.active{background:var(--kl-violet);color:#fff}
.klinks-studio :is(.card,.block-card,.design-row,.identity-card,.media-picker){border-color:var(--kl-line)}
.klinks-studio .design-icon{background:var(--kl-lavender);color:var(--kl-deep)}
.klinks-studio .choice.selected{border-color:var(--kl-violet);background:var(--kl-lavender);color:var(--kl-deep)}
.klinks-studio :is(input,textarea,select){border-color:var(--kl-line)}
.klinks-studio :is(.eyebrow,.side-bottom,.muted,.preview-label,.preview>small){color:var(--kl-muted)}
.klinks-studio #notice{background:var(--kl-lavender);color:var(--kl-deep)}
.klinks-studio .media-picker{background:#f8f5fd}
.klinks-studio .upload-button{border-color:#d9cdf8;color:var(--kl-deep)}
.klinks-studio .mobile-toolbar{background:#fff;border-color:var(--kl-line)}
.klinks-studio .mobile-toolbar button:first-child{background:var(--kl-violet);color:#fff}
/* Access, applications, administration and privacy */
.klinks-portal{background:var(--kl-paper)}
.klinks-portal .wordmark{color:var(--kl-ink);letter-spacing:-1.4px}
.klinks-portal .portal-ribbon{width:46px;height:30px;object-fit:contain}
.klinks-portal :is(.access-card,.request,#admin-login,dialog){background:#fff;border:1px solid var(--kl-line);box-shadow:0 12px 40px #4726b908}
.klinks-portal :is(p,small,.eyebrow,.request dt){color:var(--kl-muted)}
.klinks-portal a{color:var(--kl-deep)}
.klinks-portal button{background:var(--kl-violet);color:#fff}
.klinks-portal button:hover{background:var(--kl-deep)}
.klinks-portal .secondary{background:var(--kl-lavender);color:var(--kl-deep)}
.klinks-portal .secondary:hover{background:#e5dbf8}
.klinks-portal .badge{background:var(--kl-lavender);color:var(--kl-deep)}
.klinks-portal :is(input,textarea){border-color:var(--kl-line);color:var(--kl-ink);background:#fff}
.klinks-portal #message{color:var(--kl-deep)}
.klinks-portal dialog::backdrop{background:#18141f99}
