.inkka { color:#1f2933; border:1px solid #c6cfd6; border-left:3px solid #426993; background:#f5f8fb; border-radius:6px; margin:0 0 1rem; padding:1rem 1.25rem; font-family:inherit; }
.inkka * { box-sizing:border-box; }
.inkka [hidden] { display:none!important; }
.inkka-intro { display:flex; align-items:center; gap:1.1rem; }
.inkka-art { width:92px; flex:0 0 92px; }
.inkka-character { width:100%; height:auto; display:block; overflow:visible; }
.inkka .inkka-eyebrow { margin:0 0 .2rem; color:#426993; font-size:.8rem; font-weight:700; }
.inkka-intro :is(h2,h3) { margin:0 0 .3rem; font-size:1.35rem; letter-spacing:-.01em; }
.inkka-intro p { margin:0 0 .5rem; font-size:.95rem; }
.inkka :is(button,input) { font:inherit; font-size:.95rem; min-height:44px; border-radius:4px; }
.inkka button { cursor:pointer; padding:.5rem .75rem; background:#fff; border:1px solid #687b8a; color:#345575; text-align:left; line-height:1.4; }
.inkka button:hover { background:#e8eff5; }
.inkka button:disabled { cursor:wait; opacity:.7; }
.inkka .inkka-open,.inkka-form button { background:#426993; color:#fff; border-color:#426993; font-weight:700; }
.inkka :is(button,input,a):focus-visible { outline:3px solid #1f2933; outline-offset:3px; }
.inkka-panel { border-top:1px solid #c6cfd6; margin-top:1rem; padding-top:1rem; }
.inkka-panel-top { display:flex; align-items:center; flex-wrap:wrap; gap:.5rem; }
.inkka-panel-top strong { flex:1 1 220px; }
.inkka-panel-top button { font-size:.85rem; }
.inkka .inkka-mode { font-size:.9rem; font-weight:650; margin:.8rem 0 .4rem; }
.inkka .inkka-privacy,.inkka .inkka-small { font-size:.85rem; line-height:1.55; color:#4a5865; }
.inkka .inkka-privacy { max-width:90ch; margin:.4rem 0 .8rem; }
.inkka-suggestions { display:flex; flex-wrap:wrap; gap:.5rem; margin:.6rem 0 1rem; }
.inkka-suggestions button { font-size:.85rem; }
.inkka-form label { display:block; font-weight:700; margin:0 0 .4rem; }
.inkka-form>div { display:flex; gap:.5rem; }
.inkka input { background:white; border:1px solid #687b8a; padding:.65rem .7rem; color:#1f2933; flex:1; width:100%; min-width:0; }
.inkka-form button { flex-shrink:0; }
.inkka-detail { margin:.25rem 0; font-size:.85rem; }
.inkka-detail summary { min-height:44px; padding:.7rem 0; cursor:pointer; color:#345575; text-decoration:underline; }
.inkka summary:focus-visible { outline:3px solid #1f2933; outline-offset:3px; }
.inkka:has(.inkka-open[aria-expanded=true]) .inkka-open { display:none; }
.inkka .inkka-live { font-size:.9rem; margin:.65rem 0; }
.inkka .inkka-live:empty { display:none; }
.inkka-answer { scroll-margin-top:3rem; }
.inkka-answer p { margin:.6rem 0; line-height:1.6; }
.inkka-question { padding:.65rem .8rem; border-left:3px solid #c6cfd6; background:white; font-size:.95rem; overflow-wrap:anywhere; }
.inkka-short { font-weight:650; }
.inkka-counts { color:#345575; font-size:.9rem; }
.inkka-actions { display:flex; flex-wrap:wrap; gap:.5rem 1rem; align-items:center; margin:.5rem 0; }
.inkka a { color:#345575; text-decoration:underline; text-underline-offset:.2em; overflow-wrap:anywhere; }
.inkka-actions a { min-height:44px; display:inline-flex; align-items:center; font-size:.9rem; }
.inkka-rule { padding:1rem; background:#fff; border:1px solid #c6cfd6; border-radius:4px; margin:.75rem 0; }
.inkka-rule h4 { margin:0 0 .6rem; font-size:1rem; line-height:1.5; }
.inkka-rule-type { font-size:.9rem; font-weight:700; }
.inkka-source,.inkka-source-status { font-size:.85rem; color:#4a5865; }
.inkka-source { border-top:1px solid #c6cfd6; padding-top:.6rem; }
.inkka blockquote { font-size:.95rem; line-height:1.65; border-left:3px solid #c6cfd6; padding-left:.75rem; margin:.5rem 0; white-space:pre-line; }
.inkka-head { transform-origin:535px 670px; }
.inkka-wave { transform-origin:694px 705px; }
.inkka-asterisk { transform-box:fill-box; transform-origin:center; }
.inkka-attention { opacity:.6; }
.inkka[data-state=listening] .inkka-head { transform:rotate(-2deg); }
.inkka[data-state=uncertain] .inkka-head { transform:rotate(3deg); }
@media(prefers-reduced-motion:no-preference) {
 .inkka[data-state=hello] .inkka-wave { animation:inkka-wave 1.4s ease-in-out 1; }
 .inkka[data-state=thinking] .inkka-asterisk { animation:inkka-think 4s ease-in-out infinite; }
 .inkka[data-state=found] .inkka-head,.inkka[data-state=source_found] .inkka-head { animation:inkka-nod 1.1s ease 1; }
 .inkka[data-state=source_found] .inkka-asterisk { animation:inkka-light 1.4s ease 1; }
 .inkka[data-state=hello] .inkka-attention,.inkka[data-state=found] .inkka-attention { animation:inkka-light 1.4s ease 1; }
}
@keyframes inkka-breathe { 0%,100%{transform:scale(1)}50%{transform:scale(1.008)} }
@keyframes inkka-blink { 0%,46%,52%,100%{transform:scaleY(1)}49%{transform:scaleY(.12)} }
@keyframes inkka-wave { 0%,100%{transform:rotate(0deg)}30%,70%{transform:rotate(-9deg)}50%{transform:rotate(3deg)} }
@keyframes inkka-think { 0%,100%{opacity:1}50%{opacity:.6} }
@keyframes inkka-nod { 0%,100%{transform:rotate(0deg)}50%{transform:rotate(3deg)} }
@keyframes inkka-light { 0%,100%{opacity:.7}50%{opacity:1} }
.inkka-paused * { animation:none!important; transition:none!important; }
@media(prefers-reduced-motion:reduce){.inkka *{animation:none!important;transition:none!important;}.inkka-head{transform:none!important;}}
@media(max-width:600px){.inkka{padding:.8rem;}.inkka-art{width:60px;flex-basis:60px;}.inkka-intro{gap:.65rem;}.inkka-form>div{flex-direction:column;}.inkka-rule{padding:.75rem;}.inkka-panel-top strong{flex-basis:100%;}}
@media(forced-colors:active){.inkka,.inkka-rule,.inkka button{border:1px solid CanvasText;}}
@media print {.inkka{display:none!important;}}

/* 2.1: discrete presence, finite idle variants and a single deterministic state. */
.inkka-preference {display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin:.9rem 0;font-size:.9rem;}
.inkka select {font:inherit;min-height:44px;max-width:100%;padding:.4rem;color:#1f2933;background:#fff;border:1px solid #687b8a;border-radius:4px;}
.inkka select:focus-visible {outline:3px solid #1f2933;outline-offset:3px;}
.inkka-welcome,.inkka-hint {border:1px solid #9aaebf;background:#fff;padding:.8rem;margin:.8rem 0;border-radius:4px;}
.inkka-hint p {margin:0 0 .6rem;line-height:1.6;}
.inkka-hint button+button {margin-left:.5rem;}
.inkka-quiet .inkka-art {opacity:.8;}
.inkka-pointed {outline:3px solid #426993!important;outline-offset:4px;scroll-margin-top:5rem;}
.inkka [data-inkka-close] {margin-left:auto;}
.inkka-bridge {margin-top:2rem;}
.inkka-bridge a {display:inline-flex;align-items:center;min-height:44px;}
.inkka[data-attention=dialog] .inkka-eyes {translate:3px 2px;}
.inkka[data-attention=result] .inkka-eyes {translate:0 5px;}
.inkka[data-state=waiting] .inkka-attention {opacity:.25;}
.inkka[data-state=uncertain] .inkka-asterisk {opacity:.75;}
@media(prefers-reduced-motion:no-preference){
 .inkka[data-idle=breath] .inkka-figure {animation:inkka-breathe 4s ease-in-out 1;transform-origin:560px 1030px;}
 .inkka[data-idle=blink] .inkka-eyes {animation:inkka-blink 3s 1;transform-box:fill-box;transform-origin:center;}
 .inkka[data-idle=blink] .inkka-head {animation:inkka-nod 4s ease 1;}
 .inkka[data-idle=asterisk] .inkka-asterisk {animation:inkka-asterisk 4s ease 1;}
 .inkka[data-idle=shift] .inkka-figure {animation:inkka-shift 4s ease 1;transform-origin:560px 1030px;}
 .inkka[data-state=found] .inkka-asterisk {animation:inkka-open-star 1.4s ease 1;}
 .inkka[data-state=close] .inkka-head {animation:inkka-nod 1s ease 1;}
 .inkka[data-state=thinking] .inkka-asterisk {animation:inkka-asterisk 4s ease-in-out infinite;}
}
@keyframes inkka-asterisk {0%,100%{rotate:0deg;opacity:1}50%{rotate:4deg;opacity:.7}}
@keyframes inkka-shift {0%,100%{transform:rotate(0)}50%{transform:rotate(.6deg)}}
@keyframes inkka-open-star {0%,100%{scale:1}50%{scale:1.035}}
.inkka-paused *,.inkka-quiet *,.inkka-background * {animation:none!important;transition:none!important;}
@media(prefers-reduced-motion:reduce){.inkka * {animation:none!important;transition:none!important;} .inkka-eyes{translate:none!important;}}
@media(max-width:600px){.inkka-art{width:52px;flex-basis:52px;align-self:flex-start;}.inkka-hint button{margin:0 .4rem .4rem 0;}.inkka-hint button+button{margin-left:0;}.inkka-preference{display:block;}.inkka select{display:block;width:100%;margin-top:.35rem;}}
