:root{--ink: #eef4fa;--ink-2: #b4c6d8;--ink-dark: #3a2408;--night: #0c1724;--night-2: #15283c;--rose: #e2b866;--cyan: #86ecff;--amber: #ffcf7a;--good: #78e6a8;--bad: #ff8a9a;--gap: 8px;--gap-2: 12px;--fs-s: 12px;--fs: 14px;--fs-l: 17px;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:#050b14;color:var(--ink);font:500 var(--fs)/1.35 "Pretendard","Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;overflow:hidden;-webkit-user-select:none;user-select:none;touch-action:manipulation}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input,textarea{font:inherit;color:inherit;-webkit-user-select:text;user-select:text}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-thumb{background:#e2b86673;border-radius:2px}::-webkit-scrollbar-track{background:transparent}.app-frame{position:relative;height:100%;width:100%;max-width:480px;margin:0 auto;overflow:hidden;background:var(--night)}@media(min-width:481px){.app-frame{box-shadow:0 0 80px #785aff40}}.cine-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;transition:filter .35s}.cine-canvas--dim{filter:brightness(.42) saturate(1.05) blur(3px)}.k-icon,.k-portrait>span,.k-style,.k-cardart{display:inline-block;background-repeat:no-repeat;flex:none}.k-panel{border:16px solid transparent;border-image:url(/broken_/broken_house/gen/art/panel.webp) 78 fill / 16px stretch;padding:2px}.k-ribbon{border:12px solid transparent;border-width:8px 30px;border-image:url(/broken_/broken_house/gen/art/ribbon.webp) 40 130 fill / 8px 30px stretch;min-width:128px;text-align:center;font-weight:800;font-size:var(--fs-l);letter-spacing:.02em;text-shadow:0 1px 3px rgba(20,0,60,.9);white-space:nowrap}.k-ribbon>span{display:block;padding:2px 6px}.k-btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;width:100%;border:14px solid transparent;border-image:url(/broken_/broken_house/gen/art/btn.webp) 70 fill / 14px stretch;color:var(--ink-dark);font-weight:900;font-size:16px;text-shadow:0 1px 0 rgba(255,255,255,.5);transition:transform .08s,filter .15s}.k-btn--secondary,.k-btn--small{border-image:url(/broken_/broken_house/gen/art/btn2.webp) 70 fill / 14px stretch;color:var(--ink);text-shadow:0 1px 2px rgba(0,0,0,.7)}.k-btn--small{min-height:38px;width:auto;border-width:10px;border-image-width:10px;font-size:13px;font-weight:700;padding:0 2px}.k-btn:active{transform:scale(.97)}.k-btn:disabled{filter:grayscale(.8) brightness(.72);cursor:default}.k-btn.is-busy{animation:k-busy 1s ease-in-out infinite;pointer-events:none}@keyframes k-busy{50%{filter:brightness(1.28) saturate(1.3)}}.k-iconbtn{position:relative;width:44px;height:44px;flex:none;display:grid;place-items:center;border:10px solid transparent;border-image:url(/broken_/broken_house/gen/art/chip.webp) 60 72 fill / 10px stretch;transition:transform .08s,filter .15s}.k-iconbtn>.k-icon{margin:-10px}.k-iconbtn:active{transform:scale(.93)}.k-iconbtn.is-active{filter:brightness(1.45) saturate(1.3)}.k-badge{position:absolute;top:-13px;right:-13px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--bad);color:#30001a;font:800 11px/18px sans-serif;text-align:center}.k-chip{display:inline-flex;align-items:center;gap:4px;min-height:28px;white-space:nowrap;border:7px solid transparent;border-width:5px 10px;border-image:url(/broken_/broken_house/gen/art/chip.webp) 60 72 fill / 5px 10px stretch;font-size:var(--fs-s);font-weight:700;font-variant-numeric:tabular-nums}button.k-chip:active{transform:scale(.96)}.k-chip.is-active{filter:brightness(1.5) saturate(1.3);color:#fff}.k-chip--good{color:var(--good)}.k-chip--bad{color:var(--bad)}.k-chip--ai{color:var(--cyan)}.k-chips-row{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.k-bar{position:relative;height:22px;border:5px solid transparent;border-image:url(/broken_/broken_house/gen/art/bar.webp) 66 76 fill / 5px 7px stretch;border-width:5px 7px;overflow:visible}.k-bar__fill{position:absolute;left:0;top:1px;bottom:1px;border-radius:3px;transition:width .35s}.k-bar__fill--opal{background:linear-gradient(90deg,var(--cyan),#d7b6ff 55%,var(--rose))}.k-bar__fill--amber{background:linear-gradient(90deg,var(--rose),var(--amber))}.k-bar>span{position:absolute;inset:-2px 0;display:grid;place-items:center;font:800 10px/1 sans-serif;text-shadow:0 1px 2px #000;font-variant-numeric:tabular-nums}.k-portrait{display:inline-block;position:relative;border-radius:50%;overflow:hidden;flex:none;background:radial-gradient(circle at 50% 30%,#5b45b8,var(--night-2));box-shadow:inset 0 0 0 2px var(--rose)}.k-portrait--ring{box-shadow:inset 0 0 0 2px var(--cyan),0 0 12px #86ecff99}.k-portrait>span{position:absolute;inset:2px;border-radius:50%}.k-row{display:flex;align-items:center;gap:4px;min-height:24px}.k-row__label{color:var(--ink-2)}.k-row__value{margin-left:auto;font-variant-numeric:tabular-nums;font-weight:800}.k-field{display:flex;align-items:center;gap:var(--gap);border:8px solid transparent;border-image:url(/broken_/broken_house/gen/art/btn2.webp) 70 fill / 8px stretch;min-height:44px;padding:0 6px}.k-field>span{color:var(--ink-2);white-space:nowrap;font-weight:700;font-size:13px}.k-field input{flex:1;min-width:0;border:0;outline:0;background:none;font-weight:800}.k-screen{position:absolute;inset:0;display:flex;flex-direction:column;gap:var(--gap-2);padding:calc(var(--safe-t) + 12px) 16px calc(var(--safe-b) + 16px)}.k-screen--bg{background:url(/broken_/broken_house/gen/art/keyart.webp) center / cover}.k-menu{justify-content:flex-end;pointer-events:none;animation:k-rise .32s ease-out both}.k-menu__account{position:absolute;top:calc(var(--safe-t) + 10px);right:10px;display:flex;gap:4px;pointer-events:auto}.k-menu__account .k-chip{background:#0a1624c7}.k-menu__buttons{display:flex;flex-direction:column;gap:var(--gap);margin-bottom:4vh;pointer-events:auto}.k-select{animation:k-rise .22s ease-out both}@keyframes k-rise{0%{opacity:0;transform:translateY(14px)}}.k-head{display:flex;align-items:center;justify-content:space-between;gap:var(--gap)}.k-head__step{width:44px;text-align:right;color:var(--ink-2);font-variant-numeric:tabular-nums;font-weight:700}.k-map{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.k-map__stage{position:relative;height:100%;max-width:100%}.k-map__stage img{width:100%;height:100%;display:block;object-fit:contain;border-radius:6px}.k-pin{position:absolute;transform:translate(-50%,-88%);display:flex;flex-direction:column;align-items:center;transition:opacity .2s}.k-pin>span:last-child{padding:1px 6px;border-radius:8px;background:#0a1624d6;box-shadow:0 0 0 1px var(--rose);font-size:10px;font-weight:800;white-space:nowrap}.k-pin.is-muted{opacity:.4}.k-pin.is-active>span:last-child{color:var(--amber)}.k-list{display:flex;flex-direction:column;gap:4px}.k-place{display:flex;align-items:center;gap:var(--gap);min-height:46px;padding:0 2px;text-align:left;border:10px solid transparent;border-image:url(/broken_/broken_house/gen/art/btn2.webp) 70 fill / 10px stretch}.k-place>span{color:var(--ink-2);font-size:var(--fs-s)}.k-place>em{margin-left:auto;font-style:normal;font-variant-numeric:tabular-nums;color:var(--cyan);font-weight:700}.k-place.is-active{filter:brightness(1.35)}.k-place.is-active>b{color:var(--amber)}.k-modes{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--gap-2)}.k-mode{flex:1;min-height:0;display:flex;flex-direction:column;gap:4px;text-align:left;padding:2px;border:16px solid transparent;border-image:url(/broken_/broken_house/gen/art/panel.webp) 78 fill / 16px stretch;transition:filter .15s}.k-mode .k-cardart{flex:1;min-height:0;width:100%;border-radius:6px}.k-mode strong{font-size:19px;font-weight:900}.k-mode:not(.is-active){filter:brightness(.62) saturate(.8)}.k-hero-main{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}.k-hero-art{flex:1;min-height:0;max-width:100%;aspect-ratio:3 / 4;margin-inline:auto;background-size:200% 200%;filter:drop-shadow(0 8px 24px rgba(160,120,255,.5))}.k-heroes .k-hero-art{background-repeat:no-repeat}.k-hero-name{display:flex;flex-direction:column;align-items:center;gap:4px}.k-hero-name strong{font-size:22px;font-weight:900;text-shadow:0 2px 6px #000}.k-hero-row{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.k-hero-tab{height:76px;border:8px solid transparent;border-image:url(/broken_/broken_house/gen/art/btn2.webp) 70 fill / 8px stretch}.k-hero-tab>span{display:block;width:100%;height:100%;background-repeat:no-repeat}.k-hero-tab.is-active{filter:brightness(1.55) saturate(1.3)}
