.builder-page{padding:1.4rem 0 4rem;--builder-radius:16px}
.builder-hero{display:flex;justify-content:space-between;gap:2rem;align-items:flex-end;padding:1.6rem 0 1.15rem}
.builder-hero-copy{max-width:840px}
.eyebrow{font-size:.68rem;font-weight:900;letter-spacing:.13em;color:var(--primary-h);margin-bottom:.5rem}
.builder-hero h1{font-size:clamp(2rem,4vw,3rem);line-height:1.04;letter-spacing:-.045em;font-weight:900}
.builder-hero .sub{max-width:820px;color:var(--text2);margin-top:.75rem;font-size:1rem;line-height:1.65}
.builder-hero-meta{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:1rem}
.draft-state,.schema-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.48rem .7rem;border:1px solid var(--border);background:var(--surface2);border-radius:999px;font-size:.72rem;color:var(--text2)}
.draft-dot,.schema-dot{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 0 4px var(--success-soft)}
.schema-dot{background:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}
.builder-hero-actions{display:flex;gap:.55rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.import-label{position:relative;overflow:hidden;cursor:pointer}
.import-label input{position:absolute;inset:0;opacity:0;cursor:pointer}
.danger-soft{color:var(--danger)!important}
.builder-error-summary{margin:0 0 1rem;padding:1rem 1.1rem;border:1px solid rgba(239,68,68,.35);background:rgba(239,68,68,.08);border-radius:14px}
.builder-error-summary[hidden]{display:none}
.builder-error-title{display:flex;gap:.55rem;align-items:center;color:var(--danger);margin-bottom:.45rem}
.builder-error-title>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--danger);color:#fff;font-size:.75rem}
.builder-error-summary ul{margin:.35rem 0 0 1.5rem}.builder-error-summary li{margin:.25rem 0;color:var(--text2)}.builder-error-summary a{color:inherit}.builder-error-summary .warning-item{color:var(--warning)}
.builder-steps{position:sticky;top:64px;z-index:20;display:flex;gap:.55rem;padding:.6rem 0;margin-bottom:1.2rem;overflow-x:auto;scrollbar-width:thin}
.builder-step{display:flex;align-items:center;gap:.65rem;min-width:165px;padding:.62rem .75rem;border:1px solid var(--border);border-radius:13px;background:color-mix(in srgb,var(--surface) 90%,transparent);color:var(--muted);text-decoration:none;transition:.18s ease}
.builder-step:hover{border-color:var(--border-l);color:var(--text)}
.builder-step span{width:28px;height:28px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:var(--surface3);font-size:.72rem;font-weight:900}
.builder-step strong{display:block;font-size:.76rem}.builder-step small{display:block;margin-top:.08rem;font-size:.62rem;color:var(--muted)}
.builder-step.active{border-color:var(--primary);background:var(--primary-soft);color:var(--text)}.builder-step.active span{background:var(--primary);color:#fff}
.builder-layout{display:grid;grid-template-columns:minmax(0,1fr) 355px;gap:1.35rem;align-items:start}
.builder-main{min-width:0}
.builder-section-card{scroll-margin-top:140px;padding:1.35rem;margin-bottom:1rem;border-radius:var(--builder-radius)}
.section-intro{display:flex;gap:.85rem;align-items:flex-start;margin-bottom:1.2rem}
.section-intro-with-action{justify-content:space-between}
.section-intro-left{display:flex;gap:.85rem}
.section-number{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;background:var(--primary-soft);color:var(--primary-h);font-size:.68rem;font-weight:900}
.section-intro h2{font-size:1.03rem;line-height:1.2}.section-intro p{font-size:.73rem;color:var(--muted);margin-top:.22rem;line-height:1.45}
.section-intro-with-action .btn{flex:0 0 auto}
.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.full-span{grid-column:1/-1}
.fg{min-width:0}.fg label,.advanced-details label,.field-default>span{display:block;font-size:.67rem;font-weight:800;color:var(--text2);margin-bottom:.4rem}
.req{color:var(--danger)}.field-help{display:block;margin-top:.35rem;font-size:.65rem;color:var(--muted);line-height:1.45}.field-help-inline{font-weight:600;color:var(--muted);font-size:.62rem}
.fi{width:100%;box-sizing:border-box;border-radius:10px}
.fixed-value{display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:.65rem .75rem;border:1px solid var(--border);background:var(--surface2);border-radius:10px;color:var(--text2);font-family:var(--mono);font-size:.78rem}
.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.choice-card{position:relative;display:flex;align-items:center;gap:.75rem;padding:1rem;border:1px solid var(--border);background:var(--surface2);border-radius:13px;text-align:left;color:inherit;cursor:pointer;transition:.18s}.choice-card:hover{border-color:var(--border-l);transform:translateY(-1px)}.choice-card.active{border-color:var(--primary);background:var(--primary-soft)}.choice-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:10px;background:var(--surface3);font:800 .66rem var(--mono);color:var(--text2)}.choice-content strong{display:block;font-size:.82rem}.choice-content small{display:block;color:var(--muted);font-size:.64rem;margin-top:.14rem;line-height:1.35}.choice-check{margin-left:auto;color:transparent;font-size:.9rem}.choice-card.active .choice-check{color:var(--primary-h)}
.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 0;border-top:1px solid var(--border);margin-top:1rem}.modern-toggle-row{margin-top:.8rem;padding-bottom:0}.toggle-info strong{display:block;font-size:.78rem}.toggle-info span{display:block;color:var(--muted);font-size:.66rem;margin-top:.16rem;line-height:1.4}
.subsection-card{padding:1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface2);margin-bottom:.8rem}.subsection-card:last-child{margin-bottom:0}.subsection-card.compact{padding:.95rem}
.subsection-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.subsection-head h3{font-size:.84rem}.subsection-head p{color:var(--muted);font-size:.64rem;margin-top:.16rem;line-height:1.45}.subsection-head .switch{flex:0 0 auto}
.inline-check{display:inline-flex!important;align-items:center;gap:.45rem;font-size:.7rem!important;color:var(--text2)!important;font-weight:700!important;cursor:pointer}.inline-check input{accent-color:var(--primary)}
.count-badge,.muted-badge{display:inline-flex;align-items:center;min-height:20px;padding:0 .45rem;border-radius:999px;background:var(--surface3);color:var(--muted);font-size:.58rem;font-weight:800;vertical-align:middle}.muted-badge{font-size:.56rem}
.stack-container{display:grid;gap:.65rem}
.endpoint-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;align-items:center;padding:.85rem;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.endpoint-main{min-width:0}.endpoint-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.65rem}.endpoint-index{font-size:.58rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.method-row{display:flex;gap:.35rem;flex-wrap:wrap;align-items:center;margin-top:.65rem}.method-label{font-size:.61rem;font-weight:800;color:var(--muted);margin-right:.15rem}.method-chip{border:1px solid var(--border);background:var(--surface2);color:var(--muted);padding:.32rem .52rem;border-radius:7px;font:800 .58rem var(--mono);cursor:pointer}.method-chip:hover{border-color:var(--primary)}.method-chip.on{background:var(--primary-soft);border-color:rgba(22,184,166,.45);color:var(--primary-h)}
.advanced-details{margin-top:.72rem;border-top:1px dashed var(--border);padding-top:.65rem}.advanced-details summary{cursor:pointer;list-style:none;font-size:.65rem;font-weight:800;color:var(--text2)}.advanced-details summary::-webkit-details-marker{display:none}.advanced-details summary:before{content:"+";display:inline-grid;place-items:center;width:18px;height:18px;margin-right:.35rem;border-radius:6px;background:var(--surface3);color:var(--muted)}.advanced-details[open] summary:before{content:"−"}.advanced-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:.75rem}.constraint-inner{padding:.05rem 0}.field-help-inline{margin-left:.18rem}
.runtime-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.runtime-grid .subsection-card:last-child{grid-column:1/-1}
.advanced-fields[hidden]{display:none}
.array-editor{margin-top:.85rem;padding-top:.8rem;border-top:1px dashed var(--border)}.array-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.65rem}.array-head strong{display:block;font-size:.7rem}.array-head small{display:block;color:var(--muted);font-size:.61rem;margin-top:.14rem;line-height:1.4}.env-row{display:grid;grid-template-columns:1fr 1.3fr auto;gap:.5rem;align-items:center}
.model-summary{display:flex;gap:.45rem;flex-wrap:wrap;margin:-.35rem 0 1rem}.model-summary>span{padding:.33rem .55rem;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.6rem}.model-summary strong{color:var(--text)}
.entity-block{border:1px solid var(--border);border-radius:15px;background:var(--surface2);overflow:hidden;margin-bottom:.75rem}.entity-block.open{border-color:var(--border-l);box-shadow:0 12px 28px rgba(0,0,0,.08)}.entity-block.disabled-entity{opacity:.67}
.entity-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.55rem;align-items:center;padding:.8rem .9rem}.entity-toggle{border:0;background:transparent;color:var(--muted);font-size:1.35rem;line-height:1;cursor:pointer;width:28px;height:28px}.entity-block.open .entity-chevron{display:inline-block;transform:rotate(90deg)}.entity-chevron{display:inline-block;transition:.18s}
.entity-title-line{display:flex;align-items:center;gap:.5rem}.entity-name-input{width:min(100%,310px);border:1px solid transparent;background:transparent;padding:.38rem .45rem;border-radius:8px;color:var(--text);font-weight:800;font-size:.82rem}.entity-name-input:hover{border-color:var(--border)}.entity-name-input:focus{outline:none;background:var(--bg);border-color:var(--primary)}.entity-status{font-size:.55rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;color:var(--success)}.disabled-entity .entity-status{color:var(--muted)}
.entity-meta{display:flex;gap:.55rem;flex-wrap:wrap;margin-left:.45rem;color:var(--muted);font-size:.59rem}.entity-meta span{white-space:nowrap}
.entity-body{padding:0 1rem 1rem}.entity-quick-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:.75rem .1rem;border-top:1px solid var(--border);border-bottom:1px dashed var(--border)}.entity-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,.85fr);gap:1rem;padding-top:1rem}
.entity-section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.55rem}.entity-section-head h4,.entity-settings-card h4{font-size:.68rem}.entity-section-head p,.entity-settings-card>p{font-size:.61rem;color:var(--muted);margin-top:.12rem}
.field-list,.relationship-list{display:grid;gap:.55rem}.field-row,.rel-row{padding:.78rem;border:1px solid var(--border);border-radius:11px;background:var(--surface)}
.field-main{display:grid;grid-template-columns:minmax(0,1fr) 155px auto;gap:.5rem;align-items:center}.field-flags{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:.6rem}.check-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.32rem .48rem;border:1px solid var(--border);border-radius:7px;background:var(--surface2);font-size:.59rem;color:var(--muted);cursor:pointer}.check-chip input{accent-color:var(--primary)}.check-chip.on{border-color:rgba(22,184,166,.45);background:var(--primary-soft);color:var(--primary-h)}
.field-default{display:flex;align-items:center;gap:.38rem;margin-left:auto;min-width:180px}.field-default>span{margin:0;white-space:nowrap;color:var(--muted);font-size:.58rem}.field-default .fi{min-width:125px;padding:.38rem .48rem;font-size:.68rem}
.remove-button{color:var(--muted)!important;font-size:1rem!important}.remove-button:hover{color:var(--danger)!important}
.rel-main{display:grid;grid-template-columns:minmax(0,1fr) 150px 170px auto;gap:.5rem;align-items:center}.relation-list .fi{min-width:0}
.entity-side{display:grid;gap:.75rem;align-content:start}.entity-settings-card{padding:.8rem;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.entity-settings-card .fg{margin-top:.7rem}.auto-grid{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.75rem}.tag-row{display:flex;gap:.3rem;flex-wrap:wrap;margin-top:.5rem}.tag{padding:.2rem .4rem;border-radius:999px;background:var(--primary-soft);color:var(--primary-h);font-size:.57rem}.empty-mini-inline{font-size:.6rem;color:var(--muted)}
.section-label{display:flex;align-items:center;gap:.5rem;margin:1rem 0 .6rem;font-size:.62rem;font-weight:900;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.section-label:after{content:"";height:1px;flex:1;background:var(--border)}.action-label{margin-top:1.2rem}
.entity-actions{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.9rem;margin-top:1rem;border-top:1px dashed var(--border)}
.empty-mini{padding:.8rem;border:1px dashed var(--border);border-radius:10px;color:var(--muted);font-size:.65rem;line-height:1.45}.empty-state{padding:2rem 1rem;text-align:center;border:1px dashed var(--border);border-radius:13px}.empty-icon{font-size:2rem;color:var(--primary-h);margin-bottom:.6rem}.empty-state h3{font-size:.9rem}.empty-state p{max-width:470px;margin:.4rem auto 1rem;color:var(--muted);font-size:.68rem;line-height:1.5}
.review-card{position:sticky;top:137px;padding:1.2rem;border:1px solid var(--border);border-radius:18px;background:linear-gradient(180deg,var(--surface),var(--surface2));box-shadow:0 18px 38px rgba(0,0,0,.12)}
.review-kicker{font-size:.58rem;font-weight:900;letter-spacing:.11em;color:var(--primary-h);margin-bottom:.55rem}.review-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.review-head h2{font-size:1.08rem}.review-head p{font-size:.64rem;color:var(--muted);line-height:1.45;margin-top:.18rem}.validity-dot{width:11px;height:11px;flex:0 0 auto;border-radius:50%;background:var(--success);box-shadow:0 0 0 5px var(--success-soft);margin-top:.25rem}.validity-dot.invalid{background:var(--danger);box-shadow:0 0 0 5px rgba(239,68,68,.12)}.validity-dot.warn{background:var(--warning);box-shadow:0 0 0 5px var(--warning-soft)}
.review-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin:1rem 0}.review-stats>div{padding:.65rem .45rem;text-align:center;border:1px solid var(--border);border-radius:10px;background:var(--surface2)}.review-stats strong{display:block;font-size:1rem}.review-stats span{display:block;margin-top:.1rem;color:var(--muted);font-size:.56rem}.review-list{display:flex;flex-wrap:wrap;gap:.3rem}.review-tag{padding:.28rem .45rem;border-radius:999px;background:var(--primary-soft);color:var(--primary-h);font-size:.58rem}.review-empty{color:var(--muted);font-size:.62rem}.review-divider{height:1px;background:var(--border);margin:1rem 0}.review-card>.btn-primary{min-height:52px}.review-actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.55rem}.cost-note{font-size:.61rem;color:var(--muted);line-height:1.5;text-align:center;margin:.7rem .1rem 0}.alert{padding:.7rem .8rem;border-radius:10px;font-size:.64rem;line-height:1.4;margin-bottom:.7rem}.alert a{color:inherit;font-weight:800}
.builder-json-modal{width:min(980px,calc(100vw - 2rem))}.builder-json-modal .modal-head{align-items:flex-start}.modal-sub{font-size:.63rem!important;color:var(--muted);margin-top:.18rem}.json-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin:.75rem 0}.json-state{display:inline-flex;padding:.28rem .48rem;border-radius:999px;background:var(--success-soft);color:var(--success);font-size:.58rem;font-weight:900}.json-state.warn{background:var(--warning-soft);color:var(--warning)}.json-state.bad{background:rgba(239,68,68,.1);color:var(--danger)}
.json-view{width:100%;min-height:52vh;max-height:68vh;box-sizing:border-box;resize:vertical;border:1px solid var(--border);border-radius:11px;padding:1rem;background:var(--bg);color:var(--text);font:500 .72rem/1.55 var(--mono)}
@media(max-width:1120px){.builder-layout{grid-template-columns:1fr}.review-card{position:sticky;bottom:12px;top:auto;z-index:15}.runtime-grid{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.builder-hero{align-items:flex-start;flex-direction:column}.builder-hero-actions{width:100%;justify-content:flex-start}.builder-steps{position:relative;top:auto}.choice-grid,.form-grid-2,.runtime-grid{grid-template-columns:1fr}.entity-grid{grid-template-columns:1fr}.field-main{grid-template-columns:minmax(0,1fr) 150px auto}.rel-main{grid-template-columns:1fr 1fr 1fr auto}.review-card{position:static}.builder-section-card{scroll-margin-top:90px}}
@media(max-width:620px){.builder-page{padding:1rem .75rem 3rem}.builder-hero{padding-top:.8rem}.builder-hero h1{font-size:1.8rem}.builder-hero-actions{display:grid;grid-template-columns:1fr 1fr}.builder-hero-actions>*{width:100%}.builder-steps{gap:.4rem}.builder-step{min-width:145px}.builder-step small{display:none}.section-intro-with-action{align-items:flex-start}.section-intro-with-action,.section-intro-left{gap:.65rem}.section-number{width:30px;height:30px}.entity-header{grid-template-columns:auto minmax(0,1fr) auto}.entity-meta{display:none}.field-main,.rel-main,.env-row{grid-template-columns:1fr}.field-default{min-width:0;width:100%;margin-left:0}.field-default .fi{min-width:0}.field-flags{align-items:stretch}.entity-actions{justify-content:stretch}.entity-actions .btn{flex:1}.review-actions{grid-template-columns:1fr}.review-card{padding:1rem}.json-view{min-height:45vh;font-size:.65rem}}
@media(max-width:420px){.builder-hero-actions{grid-template-columns:1fr}.builder-step{min-width:130px}.builder-section-card{padding:1rem}.subsection-card{padding:.8rem}.entity-body{padding-inline:.75rem}.entity-name-input{font-size:.76rem}}

/* Builder controls: compact, touch-friendly, responsive checkbox chips and dependency callouts. */
.inline-check input,.check-chip input{appearance:none;-webkit-appearance:none;width:17px;height:17px;min-width:17px;margin:0;border:1.5px solid var(--border-l);border-radius:5px;background:var(--surface);display:grid;place-items:center;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}
.inline-check input::before,.check-chip input::before{content:"";width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) scale(0);transition:transform .12s ease;margin-top:-2px}
.inline-check input:checked,.check-chip input:checked{background:var(--primary);border-color:var(--primary)}
.inline-check input:checked::before,.check-chip input:checked::before{transform:rotate(-45deg) scale(1)}
.inline-check input:focus-visible,.check-chip input:focus-visible{outline:3px solid var(--primary-soft);outline-offset:2px}
.check-chip{min-height:34px;padding:.38rem .55rem;border-radius:9px}
.inline-badge{display:inline-flex;align-items:center;padding:.16rem .38rem;border-radius:999px;background:var(--surface3);color:var(--muted);font-size:.52rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}
.feature-callout{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.7rem;align-items:start;margin-top:.85rem;padding:.75rem .8rem;border:1px solid color-mix(in srgb,var(--primary) 25%,var(--border));border-radius:11px;background:color-mix(in srgb,var(--primary-soft) 55%,transparent)}
.feature-callout-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--primary);color:#fff;font:900 .57rem var(--mono);letter-spacing:.03em}
.feature-callout strong{display:block;font-size:.68rem;color:var(--text)}
.feature-callout p{margin-top:.2rem;font-size:.6rem;line-height:1.45;color:var(--muted)}
.dependency-note{display:block;margin-top:.35rem;color:var(--muted);font-size:.58rem;line-height:1.45}
.dependent-card .switch input:disabled + .slider,.dependent-row .switch input:disabled + .slider{opacity:.65}
@media(max-width:560px){.switch{width:42px;min-width:42px;flex-basis:42px}.switch input:checked + .slider::before{transform:translate(18px,-50%)}.switch-sm{width:36px;min-width:36px;flex-basis:36px}.switch-sm input:checked + .slider::before{transform:translate(16px,-50%)}.toggle-row{gap:.7rem}.toggle-info{min-width:0}.feature-callout{grid-template-columns:1fr}.feature-callout-icon{width:34px;height:28px}}

/* Refined Builder selection controls: replace raw checkbox visuals with compact, tactile pills. */
.inline-check,
.check-chip{
  position:relative;
  user-select:none;
  -webkit-tap-highlight-color:transparent;
}

.inline-check{
  min-height:36px;
  padding:.42rem .7rem;
  gap:.55rem;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--surface2);
  color:var(--text2)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease,color .16s ease;
}
.inline-check:hover{
  border-color:var(--border-l);
  transform:translateY(-1px);
}
.inline-check:has(input:checked){
  border-color:color-mix(in srgb,var(--primary) 55%,var(--border));
  background:color-mix(in srgb,var(--primary-soft) 80%,var(--surface2));
  color:var(--text)!important;
  box-shadow:0 4px 14px color-mix(in srgb,var(--primary) 10%,transparent);
}
.inline-check input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  pointer-events:none;
}
.inline-check::before{
  content:"";
  width:9px;
  height:9px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--muted);
  box-shadow:0 0 0 3px var(--surface3);
  transition:background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.inline-check:has(input:checked)::before{
  background:var(--primary);
  box-shadow:0 0 0 3px var(--primary-soft);
  transform:scale(1.04);
}
.inline-check:has(input:focus-visible){
  outline:3px solid var(--primary-soft);
  outline-offset:2px;
}

.check-chip{
  min-height:36px;
  padding:.42rem .62rem;
  gap:.5rem;
  border:1px solid var(--border);
  border-radius:10px;
  background:var(--surface2);
  color:var(--muted);
  font-weight:800;
  transition:transform .16s ease,border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
.check-chip:hover{
  border-color:var(--border-l);
  color:var(--text2);
  transform:translateY(-1px);
}
.check-chip.on,
.check-chip:has(input:checked){
  border-color:color-mix(in srgb,var(--primary) 55%,var(--border));
  background:color-mix(in srgb,var(--primary-soft) 82%,var(--surface2));
  color:var(--primary-h);
  box-shadow:0 4px 14px color-mix(in srgb,var(--primary) 9%,transparent);
}
.check-chip input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  pointer-events:none;
}
.check-chip::before{
  content:"";
  width:7px;
  height:7px;
  flex:0 0 auto;
  border-radius:50%;
  background:var(--surface3);
  border:1px solid var(--border-l);
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.check-chip.on::before,
.check-chip:has(input:checked)::before{
  background:var(--primary);
  border-color:var(--primary);
  box-shadow:0 0 0 3px var(--primary-soft);
}
.check-chip:has(input:focus-visible){
  outline:3px solid var(--primary-soft);
  outline-offset:2px;
}

.entity-quick-row .inline-check{
  min-width:150px;
  justify-content:flex-start;
}

@media(max-width:620px){
  .inline-check{min-height:38px;padding:.46rem .65rem}
  .check-chip{min-height:38px}
}

.generation-download{margin-top:.8rem;padding:.85rem;border:1px solid rgba(16,185,129,.3);border-radius:var(--r-sm);background:var(--success-soft)}.generation-download p{margin:0 0 .65rem;color:var(--text2);font-size:.78rem;line-height:1.5}
