html,body{max-width:100%;overflow-x:clip}@media (max-width:760px){:where(button,[role=button],input,select,textarea,summary){min-height:44px}.character-detail-backdrop{padding-bottom:0}.character-detail{height:100dvh;max-height:100dvh}.character-detail-art{height:clamp(176px,28dvh,250px)}.character-detail-copy{padding-bottom:92px}.character-detail-actions{padding-bottom:calc(10px + env(safe-area-inset-bottom));bottom:0}.plaza-mobile-carousel,.plaza-mobile-slide{min-height:150px;max-height:190px}.studio-steps{scroll-snap-type:x proximity;grid-template-columns:repeat(4,minmax(104px,1fr));display:grid;overflow-x:auto}.studio-steps button{scroll-snap-align:start}.studio-layout[data-studio-step="1"] .form-grid>:nth-child(n+5),.studio-layout[data-studio-step="1"] .studio-model-policy,.studio-layout[data-studio-step="1"] .studio-options,.studio-layout[data-studio-step="2"] .form-grid>:nth-child(-n+5),.studio-layout[data-studio-step="2"] .studio-options,.studio-layout[data-studio-step="3"] .form-grid>:not(:nth-child(5)),.studio-layout[data-studio-step="3"] .studio-model-policy,.studio-layout[data-studio-step="3"] .studio-options,.studio-layout[data-studio-step="4"] .form-grid,.studio-layout[data-studio-step="4"] .studio-model-policy{display:none}.draft-state{flex-wrap:wrap;min-height:44px;display:flex}}.studio-steps button{color:#9a939e;text-align:left;background:0 0;border:0;border-radius:11px;grid-template-columns:30px 1fr;column-gap:5px;width:100%;min-height:58px;padding:12px;display:grid}.studio-steps button.active{color:#5e50aa;background:#f0edfb}html[data-theme=dark] .studio-steps button{color:#aaa3b3}html[data-theme=dark] .studio-steps button.active{color:#d7cdfd;background:#7b65cf38}.studio-steps button i{grid-row:1/3}.studio-steps button small{margin-top:3px}.draft-state.error{color:#b3415f}.draft-state button{min-height:32px;padding:4px 9px}
.app-dialog-backdrop{z-index:10000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#17121d9e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.app-dialog{color:#44384f;background:#fffdfa;border:1px solid #6f569233;border-radius:24px;width:min(460px,100%);animation:.18s ease-out app-dialog-in;overflow:hidden;box-shadow:0 28px 80px #16101d4d}.app-dialog>header{border-bottom:1px solid #ece6f1;align-items:center;gap:14px;padding:22px 24px 17px;display:flex}.app-dialog>header>span{color:#6c52a2;background:#f0eafd;border-radius:15px;flex:none;place-items:center;width:46px;height:46px;display:grid}.app-dialog-danger>header>span{color:#a33b4a;background:#fff0f1}.app-dialog>header svg{width:21px;height:21px}.app-dialog>header div{flex:1;min-width:0}.app-dialog>header small{color:#9b86b5;letter-spacing:.16em;font-size:10px;font-weight:850}.app-dialog>header h2{font:800 22px var(--serif);margin:4px 0 0}.app-dialog>header>button{color:#857a8d;cursor:pointer;background:0 0;border:0;border-radius:13px;place-items:center;width:44px;height:44px;display:grid}.app-dialog>header>button:hover{background:#f3eef6}.app-dialog form{padding:20px 24px 23px}.app-dialog form>p{color:#746a7c;white-space:pre-line;margin:0;font-size:14px;line-height:1.75}.app-dialog form>input{color:#41364a;width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #dcd3e5;border-radius:13px;outline:none;margin-top:17px;padding:0 14px}.app-dialog form>input:focus{border-color:#8063b7;box-shadow:0 0 0 3px #8063b721}.app-dialog footer{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.app-dialog footer button{color:#655970;cursor:pointer;min-width:104px;min-height:44px;font:750 13px var(--sans);background:#fff;border:1px solid #ded5e6;border-radius:13px;padding:0 18px}.app-dialog footer .primary{color:#fff;background:linear-gradient(135deg,#7a5db1,#594178);border-color:#6f55a4}.app-dialog-danger footer .primary{background:linear-gradient(135deg,#ad4756,#7e2938);border-color:#9e3c4b}html[data-theme=dark] .app-dialog{border-color:var(--theme-border);color:var(--theme-text);background:var(--theme-surface-raised);box-shadow:0 30px 90px #00000085}html[data-theme=dark] .app-dialog>header{border-color:var(--theme-border)}html[data-theme=dark] .app-dialog>header>span,html[data-theme=dark] .app-dialog>header>button:hover,html[data-theme=dark] .app-dialog footer button{background:var(--theme-control)}html[data-theme=dark] .app-dialog form>p{color:var(--theme-text-soft)}html[data-theme=dark] .app-dialog form>input{border-color:var(--theme-border);color:var(--theme-text);background:var(--theme-control)}html[data-theme=dark] .app-dialog footer button{border-color:var(--theme-border);color:var(--theme-text-soft)}html[data-theme=dark] .app-dialog footer .primary{color:#fff;background:linear-gradient(135deg,#8065b8,#5d4382)}@keyframes app-dialog-in{0%{opacity:0;transform:translateY(10px)scale(.98)}to{opacity:1;transform:none}}@media (max-width:600px){.app-dialog-backdrop{padding:12px 12px calc(12px + env(safe-area-inset-bottom));place-items:end center}.app-dialog{border-radius:24px}.app-dialog>header,.app-dialog form{padding:18px}.app-dialog footer button{flex:1}}@media (prefers-reduced-motion:reduce){.app-dialog{animation:none}}html[data-theme=dark] .app-dialog-danger>header>span,html[data-theme=dark] .app-dialog-danger footer .primary{border-color:var(--theme-danger-border);color:var(--theme-danger-text);background:var(--theme-danger-surface)}
.route-error-shell,.route-loading-shell{color:#44384f;background:radial-gradient(circle at 50% 20%,#f1eafd,#0000 35%),#faf8f6;place-items:center;min-height:100svh;padding:24px;display:grid}.route-error-shell section{text-align:center;background:#ffffffeb;border:1px solid #e0d9e7;border-radius:26px;width:min(540px,100%);padding:38px;box-shadow:0 24px 70px #2c20391f}.route-error-shell section>span{color:#815fba;background:#f0e9fb;border-radius:18px;place-items:center;width:58px;height:58px;margin:auto;display:grid}.route-error-shell small{color:#9c84ba;letter-spacing:.18em;margin-top:18px;font-weight:850;display:block}.route-error-shell h1{font:800 30px var(--serif);margin:10px 0}.route-error-shell p{color:#7c7183;margin:0;line-height:1.75}.route-error-shell code{color:#8b7e94;margin-top:14px;display:block}.route-error-shell div{justify-content:center;gap:10px;margin-top:24px;display:flex}.route-error-shell :where(button,a){color:#67567c;cursor:pointer;background:#fff;border:1px solid #dcd3e5;border-radius:13px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-weight:750;text-decoration:none;display:inline-flex}.route-error-shell button{color:#fff;background:#6e53a1;border-color:#6e53a1}.route-error-shell svg{width:17px}.route-loading-shell{align-content:center;gap:16px}.route-loading-shell span{border:3px solid #ded5e8;border-top-color:#7459a5;border-radius:50%;width:44px;height:44px;animation:.8s linear infinite route-spin}.route-loading-shell p{color:#7f7388;font-weight:700}@keyframes route-spin{to{transform:rotate(360deg)}}html[data-theme=dark] :where(.route-error-shell,.route-loading-shell){color:var(--theme-text);background:var(--theme-canvas)}html[data-theme=dark] .route-error-shell section{border-color:var(--theme-border);background:var(--theme-surface-raised);box-shadow:none}html[data-theme=dark] .route-error-shell p,html[data-theme=dark] .route-loading-shell p{color:var(--theme-text-soft)}html[data-theme=dark] .route-error-shell :where(button,a){border-color:var(--theme-border);color:var(--theme-text);background:var(--theme-control)}html[data-theme=dark] .route-error-shell button{color:#fff;background:#7559a6}@media (max-width:600px){.route-error-shell section{padding:28px 20px}.route-error-shell h1{font-size:26px}.route-error-shell div{flex-direction:column}.route-error-shell :where(button,a){width:100%}}@media (prefers-reduced-motion:reduce){.route-loading-shell span{animation-duration:1.8s}}
