.character-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.character-card.character-card-simple{display:flex;flex-direction:column;min-height:0;background:#ece8de;border:1px solid var(--ink);cursor:pointer;overflow:hidden}.character-card-simple .character-image{width:100%;aspect-ratio:3/4;min-height:0;background:#d8d3c7}.character-card-simple .character-image img{width:100%;height:100%;object-fit:cover;object-position:center top}.simple-character-meta{position:relative;padding:16px 15px 15px;border-top:1px solid var(--ink);background:linear-gradient(145deg,#f2eee5,#e5e0d5)}.simple-character-meta>span{font:500 7px DM Mono;letter-spacing:.1em;color:var(--muted)}.simple-character-meta h3{font-size:21px;margin:5px 0 15px;overflow-wrap:anywhere}.simple-lock-status{display:block;width:max-content;max-width:100%;padding:7px 9px;border:1px solid #aaa499;font:700 8px DM Mono;color:var(--muted)}.simple-lock-status.locked{border-color:var(--ink);background:var(--acid);color:var(--ink)}.character-card-simple.locked{box-shadow:inset 0 -4px var(--acid)}
.dialog-header{grid-template-columns:145px minmax(0,1fr) auto}.dialog-portrait{position:relative;width:145px;height:145px;cursor:zoom-in;outline-offset:3px}.dialog-portrait i{position:absolute;left:0;right:0;bottom:0;padding:6px;background:#111d;color:var(--acid);font:500 7px DM Mono;font-style:normal;text-align:center;transform:translateY(100%);transition:.16s}.dialog-portrait:hover i,.dialog-portrait:focus i{transform:translateY(0)}.character-heading form[hidden],#characterHeadingDisplay[hidden]{display:none!important}.character-heading-actions{display:flex;gap:8px;margin-top:12px}.character-heading-actions button{height:34px;padding:0 13px;border:1px solid var(--ink);background:transparent;font:700 8px DM Mono;cursor:pointer}.character-heading-actions button:first-child:hover{background:var(--ink);color:var(--acid)}.character-heading-actions button:last-child{border-color:var(--orange);color:var(--orange)}.character-heading-actions button:last-child:hover{background:var(--orange);color:white}
.character-image-lightbox{width:min(760px,94vw);padding:18px;background:#171815;border:1px solid var(--acid);box-shadow:10px 10px 0 #0008;overflow:hidden}.character-image-lightbox .dialog-close{color:white;z-index:2}.character-image-lightbox img{display:block;width:100%;height:min(76vh,780px);object-fit:contain;background:#0c0d0b}.character-image-lightbox>div{display:flex;justify-content:space-between;align-items:center;padding:12px 2px 0;color:white}.character-image-lightbox>div strong{font-size:16px}.delete-character-dialog{width:min(510px,92vw)}.delete-character-dialog form{display:grid;gap:15px}.delete-character-dialog h2{font-size:30px;margin:0}.delete-character-dialog p{font-size:11px;line-height:1.65;color:var(--muted);margin:0}.delete-character-dialog form>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.delete-character-dialog form button{height:44px;border:1px solid var(--ink);background:transparent;font:700 8px DM Mono;cursor:pointer}.delete-character-dialog #confirmDeleteCharacter{background:var(--orange);border-color:var(--orange);color:white}
@media(max-width:1100px){.character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dialog-header{grid-template-columns:145px minmax(0,1fr)}.dialog-lock{grid-column:1/-1}}
@media(max-width:760px){.character-grid{grid-template-columns:1fr}.character-card.character-card-simple{display:grid;grid-template-columns:120px 1fr}.character-card-simple .character-image{aspect-ratio:3/4}.simple-character-meta{border-top:0;border-left:1px solid var(--ink)}.dialog-header{grid-template-columns:105px 1fr}.dialog-portrait{width:105px;height:105px}.character-heading-actions{flex-direction:column}.delete-character-dialog form>div{grid-template-columns:1fr}}
