/* KI-Readiness Check – asioso branding. All rules are scoped to .kirc so the site's styles stay untouched.
   Fonts: Montserrat + Raleway are already loaded by asioso.com (static/fonts). */
.kirc{
  --kirc-bg:#F4F6F0; --kirc-surface:#FFFFFF; --kirc-fg:#2C3039; --kirc-muted:#5F6670; --kirc-line:#DDE3D3;
  --kirc-accent:#93BD32; --kirc-accent-hover:#A6CF45; --kirc-accent-ink:#1A181B; --kirc-accent-strong:#5E7D17; --kirc-accent-soft:#EEF5DC;
  --kirc-blue:#5CA9DE; --kirc-link:#2F7FB8;
  --kirc-good:#5E8A12; --kirc-warn:#B26B00; --kirc-crit:#C0392B;
  --kirc-display:Montserrat,system-ui,sans-serif; --kirc-body:Raleway,system-ui,sans-serif;
  background:var(--kirc-bg); color:var(--kirc-fg); font-family:var(--kirc-body); font-size:17px; line-height:1.55;
  padding:72px max(16px,env(safe-area-inset-right,0px)) 80px max(16px,env(safe-area-inset-left,0px));
}
.kirc *,.kirc *::before,.kirc *::after{box-sizing:border-box}
.kirc [hidden]{display:none!important}
.kirc-wrap{max-width:720px;margin:0 auto;display:grid;gap:20px}
.kirc h2,.kirc h3{font-family:var(--kirc-display);margin:0;line-height:1.2;text-wrap:balance;color:var(--kirc-fg)}
.kirc-title{font-size:clamp(1.7rem,4.5vw,2.4rem)!important;font-weight:900;letter-spacing:-.01em}
.kirc h3{font-size:1.4rem;font-weight:800}
.kirc p{margin:0}
.kirc-head{display:grid;gap:8px}
.kirc-lead{color:var(--kirc-muted);max-width:60ch}
.kirc-eyebrow{font-family:var(--kirc-display);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--kirc-accent-strong);font-weight:700}
.kirc-hash{color:var(--kirc-accent-strong)}
.kirc-editnote{background:#FFF8E1;border:1px dashed var(--kirc-warn);padding:10px 14px;border-radius:8px;font-size:.9rem}
.kirc-card{background:var(--kirc-surface);border:1px solid var(--kirc-line);border-radius:12px;padding:clamp(20px,4vw,32px);display:grid;gap:22px}
.kirc-section,.kirc-sechead{display:grid;gap:22px}
.kirc-sechead{gap:6px}

.kirc-progress{display:grid;gap:8px}
.kirc-steps{display:flex;gap:6px}
.kirc-steps span{flex:1;height:6px;border-radius:3px;background:var(--kirc-line);transition:background .25s}
.kirc-steps span.done{background:var(--kirc-accent)}
.kirc-steps span.now{background:var(--kirc-blue)}
.kirc-steplabel{color:var(--kirc-muted);font-size:.85rem}

.kirc-q{display:grid;gap:10px;border:0;margin:0;padding:0;min-width:0}
.kirc-q legend{font-weight:600;padding:0;margin-bottom:10px;display:flex;gap:10px}
.kirc-q legend b{font-family:var(--kirc-display);font-weight:800;color:var(--kirc-accent-strong);min-width:1.6em}
.kirc-q.missing legend{color:var(--kirc-crit)}
.kirc-opts{display:flex;flex-wrap:wrap;gap:8px;padding-left:calc(1.6em + 10px)}
.kirc-opt{position:relative;margin:0}
.kirc-opt input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.kirc-opt span{display:inline-block;padding:9px 16px;border:1px solid var(--kirc-line);border-radius:999px;background:var(--kirc-surface);cursor:pointer;transition:all .15s;font-weight:500}
.kirc-opt input:hover+span{border-color:var(--kirc-accent)}
.kirc-opt input:checked+span{background:var(--kirc-accent);border-color:var(--kirc-accent);color:var(--kirc-accent-ink)}
.kirc-opt input:focus-visible+span{outline:2px solid var(--kirc-accent);outline-offset:2px}

.kirc-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.kirc-field{display:grid;gap:5px;min-width:0}
.kirc-field label{font-size:.9rem;font-weight:600}
.kirc-field label i{font-style:normal;color:var(--kirc-muted);font-weight:400}
.kirc-field input,.kirc-field textarea{font:inherit;color:var(--kirc-fg);background:var(--kirc-bg);border:1px solid var(--kirc-line);border-radius:8px;padding:10px 12px;width:100%}
.kirc-field input:focus,.kirc-field textarea:focus{outline:2px solid var(--kirc-accent);outline-offset:1px;border-color:var(--kirc-accent)}
.kirc-field.err input{border-color:var(--kirc-crit)}
.kirc-field .msg{color:var(--kirc-crit);font-size:.85rem}
.kirc-consent{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}
.kirc-consent input{margin-top:5px;width:18px;height:18px;accent-color:var(--kirc-accent);flex:none}
.kirc-consent.err{color:var(--kirc-crit)}
.kirc-consent a{color:var(--kirc-link)}
.kirc-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.kirc-locked{display:flex;gap:14px;align-items:center;padding:14px 16px;background:var(--kirc-accent-soft);border-radius:8px}
.kirc-blur{font-family:var(--kirc-display);font-size:1.8rem;font-weight:900;filter:blur(7px);user-select:none;color:var(--kirc-accent)}

.kirc-actions{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.kirc-btn{font-family:var(--kirc-display);font-size:.95rem;font-weight:700;border-radius:999px;padding:12px 26px;cursor:pointer;border:1px solid transparent;line-height:1.2}
.kirc-primary{background:var(--kirc-accent);color:var(--kirc-accent-ink);margin-left:auto}
.kirc-primary:hover{background:var(--kirc-accent-hover)}
.kirc-ghost{background:transparent;color:var(--kirc-fg);border-color:var(--kirc-fg)}
.kirc-btn:focus-visible{outline:2px solid var(--kirc-accent);outline-offset:2px}
.kirc-btn[disabled]{opacity:.6;cursor:wait}
.kirc-error{color:var(--kirc-crit);font-size:.95rem}

.kirc-total{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.kirc-gauge{position:relative;width:132px;height:132px;flex:none}
.kirc-gauge svg{transform:rotate(-90deg)}
.kirc-gauge .num{position:absolute;inset:0;display:grid;place-content:center;text-align:center;justify-items:center}
.kirc-gauge strong{font-family:var(--kirc-display);font-weight:900;font-size:2.2rem;line-height:1}
.kirc-gauge small{color:var(--kirc-muted);font-size:.72rem;line-height:1.2;max-width:80px}
.kirc-level{display:inline-block;padding:4px 12px;border-radius:999px;font-weight:700;font-size:.9rem;color:var(--kirc-accent-ink);background:var(--kirc-accent)}
.kirc-total-text{display:grid;gap:8px;flex:1;min-width:220px}
.kirc-cats{display:grid;gap:16px}
.kirc-cat{display:grid;gap:6px}
.kirc-cat-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.kirc-cat-head h4{font-family:var(--kirc-display);font-size:1rem;font-weight:700;margin:0}
.kirc-cat-head span{color:var(--kirc-muted);font-size:.9rem;white-space:nowrap}
.kirc-bar{height:8px;border-radius:4px;background:var(--kirc-line);overflow:hidden}
.kirc-bar i{display:block;height:100%;border-radius:4px;transition:width .6s ease}
.kirc-cat p{color:var(--kirc-muted);font-size:.95rem}
.kirc-chip{font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:999px;border:1px solid currentColor;margin-left:8px;white-space:nowrap}
.kirc .is-good{color:var(--kirc-good)} .kirc .is-warning{color:var(--kirc-warn)} .kirc .is-critical{color:var(--kirc-crit)}
.kirc .bg-good{background:var(--kirc-good)} .kirc .bg-warning{background:var(--kirc-warn)} .kirc .bg-critical{background:var(--kirc-crit)}

@media (max-width:560px){.kirc{padding-block:48px 56px}.kirc-grid{grid-template-columns:1fr}.kirc-opts{padding-left:0}}
@media (prefers-reduced-motion:reduce){.kirc *{transition:none!important}}

/* Edit mode: questionnaire form for editors (only rendered in the CMS editor) */
.kirc-editnote ul{margin:6px 0 0;padding-left:18px}
.kirc-editwarn{background:#FDECEA;border:1px solid var(--kirc-crit);color:var(--kirc-crit);padding:10px 14px;border-radius:8px;font-size:.9rem}
.kirc-editor{font-size:15px;padding-block:32px}
.kirc-ed-group{background:var(--kirc-surface);border:1px solid var(--kirc-line);border-radius:12px;padding:16px;display:grid;gap:12px}
.kirc-ed-group h3{font-size:1.1rem}
.kirc-ed-questions{display:grid;gap:10px;padding:12px;background:var(--kirc-bg);border-radius:8px}
.kirc-ed-questions h4{margin:0;font-size:.95rem}
.kirc-ed-item{display:grid;gap:10px;padding:12px;border:1px dashed var(--kirc-line);border-radius:8px;background:var(--kirc-surface)}
.kirc-ed-row{display:flex;flex-wrap:wrap;gap:12px}
.kirc-ed-row>.kirc-ed-field{flex:1 1 180px}
.kirc-ed-field{display:grid;gap:4px;min-width:0}
.kirc-ed-field>label{font-size:.8rem;font-weight:700;color:var(--kirc-muted);text-transform:uppercase;letter-spacing:.04em}
