.person-appearance{padding:20px;margin:0 0 26px;border:1px solid #b7995e4d;border-radius:15px;background:linear-gradient(145deg,#172e3980,#071922);color:#d7e2df}
.appearance-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}
.appearance-heading h3{font-size:21px;font-weight:500;line-height:1.4;margin:6px 0 0;color:#ead2a0;overflow-wrap:anywhere}
.appearance-stage{font-size:10px;color:#c5b185;border:1px solid #b7995e4d;border-radius:20px;padding:5px 10px;white-space:nowrap}
.appearance-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;list-style:none;padding:0;margin:0 0 20px}
.appearance-steps li{border-bottom:1px solid #829ca12b;padding:0 0 10px;font-size:11px;color:#8da3ad;line-height:1.5}
.appearance-steps li span{display:block;color:#72919d;font:11px Georgia,serif;letter-spacing:1px;margin-bottom:6px}
.appearance-steps li.is-current{border-color:#d6b77599;color:#e1ca97}.appearance-steps li.is-current span{color:#c5a969}
.appearance-status{display:flex;align-items:flex-start;gap:11px;padding:13px 14px;background:#112c3680;border:1px solid #7299a326;border-radius:10px;margin:0 0 14px}
.appearance-status p{font-size:12px;line-height:1.7;margin:0;color:#bdd1d5}.appearance-status small{display:block;font-size:10px;line-height:1.7;margin-top:4px;color:#85a2ae}
.appearance-status-dot{width:7px;height:7px;border-radius:50%;background:#b8a069;flex:none;margin-top:7px}.appearance-status.is-working .appearance-status-dot{background:#74bdae;animation:appearance-pulse 1.8s ease-in-out infinite}.appearance-status.is-error .appearance-status-dot{background:#cc9586}.appearance-status.is-error p{color:#e4b8aa}
.appearance-service-note{font-size:11px;line-height:1.8;color:#b6a880;margin:0 0 16px;padding-left:3px}
.appearance-current{display:grid;grid-template-columns:180px minmax(0,1fr);gap:20px;align-items:center;margin-bottom:20px}
.council-app .appearance-current-image{position:relative;width:100%;height:250px;padding:9px 9px 31px;border:1px solid #b7995e45;border-radius:10px;background:radial-gradient(ellipse at 50% 25%,#285163,#081923 76%);overflow:hidden}
.appearance-current-image img{width:100%;height:100%;object-fit:contain;object-position:center;position:relative;z-index:1}
.appearance-current-image .portrait-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:40px;color:#d4c496}
.appearance-current h4{font-size:19px;margin:8px 0;color:#e3c898;font-weight:500}.appearance-current p{font-size:12px;color:#9ab1ba;line-height:1.7}.appearance-image-kind{font-size:10px;color:#91b9bd;letter-spacing:1px}
.council-app .appearance-current button[data-search]{font-size:11px;padding:8px 12px;border-radius:7px;background:transparent;color:#cfbb89;border-color:#b69a644d}
.appearance-candidates{padding:0;margin:18px 0 0;border:0;min-width:0}.appearance-candidates legend{font-size:13px;font-weight:500;color:#d9d4be;margin-bottom:13px;padding:0;line-height:1.7}
.appearance-candidate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.appearance-reference{border:1px solid #8ca2a12b;border-radius:12px;background:#0b1d26;overflow:hidden;min-width:0;transition:border-color .2s,box-shadow .2s}.appearance-reference.is-selected{border-color:#d8ba78;box-shadow:0 0 0 1px #d8ba7859}
.council-app .appearance-reference-photo{border:0;border-bottom:1px solid #8ca2a12b;background:radial-gradient(ellipse at 50% 20%,#1d4151,#071721 85%);border-radius:0;display:flex;align-items:center;justify-content:center;position:relative;width:100%;height:230px;padding:12px 12px 32px;overflow:hidden}
.appearance-reference-photo img{width:100%;height:100%;object-fit:contain;object-position:center}.appearance-reference-photo:disabled{cursor:default;opacity:1}
.appearance-expand{position:absolute;bottom:0;left:0;right:0;background:#07151ee8;padding:8px;text-align:center;font-size:10px;color:#b2c7cd;z-index:2}.appearance-reference:not(.is-loaded) .appearance-expand{display:none}
.appearance-reference-loading{font-size:11px;line-height:1.8;color:#8babb9;padding:10px;text-align:center}.appearance-reference.is-loaded .appearance-reference-loading{display:none}
.appearance-reference-body{padding:13px}.appearance-reference h4{font-size:13px;line-height:1.5;margin:0 0 8px;font-weight:500;color:#ddd4b6;overflow-wrap:anywhere}.appearance-reference-body p{font-size:11px;line-height:1.65;margin:7px 0;color:#9bb0ba;overflow-wrap:anywhere}
.appearance-match span{font-size:9px;display:block;color:#c3ae7e;margin-bottom:3px}.appearance-reference-body a{font-size:10px;color:#b9cccd;text-underline-offset:3px;display:inline-block;margin:5px 0}.appearance-missing-source{font-size:10px;color:#a79d8d}
.appearance-confirm-person{display:flex;align-items:center;gap:8px;border-top:1px solid #a0aca52a;padding-top:11px;margin:10px 0 0;font-size:12px;color:#e0ca94;cursor:pointer}.appearance-confirm-person input{flex:none;width:16px;height:16px;accent-color:#d7b674;margin:0}.appearance-confirm-person:has(input:disabled){color:#778e99;cursor:default}
.appearance-confirm-note{font-size:10px;line-height:1.7;color:#8da6b0;margin:13px 0}
.council-app .appearance-generate{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;background:linear-gradient(110deg,#ddc48c,#c39955);border:1px solid #ead39d;border-radius:8px;color:#152730;padding:12px 15px;font-size:12px;line-height:1.5}.council-app .appearance-generate:disabled{opacity:.45;cursor:default}
.appearance-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.council-app .appearance-actions button{font-size:11px;border-radius:8px;padding:9px 13px}.council-app .appearance-actions .appearance-secondary{background:transparent;color:#95abb6;border-color:#8ba1a12e}
.appearance-footnote{border-top:1px solid #889e9a24;margin:17px 0 0;padding-top:12px;font-size:10px;line-height:1.7;color:#7f98a3}
.council-app dialog.appearance-image-viewer{width:min(720px,95vw);height:min(860px,91dvh);max-height:93dvh;display:flex;flex-direction:column;overflow:hidden;padding:0;background:#081923;border:1px solid #c1a265;border-radius:16px;box-shadow:0 25px 100px #000e}.council-app dialog.appearance-image-viewer:not([open]){display:none}
.appearance-viewer-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px 20px;border-bottom:1px solid #829b9d2b;flex:none}.appearance-viewer-head strong{font-size:17px;line-height:1.4;color:#dec593;font-weight:500;overflow-wrap:anywhere}.appearance-viewer-head small{display:block;margin-top:5px;font-size:10px;color:#8faab7}.council-app .appearance-viewer-head button{padding:0;border:0;border-radius:50%;width:34px;height:34px;flex:none;font-size:25px;color:#d6e1df;background:#243e49}
.appearance-viewer-image{flex:1;min-height:0;padding:18px;position:relative;display:flex;align-items:center;justify-content:center;background:radial-gradient(ellipse at 50% 20%,#1c4052,#07151e 80%)}.appearance-viewer-image img{position:relative;width:100%;height:100%;object-fit:contain;z-index:1}.appearance-viewer-image .portrait-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:45px;color:#b4c2c4}
.appearance-viewer-source{display:block;flex:none;text-align:center;padding:14px 20px;color:#b5caca;font-size:12px;text-underline-offset:4px;border-top:1px solid #829b9d2b}
@keyframes appearance-pulse{0%,100%{box-shadow:0 0 0 0 #74bdae40}50%{box-shadow:0 0 0 5px #74bdae09}}
@media(max-width:650px){.person-appearance{padding:14px}.appearance-heading{gap:9px;margin-bottom:17px}.appearance-heading h3{font-size:18px}.appearance-stage{font-size:8px;padding:5px 7px}.appearance-steps{gap:7px;margin-bottom:16px}.appearance-steps li{font-size:10px}.appearance-steps li span{font-size:9px}.appearance-current{grid-template-columns:103px minmax(0,1fr);gap:13px}.council-app .appearance-current-image{height:165px;padding:7px 7px 27px}.appearance-current h4{font-size:15px}.appearance-current p{font-size:10px}.appearance-image-kind{font-size:8px}.council-app .appearance-current button[data-search]{font-size:10px;padding:7px}.appearance-candidate-grid{grid-template-columns:1fr;gap:14px}.council-app .appearance-reference-photo{height:260px}.appearance-reference h4{font-size:13px}.appearance-confirm-person{font-size:12px;padding-top:12px}.appearance-reference-body{padding:14px}.appearance-status{padding:11px;gap:9px}.appearance-status p{font-size:11px}.appearance-status small{font-size:9px}.council-app .appearance-generate{font-size:11px}.appearance-viewer-head{padding:14px}.appearance-viewer-head strong{font-size:15px}.appearance-viewer-image{padding:12px}}
@media(prefers-reduced-motion:reduce){.appearance-status.is-working .appearance-status-dot{animation:none}.appearance-reference{transition:none}}
