[data-character-ref]{cursor:pointer;-webkit-text-decoration:underline dotted var(--accent);text-decoration:underline dotted var(--accent);text-underline-offset:.19em;border-radius:2px;text-decoration-thickness:1px}[data-character-ref]:hover,[data-character-ref][aria-expanded=true]{color:var(--accent)}[data-character-ref]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.character-card{z-index:100;border:1px solid var(--line-strong);background:var(--paper);width:min(280px,100vw - 16px);max-height:calc(100dvh - 16px);color:var(--ink);position:fixed;overflow:auto;box-shadow:0 8px 30px #17141120}.character-card-top{min-height:38px;font:10px var(--mono);color:var(--muted);text-transform:uppercase;letter-spacing:.09em;justify-content:space-between;align-items:center;padding:0 14px;display:flex}.character-card-top button{min-width:38px;min-height:38px;color:var(--accent);font:25px var(--serif);cursor:pointer;background:0 0;border:0}.character-card-image{object-fit:cover;width:100%;height:156px;display:block}.character-card-copy{padding:18px 20px 22px}.character-card-copy h2{font:500 13px/1.5 var(--mono);letter-spacing:.09em;text-transform:uppercase;margin:0}.character-card-copy p{font:21px/1.35 var(--serif);overflow-wrap:anywhere;margin:9px 0 0}.character-editor-mention{-webkit-text-decoration:underline dotted var(--accent);text-decoration:underline dotted var(--accent);text-underline-offset:4px;cursor:pointer}.character-config{border-top:1px solid var(--line);margin-top:24px;padding-top:24px}.character-config h2{font:400 30px var(--serif)}.character-config>p{font:13px/1.6 var(--sans);color:var(--muted);margin:10px 0 18px}.character-definition{border:1px solid var(--line);margin:12px 0;padding:12px 16px}.character-definition summary{cursor:pointer;font:22px/1.4 var(--serif)}.character-definition summary small{font:10px var(--mono);color:var(--muted);margin-left:12px}.character-fields{grid-template-columns:1fr 1fr;gap:14px 24px;padding-top:16px;display:grid}.character-fields label{min-width:0}.character-fields .character-toggle{align-items:center;gap:8px;display:flex}.character-toggle input{width:auto!important}.character-image-picker{border:1px dashed var(--line-strong);margin:12px 0;padding:14px}.character-image-picker>p{font:12px/1.5 var(--sans);color:var(--muted);margin-bottom:12px}.character-image-picker>img{object-fit:cover;width:150px;height:94px;margin-bottom:12px}.character-image-options{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.character-image-options button{width:72px;padding:3px!important}.character-image-options img{object-fit:cover;width:64px;height:48px}.character-image-picker input{max-width:100%}.character-config button,.character-occurrence button{background:var(--paper);min-height:40px;color:var(--accent);border:1px solid var(--line-strong);font:12px var(--sans);cursor:pointer;padding:7px 12px}.character-config button:disabled{opacity:.55;cursor:not-allowed}.character-config label{font:12px/1.5 var(--sans)}.character-config input,.character-config textarea{border:1px solid var(--line);background:var(--paper);width:100%;color:var(--ink);font:16px/1.4 var(--sans);margin-top:6px;padding:9px}.character-occurrence{z-index:40;border:1px solid var(--line-strong);border-left:3px solid var(--accent);background:var(--paper-deep);width:min(370px,100vw - 32px);max-height:calc(100dvh - 32px);padding:20px;position:fixed;bottom:16px;right:16px;overflow:auto;box-shadow:0 8px 30px #17141120}.character-occurrence h3{font:400 26px/1.2 var(--serif);margin-bottom:10px}.character-occurrence p{font:13px/1.6 var(--sans)}.character-occurrence textarea{width:100%;margin:10px 0}.character-occurrence-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.character-occurrences{margin:20px 0}.character-occurrences summary{cursor:pointer;font:14px var(--sans)}.character-occurrences ol{max-height:240px;padding-left:22px;overflow:auto}.character-occurrences li{font:13px var(--sans);margin-top:8px}@media (max-width:600px){.character-fields{grid-template-columns:1fr}.character-card-top button{min-width:44px;min-height:44px}.character-card-image{height:112px}.character-card-copy{padding:12px 16px 16px}.character-card-copy p{font-size:19px}.character-config button{min-height:44px}.character-definition{padding:12px}}
