#developer-page{padding-top:26px;max-width:1450px}.art-intro{color:var(--muted,#9996a7);line-height:1.8;margin:12px 0 24px}.art-selectors{display:flex;align-items:end;gap:16px;flex-wrap:wrap;background:#1b1c25;border:1px solid #30303e;padding:18px;border-radius:12px}.art-selectors label{display:grid;gap:8px;font-size:11px;color:#ada9bf}.art-selectors select{min-width:170px;background:#14151d;color:#efebfa;border:1px solid #3b3849;padding:10px;border-radius:6px}.art-selectors button,.art-modes button,.art-reset{padding:10px 12px;border:1px solid #3b3849;border-radius:6px}.art-selectors span{font-size:11px;color:#aaa6bb;padding-bottom:10px}#art-message{min-height:20px;font-size:13px;color:var(--accent);margin:14px 0}.art-heading{display:flex;gap:18px;align-items:baseline;flex-wrap:wrap}.art-heading h3{font-size:22px;margin:10px 0}.art-heading span{font-size:11px;color:#a6a1b8}.art-step{font-size:12px;color:var(--accent);margin:24px 0 14px;font-weight:600;letter-spacing:.04em}#art-candidates{display:flex;gap:12px;overflow:auto;padding:4px 3px 10px}.art-candidate{flex:0 0 170px;border:1px solid #363442;border-radius:9px;padding:0;overflow:hidden;text-align:left;background:#1a1b24}.art-candidate img{width:170px;height:96px;object-fit:cover;display:block}.art-candidate span{display:block;padding:10px;font-size:11px;color:#c0bbd0}.art-candidate.chosen{outline:2px solid var(--accent);outline-offset:1px}.art-edit-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}.art-step-row{display:flex;justify-content:space-between;align-items:baseline}.art-step-row a{font-size:11px;color:var(--accent)}.art-modes{display:flex;gap:8px}.art-modes button{font-size:11px;color:#bbb5cc}.art-modes button.active{background:#39304d;color:var(--accent);border-color:var(--accent)}#art-instruction{font-size:11px;line-height:1.7;color:#a9a3ba;margin:12px 0}.art-stage{position:relative;width:100%;background:repeating-conic-gradient(#242430 0 25%,#1c1c27 0 50%) 0/20px 20px;border-radius:8px;overflow:hidden}.art-stage img{display:block;width:100%;height:auto;user-select:none}#art-overlay{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}#art-ellipse{stroke:var(--accent);stroke-width:2;vector-effect:non-scaling-stroke;fill:color-mix(in srgb,var(--accent) 10.2%,transparent)}#art-eye{stroke:#fff;stroke-width:2;fill:var(--accent)}#art-eye path,#art-eye circle{vector-effect:non-scaling-stroke}.art-numbers{margin-top:14px;font-size:11px;color:#aaa5bb}.art-numbers summary{cursor:pointer}.art-numbers>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.art-numbers label{display:grid;gap:5px}.art-numbers input{min-width:0;width:100%;padding:8px;background:#16161f;border:1px solid #3a354c;border-radius:4px;color:#ece5ff}.art-preview-panel{border:1px solid #34303f;background:#1b1b25;border-radius:12px;padding:0 20px 20px;margin-top:22px;position:sticky;top:16px}.art-preview-panel>p{font-size:11px;color:#aca6bd;line-height:1.8}.art-preview-label{font-size:10px;color:#b9b2c9;margin:20px 0 10px}.art-preview-calendar{display:block!important;min-width:0!important;border:0!important;overflow:hidden;border-radius:6px}.art-preview-calendar .timeline-event.pickup-event{position:relative;display:flex;width:100%;margin:0!important;inset:auto!important;box-sizing:border-box}.art-preview-calendar .pickup-copy{display:flex;position:relative;min-width:0}.art-zoom{display:block;font-size:12px;margin-top:28px;color:#d6ccea}.art-zoom output{float:right;font-size:11px;color:#a9a1b9}.art-zoom input{display:block;width:100%;margin:16px 0;accent-color:var(--accent)}.art-save-row{display:flex;align-items:center;gap:12px;margin-top:24px}.art-save-row button{padding:12px 18px}#art-dirty{font-size:10px;color:var(--accent)}.art-reset{margin-top:12px;font-size:11px;color:#aba3be}.art-persist-note{font-size:10px!important;margin-top:18px}#developer-page [hidden]{display:none!important}#developer-page button:disabled{opacity:.45;cursor:default}@media(max-width:1050px){.art-edit-grid{grid-template-columns:1fr}.art-preview-panel{position:static}.art-stage{max-width:700px}}@media(max-width:600px){.art-selectors{display:grid;grid-template-columns:1fr}.art-selectors select{width:100%;min-width:0}.art-numbers>div{grid-template-columns:repeat(2,1fr)}.art-modes{flex-wrap:wrap}.art-preview-panel{padding:0 12px 16px}}

#developer-page .art-character-picker{margin-top:22px;min-width:0}.art-character-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.art-character-heading h3{font-size:13px;font-weight:600;margin:0;color:#d9d2e8}.art-character-heading>div{display:flex;gap:6px}.art-character-heading button{width:32px;height:30px;border:1px solid #3b354b;border-radius:6px;font-size:20px;color:#c9badf}
#art-characters{position:relative;display:flex;gap:12px;overflow-x:auto;padding:3px 3px 14px;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:var(--accent) #22212c;overscroll-behavior-x:contain}
.art-character-card{position:relative;flex:0 0 278px;display:flex;flex-direction:column;text-align:left;padding:8px;border:1px solid #3a3545;border-radius:10px;overflow:hidden;background:#181923;scroll-snap-align:start;transition:border-color .15s,background .15s}.art-character-card:hover{background:#252333;border-color:var(--accent)}.art-character-card.selected{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:0;background:#30283e}.art-character-card:focus-visible{outline:3px solid #efe4ff;outline-offset:1px}
.art-character-render{width:260px;height:56px;flex:none}.art-character-info{display:flex;gap:8px;padding:10px 2px 2px;align-items:center;min-width:0}.art-character-game{flex:none;width:22px;height:22px;object-fit:cover;border-radius:6px;border:1px solid var(--game)}.art-character-status{font-size:10px;color:#b5a9c5;line-height:1.5}.selected .art-character-status{color:var(--accent)}.art-character-selected{display:none;margin-left:auto;padding:3px 6px;border-radius:4px;background:var(--accent);color:#21182f;font-size:10px;font-weight:700}.selected .art-character-selected{display:block}
#art-game-toggles{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.art-selectors{align-items:center}.art-selectors .art-game-toggle{padding:4px;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;gap:7px;min-width:48px}.art-game-toggle img{width:38px;height:38px;object-fit:cover;border-radius:10px;filter:grayscale(.8);opacity:.4;transition:opacity .15s,filter .15s}.art-selectors .art-game-toggle span{padding:0;font-size:10px;color:#8d859c}.art-game-toggle[aria-pressed="true"] img{filter:none;opacity:1;box-shadow:0 0 0 2px var(--game)}.art-selectors .art-game-toggle[aria-pressed="true"] span{color:var(--game)}.art-game-toggle:hover img{opacity:1}.art-game-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}#art-all-games[aria-pressed="true"]{background:#3b304e;border-color:var(--accent);color:var(--accent)}.art-preview-calendar .pickup-pair{left:0!important}

.art-blur-controls{margin:20px 0 10px;padding:16px;border:1px solid #383442;border-radius:10px;min-width:0}.art-blur-controls legend{padding:0 7px;color:#dfd6f3;font-size:12px;font-weight:700}.art-blur-controls .art-zoom{margin:6px 0 0}.art-blur-controls p{font-size:11px;line-height:1.6;color:#9b93ab;margin:6px 0 16px}.art-blur-controls input[type=range]{accent-color:var(--accent);width:100%}
#art-classification{margin:16px 0;padding:14px;border:1px solid var(--line);border-radius:9px;background:var(--panel);display:flex;align-items:center;gap:12px;flex-wrap:wrap}
#art-classification[hidden]{display:none}
#art-classification label{display:flex;align-items:center;gap:10px;font-size:12px}
#art-presentation{max-width:100%;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--panel2);color:var(--text)}
#art-classification-save{padding:8px 12px;border:1px solid var(--line);border-radius:6px;color:var(--accent)}
#art-classification-reason{width:100%;font-size:11px;color:var(--muted);margin:0}

.art-character-render:has(.story-event){height:28px}

.art-character-render:has(.recurring-event){height:28px}
.art-background-controls{margin:16px 0;padding:14px;border:1px solid var(--border);border-radius:10px}
.art-background-controls select{max-width:100%;padding:7px;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:6px}
.art-background-controls p{font-size:11px;color:var(--muted);line-height:1.6}
.art-color-inputs{display:flex;gap:12px;margin:12px 0}.art-color-inputs label{display:grid;gap:5px;font-size:11px}.art-color-inputs input{width:50px;height:32px;padding:2px;border:1px solid var(--border);background:transparent;border-radius:6px}
#art-editor-body[data-display-kind="story"] .art-background-controls,#art-editor-body[data-display-kind="story"] .art-blur-controls{display:none}
.art-preview-calendar .reset-image-event{width:44px!important;height:44px!important}

.trait-icon-review{margin:20px 0;border-block:1px solid var(--line);padding:14px 0}
.trait-icon-review summary{cursor:pointer;font-weight:600}
.trait-icon-review summary span{margin-left:12px;color:var(--accent);font-size:12px}
.trait-icon-review p{font-size:12px;color:var(--muted);line-height:1.6;margin:6px 0}
.trait-review-filters{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin:16px 0;font-size:12px}
.trait-review-filters select{padding:6px}
.trait-review-list{max-height:460px;overflow:auto}
.trait-review-row{display:flex;gap:12px;padding:14px 2px;border-top:1px solid var(--line)}
.trait-review-row>div{min-width:0}
.trait-review-row strong{display:block;font-size:14px;margin:4px 0}
.trait-review-row strong span{font-size:11px;font-weight:400;color:var(--muted);margin-left:8px}
.trait-review-row small{color:var(--muted)}
.trait-review-missing{width:32px;flex:none;color:var(--muted);text-align:center;font-size:22px}
.trait-review-links{display:flex;gap:12px;flex-wrap:wrap;font-size:11px}
#character-data-review .trait-review-row>div{flex:1;overflow-wrap:anywhere}
#character-data-review input{font:inherit;min-width:0;width:180px;max-width:100%;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--text)}
#character-data-review .trait-review-row details{margin-top:10px}
#character-data-review .trait-review-row details summary{font-size:12px;color:var(--muted)}

