.ik-root { --ik-accent:#0f3a65; --ik-tint:#edf4fb; --ik-line:#dfe7ef; color:#172c42; max-width:1450px; margin:auto; }
.ik-root.ik-school { --ik-accent:#078985; --ik-tint:#e8f8f7; }
.ik-root *, .ik-root *::before, .ik-root *::after { box-sizing:border-box; }
.ik-root button, .ik-root input, .ik-root select, .ik-root textarea { font:inherit; }
.ik-root button, .ik-root summary { cursor:pointer; }
.ik-root :focus-visible { outline:3px solid #ff9ac0; outline-offset:3px; }
.ik-hero, .ik-row>header { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:18px; }
.ik-hero h2 { margin:6px 0; font-size:26px; }
.ik-hero { flex-wrap:wrap; }
.ik-dot-actions { display:flex; flex-wrap:wrap; gap:10px; width:100%; padding-top:8px; }
.ik-dot-actions [role=status] { flex-basis:100%; margin:0; }
.ik-dot-actions .v2-btn { min-height:44px; white-space:normal; text-align:center; }
.ik-dot-actions .v2-btn:focus-visible { outline:3px solid var(--ik-accent); outline-offset:3px; }
.ik-hero p, .ik-card header p, .ik-muted { color:#617286; font-size:12px; line-height:1.6; }
.ik-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--ik-line); border-radius:11px; overflow:hidden; margin:20px 0 24px; }
.ik-steps button { background:white; border:0; border-bottom:3px solid transparent; color:#617286; padding:17px 12px; display:flex; align-items:center; gap:10px; font-weight:650; text-align:left; }
.ik-steps button+button { border-left:1px solid var(--ik-line); }
.ik-steps span { display:grid; place-items:center; width:28px; height:28px; flex:none; border-radius:50%; background:#f0f3f7; }
.ik-steps [aria-current=step] { border-bottom-color:var(--ik-accent); background:var(--ik-tint); color:var(--ik-accent); }
.ik-steps [aria-current=step] span { background:var(--ik-accent); color:white; }
.ik-workspace { display:grid; grid-template-columns:minmax(0,1fr) 285px; gap:23px; align-items:start; }
.ik-stage, .ik-field, .ik-grid>* { min-width:0; }
.ik-stage>h2 { font-size:20px; margin:0 0 18px; }
.ik-editor { border:0; padding:0; margin:0; min-width:0; }
.ik-card { padding:23px; border:1px solid var(--ik-line); border-radius:12px; background:#fff; margin-bottom:15px; }
.ik-card h3 { font-size:15px; margin:0 0 6px; }
.ik-card header { margin-bottom:19px; }
.ik-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px 18px; }
.ik-field { display:flex; flex-direction:column; gap:6px; }
.ik-full { grid-column:1/-1; }
.ik-field label, .ik-tool-add label, .ik-choices legend, .ik-languages legend { font-size:12px; font-weight:650; color:#334b62; }
.ik-root input:not([type=checkbox]), .ik-root select, .ik-root textarea { width:100%; min-width:0; padding:10px 11px; border:1px solid #ccd7e3; background:white; color:#172c42; border-radius:8px; }
.ik-root textarea { resize:vertical; min-height:84px; }
.ik-root input[type=checkbox] { width:16px; height:16px; flex:none; accent-color:var(--ik-accent); }
.ik-check, .ik-choices label, .ik-languages>div>label { display:flex; gap:8px; align-items:center; font-size:12px; padding:9px 0; }
.ik-check { margin-top:15px; padding:12px; border-radius:8px; background:var(--ik-tint); }
.ik-mini { margin-top:20px; padding-top:15px; border-top:1px solid var(--ik-line); }
.ik-root h4 { font-size:12px; margin:0 0 12px; color:var(--ik-accent); }
.ik-fold { border:1px solid var(--ik-line); border-radius:9px; background:#fff; margin:16px 0; }
.ik-fold>summary { padding:15px; color:var(--ik-accent); font-size:12px; font-weight:700; }
.ik-fold>div { padding:4px 15px 17px; }
.ik-row { background:#fcfdff; border:1px solid var(--ik-line); border-radius:10px; padding:18px; margin:14px 0; }
.ik-row .ik-fold { border:0; border-top:1px solid var(--ik-line); border-radius:0; background:transparent; }
.ik-row .ik-fold>summary { padding-left:0; }
.ik-row .ik-fold>div { padding-left:0; padding-right:0; }
.ik-row>header h4, .ik-row>header p { margin:0; }
.ik-source { border-bottom:1px solid var(--ik-line); padding-bottom:16px; margin-bottom:18px; }
.ik-source .ik-field { margin:12px 0; }
.ik-source p { font-size:12px; overflow-wrap:anywhere; }
.ik-choices { min-width:0; margin:0; padding:10px; border:1px solid var(--ik-line); border-radius:8px; max-height:260px; overflow:auto; }
.ik-choices label { padding:7px; border-radius:5px; }
.ik-choices label:has(input:checked) { background:var(--ik-tint); color:var(--ik-accent); }
.ik-service-choices { display:flex; flex-wrap:wrap; gap:8px; border:0; padding:0; }
.ik-service-choices label { border:1px solid var(--ik-line); padding:9px 12px; border-radius:8px; }
.ik-service-choices legend { margin-bottom:10px; }
.ik-tool-groups, .ik-languages { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.ik-tags { display:flex; flex-wrap:wrap; gap:7px; margin:12px 0; }
.ik-tags button { border-radius:20px; background:var(--ik-tint); color:var(--ik-accent); }
.ik-tool-add { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; margin:18px 0; }
.ik-tool-add label { grid-column:1/-1; }
.ik-languages { min-width:0; padding:12px; border:1px solid var(--ik-line); border-radius:8px; }
.ik-languages>div { border-bottom:1px solid var(--ik-line); padding-bottom:10px; min-width:0; }
.ik-summary { position:sticky; top:20px; }
.ik-summary-card { border:1px solid var(--ik-line); border-radius:12px; background:white; overflow:hidden; }
.ik-summary-card header { padding:20px; background:var(--ik-accent); color:white; }
.ik-summary-card h3 { font-size:16px; overflow-wrap:anywhere; }
.ik-summary-card dl, .ik-summary-card ul { margin:16px 20px; padding:0; list-style:none; }
.ik-summary-card dt { font-size:11px; color:#617286; margin-top:12px; }
.ik-summary-card dd { font-size:12px; font-weight:600; margin:4px 0 12px; padding-bottom:12px; border-bottom:1px solid var(--ik-line); overflow-wrap:anywhere; }
.ik-summary-card h4 { margin:16px 20px 0; }
.ik-summary-card li { font-size:12px; padding:5px 0; }
.ik-error, .ik-warning { padding:15px; margin:15px 0; border-radius:8px; white-space:pre-line; overflow-wrap:anywhere; font-size:12px; background:#fff7e9; color:#845c22; }
.ik-error { background:#fff0f3; color:#9c2447; }
.ik-stage footer { display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end; padding:8px 0; }
.ik-stage footer [data-kit-action=save], .ik-stage footer [data-kit-action=close] { background:var(--ik-accent); color:white; }
@media(max-width:1100px) { .ik-workspace { grid-template-columns:minmax(0,1fr) 235px; gap:15px; } .ik-card { padding:18px; } }
@media(max-width:800px) { .ik-workspace, .ik-grid, .ik-tool-groups, .ik-languages { grid-template-columns:1fr; } .ik-summary { position:static; } .ik-hero { align-items:flex-start; flex-direction:column; } .ik-steps button { flex-direction:column; text-align:center; padding:12px 4px; font-size:11px; } .ik-row { padding:13px; } .ik-tool-add { grid-template-columns:1fr; } }
.ik-start-dialog { width: min(760px, calc(100% - 24px)); max-height: calc(100% - 32px); border: 1px solid #dce6ef; border-radius: 14px; padding: 22px; color: #183953; background: #f1f5f9; }
.ik-start-dialog::backdrop { background: #12345166; }
.ik-start-dialog label { display: block; margin-bottom: 16px; }
.ik-start-dialog input, .ik-start-dialog select { width: 100%; margin-top: 6px; padding: 10px; border: 1px solid #dce6ef; border-radius: 6px; background: white; color: #183953; }
.ik-start-dialog [hidden] { display: none; }
.ik-start-result { display: flex; justify-content: space-between; gap: 12px; width: 100%; margin-bottom: 9px; text-align: left; }
.ik-start-result small { display: block; }
.ik-start-dialog .ik-card:has([data-start-search][hidden]) { background: transparent; border: 0; padding: 0; margin: 0; }
.ik-start-dialog [data-start-status]:empty { display: none; }
