/* Character-owned creation and rigging entry points. */
.v10-character-dialog{width:min(780px,calc(100vw - 32px));max-width:780px;max-height:calc(100dvh - 32px);overflow:auto}
.v10-add-intro{padding:calc(var(--cb-space) * 1.1) calc(var(--cb-space) * 1.4) calc(var(--cb-space) * 0.4)}
.v10-add-intro>span{display:flex;align-items:center;gap:calc(var(--cb-space) * 0.35);color:var(--cb-text);font-size:calc(11px * var(--cb-type-scale))}
.v10-add-intro p{font-size:calc(15px * var(--cb-type-scale));color:var(--cb-text);margin:12px 0}
.v10-entry-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(var(--cb-space) * 0.8);padding:calc(var(--cb-space) * 0.5) calc(var(--cb-space) * 1.4) calc(var(--cb-space) * 1.1)}
.v10-add-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:calc(var(--cb-space) * 0.65);padding:calc(var(--cb-space) * 1.25) calc(var(--cb-space) * 1.15);border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 1.33333);background:var(--cb-raised);text-align:left;color:var(--cb-text);cursor:pointer;transition:background calc(var(--cb-motion) * 1),border-color calc(var(--cb-motion) * 1),box-shadow calc(var(--cb-motion) * 1);min-height:264px}
.v10-add-card:nth-child(2){background:var(--cb-raised)}
.v10-add-card:hover{background:var(--cb-hover);border-color:var(--cb-border-strong);box-shadow:var(--cb-shadow)}
.v10-add-card:focus-visible{outline:max(3px, var(--cb-border-width)) solid var(--cb-focus);outline-offset:3px}
.v10-choice-icon{display:grid;place-items:center;width:54px;height:54px;background:var(--cb-inset);border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 1.16667);margin-bottom:3px}
.v10-add-card>strong{font-size:calc(24px * var(--cb-type-scale));letter-spacing:-.04em;font-weight:650}
.v10-add-card>span:not(.v10-choice-icon){font-size:calc(12px * var(--cb-type-scale));line-height:calc(1.7 * var(--cb-leading-scale));color:var(--cb-muted)}
.v10-add-card>div{display:flex;flex-wrap:wrap;gap:calc(var(--cb-space) * 0.3)}
.v10-add-card small{font-size:calc(10px * var(--cb-type-scale));font-weight:400;color:var(--cb-muted);border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 0.41667);padding:calc(var(--cb-space) * 0.2) calc(var(--cb-space) * 0.35);background:color-mix(in srgb, var(--cb-surface) 43.92157%, transparent)}
.v10-add-card>b{margin-top:auto;display:flex;align-items:center;justify-content:space-between;align-self:stretch;font-size:calc(12px * var(--cb-type-scale));padding-top:calc(var(--cb-space) * 0.75);border-top:var(--cb-border-width) solid var(--cb-border);font-weight:600}
.v10-entry-note{display:flex;align-items:center;gap:calc(var(--cb-space) * 0.4);margin:0 28px 25px;font-size:calc(11px * var(--cb-type-scale));line-height:calc(1.7 * var(--cb-leading-scale));color:var(--cb-muted)}
.v10-entry-note svg{flex-shrink:0}
.v10-draft-grid{display:grid;grid-template-columns:215px minmax(0,1fr);gap:calc(var(--cb-space) * 1.3)}
.v10-template-preview{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:300px;background:linear-gradient(145deg,var(--cb-preview-surface),var(--cb-preview-surface));border:var(--cb-border-width) solid var(--cb-border);border-radius:calc(var(--cb-radius) * 1);overflow:hidden;padding:calc(var(--cb-space) * 0.9) calc(var(--cb-space) * 0.5);color:var(--cb-text)}
.v10-template-preview img{display:block;object-fit:contain;width:100%;height:275px;mix-blend-mode:multiply}
.v10-template-preview span{font-size:calc(11px * var(--cb-type-scale));text-align:center;line-height:calc(1.6 * var(--cb-leading-scale));margin:10px 0 2px}
.v10-draft-fields{display:flex;flex-direction:column;gap:calc(var(--cb-space) * 0.8);justify-content:center}
.v10-draft-fields .field{margin:0}
.v10-draft-fields input,.v10-draft-fields select{width:100%}
.v10-draft-hint{display:flex;gap:calc(var(--cb-space) * 0.55);align-items:flex-start;color:var(--cb-muted);border:var(--cb-border-width) solid var(--cb-border);padding:calc(var(--cb-space) * 0.65);border-radius:calc(var(--cb-radius) * 0.66667);background:var(--cb-raised)}
.v10-draft-hint svg{flex-shrink:0;margin-top:3px}
.v10-draft-hint p{font-size:calc(12px * var(--cb-type-scale));line-height:calc(1.8 * var(--cb-leading-scale));margin:0}
.v10-draft-fields .field-note{margin:0;font-size:calc(11px * var(--cb-type-scale));line-height:calc(1.9 * var(--cb-leading-scale))}
.v10-form-footer{display:flex;align-items:center;justify-content:space-between;gap:calc(var(--cb-space) * 0.6);padding-top:calc(var(--cb-space) * 1.2);margin-top:24px;border-top:var(--cb-border-width) solid var(--cb-border)}
.v10-character-dialog [data-v10-error]{font-size:calc(12px * var(--cb-type-scale));color:var(--cb-danger-ink);padding:calc(var(--cb-space) * 0.6) 0 0}
.v10-character-context>span{display:flex;gap:calc(var(--cb-space) * 0.6);align-items:center;min-width:0}
.v10-character-context strong{font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;max-width:260px}
.v10-character-context small{font-size:calc(10px * var(--cb-type-scale));background:var(--cb-inset);color:var(--cb-muted);white-space:nowrap;padding:calc(var(--cb-space) * 0.25) calc(var(--cb-space) * 0.45);border-radius:calc(var(--cb-radius) * 0.41667)}
.v10-crumb-character{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.breadcrumb a{color:var(--cb-text)}
button.start-item{text-align:left;font:inherit;width:100%;cursor:pointer}
@media(max-width:1000px){.v10-crumb-character{max-width:130px}.v10-character-context>div{margin-left:0;flex-wrap:wrap}}
@media(max-width:650px){
  .v10-character-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}
  .v10-add-intro{padding:calc(var(--cb-space) * 0.9) calc(var(--cb-space) * 0.95) calc(var(--cb-space) * 0.2)}.v10-add-intro p{font-size:calc(13px * var(--cb-type-scale))}
  .v10-entry-choices{grid-template-columns:1fr;padding:calc(var(--cb-space) * 0.4) calc(var(--cb-space) * 0.95) calc(var(--cb-space) * 0.9);gap:calc(var(--cb-space) * 0.6)}
  .v10-add-card{display:grid;grid-template-columns:49px minmax(0,1fr);padding:calc(var(--cb-space) * 0.9);min-height:0;column-gap:calc(var(--cb-space) * 0.7);row-gap:calc(var(--cb-space) * 0.4)}
  .v10-choice-icon{grid-column:1;grid-row:1/4;width:47px;height:47px;border-radius:calc(var(--cb-radius) * 1)}
  .v10-add-card>strong{font-size:calc(21px * var(--cb-type-scale));grid-column:2}.v10-add-card>span:not(.v10-choice-icon),.v10-add-card>div{grid-column:2}
  .v10-add-card>b{grid-column:1/-1;padding-top:calc(var(--cb-space) * 0.6);margin-top:5px}
  .v10-entry-note{margin:0 19px 20px;font-size:calc(10px * var(--cb-type-scale))}
  .v10-draft-grid{grid-template-columns:1fr;gap:calc(var(--cb-space) * 1)}.v10-template-preview{min-height:0;flex-direction:row;padding:calc(var(--cb-space) * 0.4) calc(var(--cb-space) * 0.7);gap:calc(var(--cb-space) * 0.7)}
  .v10-template-preview img{width:64px;height:100px}.v10-template-preview span{font-size:calc(13px * var(--cb-type-scale))}
  .v10-form-footer{padding-top:calc(var(--cb-space) * 0.9);margin-top:18px}.v10-form-footer .btn{font-size:calc(12px * var(--cb-type-scale))}
  .v10-character-context{gap:calc(var(--cb-space) * 0.5)}.v10-character-context>span{padding-left:calc(var(--cb-space) * 0.5);gap:calc(var(--cb-space) * 0.4)}.v10-character-context strong{max-width:142px}
  .v10-crumb-character{display:none}.breadcrumb{white-space:nowrap;gap:calc(var(--cb-space) * 0.25)}.topbar-left{min-width:0}
}

/* The ready-to-play standard model comes in two explicit display states, shared
   with the space character library and the Studio picker through
   character-library-view.js (default: card).
   Card (default): a REAL multi-column grid of vertical cards with large 3:4
   covers (about 240x320 at desktop, responsive by container, never shrinking
   back to 130px thumbnails). CB36 cover facts carry over: the published covers
   are real 768x1024 (3:4) source-preview posters — object-fit contain (full
   figure, no crop/zoom), normal blending, no legacy square-image padding, and
   name/source/actions live in the text area outside the image.
   .is-list-view: the previous compact horizontal row (168px cover desktop,
   108px narrow), scoped so it only applies when the list state is explicitly
   requested. Badges and the favorite toggle sit on their own row in the text
   area in both states, so nothing overlays the figure. */
.character-standard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(240px,100%),1fr));gap:calc(var(--cb-space) * 0.9);margin-bottom:14px}
.character-standard-card{display:flex;flex-direction:column;min-width:0}
.character-standard-card .character-image{height:auto;aspect-ratio:3/4;max-height:420px}
.character-standard-card .image-open{padding:0}
.character-standard-card .character-image img{width:100%;height:100%;object-fit:contain;mix-blend-mode:normal}
.character-standard-card .card-badges{display:flex;align-items:center;flex-wrap:wrap;gap:calc(var(--cb-space) * 0.3);min-width:0}
.character-standard-card .card-type{position:static;font-size:calc(9px * var(--cb-type-scale));max-width:none;letter-spacing:.02em}
.character-standard-card .card-capabilities{font-size:calc(9px * var(--cb-type-scale));color:var(--cb-muted)}
.character-standard-card .favorite-btn{position:static;margin-left:auto;min-width:0;flex-shrink:0}
.character-standard-card .character-card-body{padding:calc(var(--cb-space) * 0.7) calc(var(--cb-space) * 0.8);min-width:0}
.character-standard-card .reference-label{margin:6px 0}
.character-standard-card .card-actions{justify-content:flex-start;gap:calc(var(--cb-space) * 0.4);flex-wrap:wrap}
.character-standard-grid.is-list-view{grid-template-columns:minmax(0,1fr);gap:calc(var(--cb-space) * 0.5)}
.character-standard-grid.is-list-view .character-standard-card{display:grid;grid-template-columns:168px minmax(0,1fr)}
.character-standard-grid.is-list-view .character-standard-card .character-image{height:224px;max-height:none;border-bottom:0}
.character-standard-grid.is-list-view .character-standard-card .character-card-body{padding:calc(var(--cb-space) * 0.6) calc(var(--cb-space) * 0.75)}
@media(max-width:650px){
  .character-standard-grid{grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:calc(var(--cb-space) * 0.6)}
  .character-standard-grid.is-list-view{grid-template-columns:minmax(0,1fr)}
  .character-standard-grid.is-list-view .character-standard-card{grid-template-columns:108px minmax(0,1fr)}
  .character-standard-grid.is-list-view .character-standard-card .character-image{height:144px}
  .character-standard-grid.is-list-view .character-standard-card .character-card-body{padding:calc(var(--cb-space) * 0.5)}
  .character-standard-grid.is-list-view .character-standard-card .card-badges{gap:calc(var(--cb-space) * 0.2)}
  .character-standard-grid.is-list-view .character-standard-card .card-type,.character-standard-grid.is-list-view .character-standard-card .card-capabilities{white-space:normal}
  .character-standard-grid.is-list-view .character-standard-card .meta-line{flex-wrap:wrap}
}
@media(max-width:430px){
  .character-standard-grid{grid-template-columns:minmax(0,1fr)}
}
