:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}body *{scrollbar-width:thin}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.u-no-select,.u-no-select *{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.stage-inner{position:relative}.stage-backdrop{position:fixed;inset:0;z-index:10;pointer-events:auto}.stage-window{display:flex;flex-direction:column;border:2px solid var(--fg);box-sizing:border-box;overflow:hidden;animation:popIn .28s ease-out forwards;z-index:10;background:var(--bg);background-color:color-mix(in srgb,var(--bg) 90%,transparent);color:var(--fontMain)}.stage-window--window{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(50%,1200px);height:90%;border-radius:14px}.stage-window--modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(50dvw,960px);max-width:98dvw;height:90dvh;border-radius:14px;background:var(--bg);opacity:1}.stage-window--full{position:fixed;inset:0;border-radius:0;background:var(--bg);opacity:1}.stage-window-full-opacity{background-color:color-mix(in srgb,var(--bg) 85%,transparent)}.hero-img{z-index:1;pointer-events:none}.stage-window__header{border-bottom:2px solid var(--border);padding:10px 12px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.stage-window__header-left{justify-self:start;display:flex;gap:8px}.stage-window__header-right{justify-self:end;display:flex;gap:8px}.stage-window__title{margin:0;text-align:center;font-size:clamp(16px,2vw,22px);font-weight:800;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage-backdrop--white{background:var(--bg);opacity:.8}.stage-window__body{flex:1 1 auto;min-height:0;overflow:auto;padding:10px}.stage-window--full>.stage-window__body{padding:0}.stage-window__footer{border-top:2px solid;padding:10px 12px;display:flex;justify-content:center;align-items:center}.stage-window__overlay{position:absolute;inset:0;display:grid;place-items:center;z-index:10;background:var(--bg)}.stage-window{animation:popIn .28s ease-out forwards}.stage-window.is-leaving{animation:popOut .22s ease-in forwards}.loader{display:flex;gap:6px;align-items:center}.loader__dot{width:10px;height:10px;border:2px solid #000;border-radius:50%}.loader__dot:nth-child(2){animation-delay:.15s}.loader__dot:nth-child(3){animation-delay:.3s}.loader__label{margin-top:10px;font-weight:800;text-align:center}.stage-window[data-loading=true] .stage-window__body{opacity:0}.stage-window[data-loading=false] .stage-window__body{opacity:1;transition:opacity .16s ease-in}.auth-wrap{width:min(520px,100%);margin:0 auto;padding:10px;display:grid;place-items:center;gap:10px}.auth-wrap form{width:100%;display:grid;gap:10px}.auth-msg{margin:4px 0 8px;font-weight:700}.auth-msg--err{color:#b00020}.auth-msg--ok{color:#0a7c2f}.auth-footer{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.auth-footer .btn{border-radius:8px}.status-messages{position:absolute;top:5%;left:5%;display:flex;flex-direction:column;gap:4px;max-width:90%;z-index:20}.status-msg--err{color:#b00020;font-weight:700}.status-msg--ok{color:#0a7c2f;font-weight:700}.stage-window--full.stage-window-full-opacity.simple-fade{background-color:transparent;transition:background-color 1s ease}.stage-window--full.stage-window-full-opacity.simple-fade.is-entered{background-color:color-mix(in srgb,var(--bg) 85%,transparent)}.stage-window--full.stage-window-full-opacity.simple-fade.is-leaving{background-color:transparent;transition-duration:1s}@media (max-width: 720px){.stage-window--window{width:99%;height:99%}.stage-window--modal{width:96dvw;height:96dvh;max-width:96dvw}.stage-window__body{padding:8px 2px}}.theme-light{--bg: #ffffff;--fg: #111111;--surface: #f7f7f7;--border: #111111;--fontMain: #111111;--fontInactive: #8a8a8a;--hero-filter: none;--hero-blend: normal;--init-bg1: #fca7a7;--init-bg2: #e3c8c8;--marker-blend-mode: multiply;--glow-blue: color-mix(in oklab, #6cf 80%, transparent);--deep-red: #9b000a}.theme-dark{--bg: #0f1115;--fg: #e6e6e6;--surface: #171a21;--border: #e6e6e6;--fontMain: #ffffff;--fontInactive: #656565;--hero-filter: invert(1) brightness(.9) contrast(1.05);--hero-blend: screen;--init-bg1: #1e1e1e;--init-bg2: #ff2b2b;--marker-blend-mode: hard-light;--glow-blue: color-mix(in oklab, #6cf 80%, transparent);--deep-red: #9b000a}.dialog-root{position:relative;width:100%;height:100%;display:flex;align-items:flex-end;justify-content:center;opacity:1}.dialog-frame{position:relative;z-index:1;width:100%;max-width:1400px;padding:0;column-gap:24px;row-gap:0}.dialog-lr{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr;align-items:center}.dialog-lr .portrait,.dialog-lr .textbox{grid-row:1 / 2}.dialog-lr.slot-left .portrait{grid-column:1 / 2}.dialog-lr.slot-left .textbox{grid-column:2 / 3;justify-self:start}.dialog-lr.slot-right .portrait{grid-column:2 / 3}.dialog-lr.slot-right .textbox{grid-column:1 / 2;justify-self:end}.dialog-center{display:grid;grid-template-columns:1fr;grid-template-rows:1fr}.dialog-center .portrait{grid-column:1 / 2;grid-row:1 / 2}.dialog-center .textbox{grid-column:1 / 2;grid-row:1 / 2;justify-self:center;align-self:center}.portrait{display:flex;justify-content:center;align-items:flex-end;min-height:0}.portrait img{display:block;height:auto;width:auto;max-height:80vh;object-fit:contain;filter:drop-shadow(0 22px 40px color-mix(in srgb,var(--fg) 55%,transparent));overflow:visible}.textbox{align-self:center;min-width:320px;max-width:820px;color:var(--fg);background:var(--bg);border:2px solid var(--fg);border-radius:14px;padding:16px 18px;box-shadow:0 5px 25px var(--fg);display:flex;flex-direction:column;gap:16px;z-index:2}.textbox__header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;font-weight:700;letter-spacing:.02em}.textbox__name{white-space:nowrap}.textbox__rule{height:2px;background:var(--fg);display:block;border-radius:1px}.textbox__body{font-size:1.05rem;line-height:1.55;min-height:120px}.textbox__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:auto}.options{display:grid;grid-template-columns:1fr;gap:10px}.option .index{opacity:.6;margin-right:6px}.dialog-root{position:relative;z-index:1}.dlg-fade .portrait img,.dlg-fade .textbox{opacity:0;transform:scale(.985);filter:blur(6px) drop-shadow(0 22px 40px color-mix(in srgb,var(--fg) 0%,transparent));transition:opacity .52s ease,transform .52s ease,filter .42s ease;will-change:opacity,transform,filter}.dlg-fade.is-entered .portrait img,.dlg-fade.is-entered .textbox{opacity:1;transform:scale(1);filter:blur(0) drop-shadow(0 22px 40px color-mix(in srgb,var(--fg) 55%,transparent))}.dlg-fade.is-leaving .portrait img,.dlg-fade.is-leaving .textbox{opacity:0;transform:scale(.985);filter:blur(4px) drop-shadow(0 22px 40px color-mix(in srgb,var(--fg) 0%,transparent));transition-duration:.5s}@media (max-width: 1000px){.dialog-root{align-items:flex-start;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.dialog-frame,.dialog-lr,.dialog-lr.slot-left,.dialog-lr.slot-right,.dialog-center{display:block;width:100vw;max-width:none;padding:0}.portrait{display:block;width:100vw;margin-left:calc(50% - 50vw)}.portrait img{width:100%;height:auto;max-width:none;max-height:none;object-fit:contain}.textbox{width:calc(100vw - 24px);max-width:none;margin:12px auto 20px;justify-self:unset;align-self:unset}.textbox__body{min-height:1px}.options{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;width:100%}.options .option{width:100%;justify-self:stretch}}:root{color-scheme:light dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.shell{width:100vw;min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;background:var(--bg);color:var(--fg)}@supports (height: 100svh){.shell{min-height:100svh}}@supports (height: 100dvh){.shell{min-height:100dvh}}@supports (height: 100dvb){.shell{min-block-size:100dvb}}.topbar{position:relative;display:flex;align-items:center;justify-content:center;padding:10px 12px;border-bottom:2px solid var(--border)}.title{margin:0;font-family:Graduate,serif;font-size:clamp(18px,2.2vw,36px);font-weight:1200;text-align:center;color:var(--bg);text-shadow:2px 0 0 var(--fg),-2px 0 0 var(--fg),0 2px 0 var(--fg),0 -2px 0 var(--fg),1.5px 1.5px 0 var(--fg),-1.5px 1.5px 0 var(--fg),1.5px -1.5px 0 var(--fg),-1.5px -1.5px 0 var(--fg)}.actions{position:absolute;right:12px;display:flex;gap:10px}.btn{appearance:none;border:none;background:#0000;padding:8px 12px;font-weight:700;cursor:pointer;border-radius:0;color:var(--fg)}.stage{position:relative;overflow:hidden;height:100%;background:var(--bg)}.sketch-text{margin:0;text-align:center;line-height:1.2;font-size:clamp(18px,2.6vw,34px);font-weight:800}.bottombar{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;padding:10px 12px;gap:12px}.tab{appearance:none;padding:12px 14px;font-weight:800;letter-spacing:.5px;cursor:pointer;background:var(--bg);color:var(--fg)}.stage-inner{width:100%;height:100%;background:var(--bg);display:grid;place-items:center;border:none;padding:0}.hero-img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);filter:var(--hero-filter);mix-blend-mode:var(--hero-blend);height:66.66%;aspect-ratio:1/1;object-fit:contain;max-width:100%}.input{padding:10px 12px;border:2px solid;background:var(--bg);color:var(--fg);outline:none;width:100%}.input:focus{outline:3px solid;outline-offset:2px}.select{color:var(--fg)}.textarea{padding:10px 12px;border:2px solid;width:100%;min-height:120px;resize:vertical}.char-counter{text-align:right;font-size:12px;opacity:.8}.dev-button-stack{position:absolute;top:12px;right:12px;z-index:5;display:grid;gap:10px;justify-items:center}@media (max-width: 720px){.bottombar{gap:10px}.tab{padding:10px;font-size:14px}.actions .btn{padding:6px 10px}.hero-img{max-width:100vw}}.btn-round{border-radius:8px}.btn-effect-main{border:0;outline:3px solid var(--fg);outline-offset:0px;border-color:var(--fg);background:var(--bg);color:var(--fg);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.btn-effect-main:hover{outline:3px solid var(--fg);outline-offset:3px}.btn-effect-main:active{transform:translateY(1px)}.btn-effect-main:focus{outline:3px solid var(--fg);outline-offset:0px}.btn-effect-main:focus:hover{outline:3px solid var(--fg);outline-offset:3px}.btn.is-disabled,.btn:disabled{cursor:default!important;opacity:1;color:var(--fontInactive)!important;background:var(--fg)!important;border-color:var(--border)!important;outline-color:var(--fontInactive)!important}.btn-effect-main.is-disabled,.btn-effect-main:disabled{outline-color:#bbb!important;outline-offset:0!important;transform:none!important}.btn-effect-main.is-disabled:hover,.btn-effect-main:disabled:hover,.btn.is-disabled:hover,.btn:disabled:hover{outline-offset:0!important}.btn-effect-main.is-active{border:0;background-color:var(--fg);color:var(--bg)}.btn-effect-danger{border:0;background:#ef4444;color:#fff;outline:3px solid var(--bg);outline-offset:0;transition:outline-offset .12s ease,transform 80ms ease}.btn-effect-danger:hover{outline-offset:3px}.btn-effect-danger:active{transform:translateY(1px)}.btn-effect-danger:focus{outline:3px solid #000;outline-offset:0}.btn-effect-danger.is-disabled,.btn-effect-danger:disabled{background:#f4b4b4!important;color:#6b3333!important;outline-color:#bbb!important;outline-offset:0!important;transform:none!important;cursor:default!important}.btn-danger-ghost{background:transparent;border:0;padding:6px 10px;cursor:pointer;transition:color .12s ease}.btn-danger-ghost:hover{color:#ef4444}.btn-danger-ghost:active{transform:translateY(1px)}.btn-danger-ghost:focus-visible{outline:2px solid #000;outline-offset:2px}.btn-danger-ghost.is-disabled,.btn-danger-ghost:disabled{color:#888;cursor:default;transform:none}.effect--glow-breathe{position:relative;z-index:0;--glow-color: #4f46e5;--glow-min: .28;--glow-max: .65;--glow-blur: 14px;--glow-spread: 4px}.effect--glow-breathe:before{content:"";position:absolute;inset:calc(-1 * var(--glow-spread));border-radius:inherit;background:var(--glow-color);filter:blur(var(--glow-blur));opacity:var(--glow-min);pointer-events:none;z-index:-1;animation:effectrGlowBreath 3.6s ease-in-out infinite}@keyframes effectrGlowBreath{0%,to{opacity:var(--glow-min)}50%{opacity:var(--glow-max)}}@media (prefers-reduced-motion: reduce){.effect--glow-breathe:before{animation:none;opacity:var(--glow-max)}}
