.ka{width:100%;max-width:1240px;min-width:0;margin:20px 0 12px;padding:24px;background:#181923;border:1px solid #393b4a;border-radius:16px;color:#f2f1f5;box-sizing:border-box;scroll-margin-top:24px}
.ka *,.ka-dialog *{box-sizing:border-box}.ka [hidden],.ka-dialog [hidden]{display:none!important}.ka .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.ka-head,.ka-actions,.ka-tabs,.ka-card-head,.ka-slot-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.ka-head{justify-content:space-between;align-items:flex-start}.ka-eyebrow{color:#aeb8ff;font-size:11px;letter-spacing:2px;margin:0 0 6px}.ka h2{font-size:23px;margin:0 0 8px}.ka-intro,.ka-help{font-size:13px;line-height:1.8;color:#b8bbcc;margin:8px 0 16px}.ka h3{font-size:16px;margin:0}.ka fieldset{border:0;padding:0;margin:0;min-width:0}.ka legend{padding:0}.ka button,.ka-dialog button{min-height:40px;padding:9px 13px;font:inherit;font-size:12px;background:#303246;border:1px solid #4b4f68;border-radius:8px;color:#f5f5ff;cursor:pointer}.ka button:disabled,.ka-dialog button:disabled{opacity:.45;cursor:wait}.ka .ka-primary{background:#d7dcff;color:#202541;border-color:#d7dcff;font-weight:700}.ka-status{font-size:12px;color:#a8d5bd;min-height:20px;line-height:1.7;margin:10px 0}.ka-status[data-error=true]{color:#ffbd9b}.ka-tabs{border-bottom:1px solid #3e4053;margin:12px 0 20px;padding-bottom:12px}.ka-tabs button{background:transparent;border-color:transparent;font-size:14px}.ka-tabs button[aria-selected=true]{color:#e8eaff;background:#34394f;border-color:#858fc7}.ka-count{font-variant-numeric:tabular-nums;color:#babfdb;font-size:12px;margin-left:5px}.ka-principles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.ka-principles button{display:flex;align-items:center;flex-direction:column;gap:7px;background:#222432;min-width:0;font-size:12px;text-align:center}.ka-principles svg{width:88px;height:88px;color:#b6c1ff}.ka-principles small{font-size:11px;color:#aeb5cb}.ka-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.ka-card{min-width:0;background:#222430;border:1px solid #3d4050;border-radius:12px;padding:16px;scroll-margin-top:24px}.ka-card-head{justify-content:space-between;margin-bottom:12px}.ka-number{font-size:11px;letter-spacing:1px;color:#aab5f7}.ka-media{height:260px;display:flex;align-items:center;justify-content:center;background:#12131b;border:1px solid #42465b;border-radius:8px;overflow:hidden;color:#aeb3c5;text-align:center;font-size:13px;line-height:1.8;padding:8px}.ka-media img{width:100%;height:100%;object-fit:contain}.ka-empty{padding:22px}.ka-slot-actions{margin:10px 0}.ka-slot-actions button{flex:1}.ka-meta{font-size:11px;color:#adb6ca;line-height:1.7;overflow-wrap:anywhere;min-height:20px;margin:8px 0}.ka label{display:block;font-size:12px;line-height:1.6;color:#cbd0df;margin-top:12px}.ka input[type=text],.ka textarea,.ka select{width:100%;min-width:0;display:block;padding:10px 11px;margin:5px 0 0;background:#171923;border:1px solid #54586e;border-radius:7px;color:#f4f5fa;font:inherit;font-size:13px;line-height:1.6}.ka input::placeholder,.ka textarea::placeholder{color:#8d95ad}.ka textarea{min-height:82px;resize:vertical}.ka select{height:auto;white-space:normal}.ka-rule-note{font-size:11px;line-height:1.7;color:#aeb9d6;margin:7px 0}.ka-source{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;background:#222430;border:1px solid #3d4050;border-radius:12px;padding:16px;margin:16px 0}.ka-source .ka-media{height:210px}.ka-source h3{margin:4px 0 8px}.ka-derivative-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ka-derivative-grid .ka-card{padding:12px}.ka-derivative-grid .ka-media{height:220px}.ka-derivative-grid .ka-card-head{gap:4px}.ka-derivative-grid .ka-card-head button{padding:4px 8px;min-height:32px}.ka-derivative-grid h3{font-size:13px}.ka-derivative-grid .ka-slot-actions{gap:5px}.ka-derivative-grid .ka-slot-actions button{font-size:11px;padding:8px 6px}.ka details{margin-top:12px;font-size:12px;color:#bac2d7;line-height:1.7}.ka summary{cursor:pointer;padding:5px 0}.ka-writing{margin-top:20px;padding-top:6px;border-top:1px solid #3e4053}.ka-log{max-height:200px;overflow:auto;padding-left:24px}.ka-log li{padding:5px 0;font-size:12px}.ka-log time{color:#949db6;margin-right:12px}.ka-dialog{width:780px;max-width:calc(100vw - 24px);max-height:88vh;max-height:88dvh;overflow:auto;border:1px solid #545c7a;border-radius:14px;padding:22px;background:#1d2030;color:#f2f3fa}.ka-dialog::backdrop{background:#000b}.ka-dialog h2{font-size:19px;margin:0}.ka-dialog p{color:#bbc4dc;font-size:13px;line-height:1.7}.ka-pick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ka-pick-grid button{text-align:left;padding:8px;min-width:0}.ka-pick-grid img{width:100%;height:130px;object-fit:contain;background:#10111a;display:block;margin-bottom:8px}.ka-pick-grid small{display:block;color:#bbc4dc;margin-top:5px}.ka-validation{border-left:3px solid #c8ac72;padding:8px 12px;background:#333025;color:#ead9b6;font-size:12px;line-height:1.8;margin:12px 0}.ka textarea:focus-visible,.ka button:focus-visible,.ka input:focus-visible,.ka select:focus-visible{outline:2px solid #b8c5ff;outline-offset:3px}
@media(max-width:1000px){.ka-derivative-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ka-derivative-grid .ka-media{height:240px}}
@media(max-width:600px){.ka{padding:16px 12px;margin-top:12px}.ka h2{font-size:20px}.ka-head{gap:12px}.ka-actions{width:100%}.ka-actions button{flex:1;min-height:44px}.ka-principles{gap:6px}.ka-principles button{padding:8px 3px;font-size:11px}.ka-principles svg{width:58px;height:58px}.ka-principles small{font-size:10px}.ka-grid{grid-template-columns:1fr}.ka-source{grid-template-columns:1fr;padding:12px}.ka-source .ka-media{height:220px}.ka-derivative-grid{gap:8px}.ka-derivative-grid .ka-card{padding:9px}.ka-derivative-grid .ka-media{height:180px}.ka-derivative-grid .ka-slot-actions{flex-direction:column;align-items:stretch}.ka-derivative-grid input[type=text]{font-size:12px;padding:8px}.ka-pick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ka-dialog{padding:16px}.ka-tabs{gap:2px}.ka-tabs button{padding:9px;font-size:12px}}

/* Direct, touch-friendly native file inputs keep the photo picker in the user's gesture. */
.ka .ka-upload{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:1;min-width:0;min-height:44px;margin:0;padding:9px 13px;border:1px solid #4b4f68;border-radius:8px;background:#303246;color:#f5f5ff;font:inherit;font-size:12px;line-height:1.6;text-align:center;cursor:pointer;overflow:hidden}
.ka .ka-upload input[type=file]{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer;font-size:16px}
.ka .ka-upload:focus-within{outline:2px solid #b8c5ff;outline-offset:3px}
.ka fieldset:disabled .ka-upload{opacity:.45;cursor:wait}
.ka .ka-upload-status{margin:6px 0;font-size:12px;line-height:1.7;color:#a8d5bd;overflow-wrap:anywhere}
.ka .ka-upload-status:empty{display:none}
.ka .ka-upload-status[data-error=true]{color:#ffbd9b}
@media(max-width:600px){.ka .ka-upload{min-height:44px}.ka-derivative-grid .ka-upload{font-size:11px;padding:8px 6px}}
