@import"https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;500;600;700;800;900&display=swap";:root{font-family:Noto Sans KR,sans-serif;color:#f1e8d5;background:#100f12;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#33302d 0,transparent 65%)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible{outline:3px solid #fff0a5;outline-offset:3px}button{touch-action:manipulation}.game-shell{width:min(1600px,100%);height:100dvh;margin:auto;padding:10px 24px 14px;display:grid;grid-template-rows:54px minmax(0,1fr) clamp(228px,32dvh,290px) 72px;gap:12px}.game-header{display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:26px;font-weight:900;letter-spacing:-1.5px;color:#f4dc9f;text-decoration:none;line-height:1.1}.brand-mark{font-size:40px;color:#dca950;text-shadow:0 0 22px #d49f4540}.brand small{display:block;color:#c6bda9;font-size:12px;font-weight:500;letter-spacing:0;margin-top:5px}.practice-label{color:#f0e7d3;font-weight:700;font-size:16px}.practice-label span{color:#aaa18f;font-size:13px;font-weight:400;margin-left:12px}.game-header nav{display:flex;gap:8px}.game-header button{background:#252324;border:1px solid #625747;border-radius:6px;padding:8px 16px;color:#ded4c0;font-size:14px}.game-header button:hover{background:#3c352b}.arena{display:grid;grid-template-rows:42px minmax(0,1fr) 44px;min-height:0;border:1px solid #756040;border-radius:10px;overflow:hidden;background:#202027;box-shadow:0 8px 24px #0005,inset 0 0 0 3px #ffffff04}.arena-top{display:flex;align-items:center;justify-content:space-between;gap:15px;background:linear-gradient(90deg,#312b2a,#272329 50%,#312b2a);padding:0 20px;border-bottom:1px solid #8a704332;z-index:1}.live-badge{display:flex;align-items:center;gap:8px;color:#ff9290;font-size:13px;font-weight:800;letter-spacing:1px}.live-badge i{width:7px;height:7px;border-radius:50%;background:#f57873;box-shadow:0 0 10px #ff685c66}.live-badge>span{color:#c3b5a6;font-size:12px;font-weight:400;letter-spacing:0;margin-left:8px}.arena-top h1{font-size:15px;color:#d9cbb4;font-weight:500;margin:0;display:flex;align-items:center;gap:12px}.arena-top h1 b{font-size:27px;color:#f4d68f;font-variant-numeric:tabular-nums}.action-count{display:flex;align-items:center;gap:10px;font-size:14px;color:#d9cbb4}.action-count b{color:#f4d68f;font-size:15px}.action-pips{display:flex;gap:6px}.action-pips i{width:12px;height:16px;border:1px solid #80704e;border-radius:2px;transform:rotate(12deg);background:#17191f}.action-pips i.available{background:#e5bd69;border-color:#ffdd96;box-shadow:0 0 9px #e8b44544}.stage{position:relative;min-height:0;background:radial-gradient(ellipse at 50% 70%,#47413c,#1c2028 80%);isolation:isolate}.battlefield{position:absolute;inset:0;min-height:0;overflow:hidden}.battlefield canvas{display:block;image-rendering:pixelated}.stage-caption{position:absolute;top:14px;left:20px;font-size:13px;color:#d0c4ac;text-shadow:0 2px 3px #000}.stage-caption span{display:block;color:#a69f91;margin-top:4px;font-size:12px}.combat-info{position:absolute;bottom:12px;left:20px;right:20px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px;pointer-events:none}.player-hud,.enemy{background:linear-gradient(145deg,#28272cf2,#181b22f5);border:1px solid #75654c;border-radius:7px;box-shadow:0 3px 10px #0006;padding:10px 12px;pointer-events:auto}.player-hud{width:235px;border-color:#8b9a7f}.hud-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.hud-title strong{font-size:17px;font-weight:700}.hud-title>span{font-size:11px;color:#d5c28d}.hud-title .armor{font-size:13px;color:#b6d4e7}.health-track{height:22px;background:#121416;position:relative;border-radius:3px;overflow:hidden;border:1px solid #ffffff13}.health-track>div{height:100%;background:linear-gradient(90deg,#8b3136,#d96961);transition:width .2s}.player-hud .health-track>div{background:linear-gradient(90deg,#3a6a57,#85b77c)}.health-track b{position:absolute;inset:0;display:grid;grid-auto-flow:column;justify-content:center;align-items:center;gap:4px;font-size:14px;line-height:1;color:#fff9e8;text-shadow:0 1px 3px #000;font-variant-numeric:tabular-nums}.health-track b span{font-size:12px}.enemy-list{display:flex;gap:12px}.enemy{width:195px;text-align:left;color:#e9dfca;transition:border-color .15s,background .15s}.enemy.selected{border:2px solid #f1cb73;padding:9px 11px;box-shadow:0 0 0 3px #e7bb4920,0 4px 16px #0008}.enemy:hover:not(:disabled){background:#3d362b}.enemy .intent{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#c0b6a4;margin-top:7px}.intent strong{font-size:14px;color:#f0b09a}.enemy.defeated{filter:grayscale(1);opacity:.65}.enemy:disabled:not(.defeated){cursor:default}.commentary{display:flex;align-items:center;gap:12px;padding:0 16px;background:linear-gradient(90deg,#40322d,#28252a);border-top:1px solid #78603f55;min-width:0}.mc-avatar{display:grid;place-items:center;font-family:Georgia,serif;font-weight:700;font-size:19px;width:28px;height:28px;border:1px solid #aa8261;background:#594355;border-radius:50%;color:#f6dfc0;flex-shrink:0}.commentary b{font-size:14px;color:#f3ce87;white-space:nowrap}.commentary>span[aria-live]{font-size:14px;color:#f0e4cd;line-height:1.5}.broadcast-mark{margin-left:auto;font-size:10px;letter-spacing:2px;color:#ad8b76;white-space:nowrap}.battle-result{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:#141319dd;z-index:2}.battle-result>span{font-size:38px;color:#eccb7e}.battle-result strong{font-size:36px;color:#f5d991}.battle-result p{font-size:16px;margin:6px 0 12px}.battle-result button{background:#e2b967;border:1px solid #ffe7aa;padding:10px 26px;border-radius:5px;font-size:16px;font-weight:700;color:#342615}.battle-result.lost strong{color:#e3a39c}.hand{display:grid;grid-template-rows:34px minmax(0,1fr);min-height:0;gap:5px}.section-title{display:flex;align-items:center;gap:20px;padding:0 3px}.section-title h2{font-size:18px;margin:0;color:#f2dfb6;display:flex;align-items:center;gap:10px}.section-title h2>span{color:#f5cd7c;font-size:18px}.section-title small{font-size:14px;color:#a59d8d;font-weight:400}.section-title p{font-size:13px;color:#bbb2a2;margin:0}.section-title p span{color:#76664d;margin:0 6px}.exhaust-count{font-size:13px;color:#bbb2a2;margin-left:auto}.exhaust-count b{font-weight:500;color:#dfcdb1;margin-left:5px}.cards{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;min-height:0;align-items:stretch;padding:2px 0 0}.card{--accent:#9c4932;--edge:#b37b45;position:relative;min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(24px,1fr) 35px auto 20px;gap:3px;padding:10px 10px 6px;background:linear-gradient(125deg,#f3e7cd,#ddcbaa);border:2px solid var(--edge);border-radius:9px;color:#30271f;box-shadow:inset 0 0 0 3px #fff8,0 4px #554333,0 8px 14px #0005;text-align:center;transition:transform .15s,box-shadow .15s}.card.guard{--accent:#3a5e79;--edge:#71909a;background:linear-gradient(125deg,#e9eadc,#cbd5cd)}.card.heal{--accent:#356345;--edge:#7d9771;background:linear-gradient(125deg,#eef0d5,#ccd6af)}.card.recover{--accent:#6c477c;--edge:#a18ba9;background:linear-gradient(125deg,#eee3e6,#d3c1d5)}.card:hover:not(:disabled){transform:translateY(-5px);box-shadow:inset 0 0 0 3px #fff8,0 4px #6c5434,0 0 0 2px #f5ce7e,0 10px 20px #0008;z-index:1}.card:active:not(:disabled){transform:translateY(0)}.card-heading>span{display:block;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:2px;margin-bottom:3px}.card-heading>strong{font-size:17px;line-height:1.3;letter-spacing:-.6px;white-space:nowrap}.card-art{display:block;width:100%;height:100%;min-height:0;color:var(--accent);align-self:center}.card-effect{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--accent);line-height:1}.card-effect>strong{font-size:29px;font-weight:900}.card-effect>strong>small{font-size:16px;margin-left:2px}.card-effect>span{font-size:16px;font-weight:700}.card p{margin:0;font-size:14px;line-height:1.35;word-break:keep-all;min-height:38px;display:grid;place-items:center}.card-state{align-self:end;border-top:1px solid #74604a38;padding-top:4px;font-size:11px;line-height:1.3;color:#695844}.card.exhausted{background:linear-gradient(125deg,#a79f90,#8e8678);border-color:#716c61;color:#292820;box-shadow:inset 0 0 0 3px #e2d6bd22,0 4px #494338;--accent:#514f48}.card.exhausted .card-art{opacity:.45;filter:grayscale(1)}.card.exhausted .card-state{color:#302e28;font-weight:700}.card:disabled:not(.exhausted){filter:saturate(.55)}.controls{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(90deg,#2e2b29,#252326);border:1px solid #65523b;border-radius:9px;padding:9px 12px 9px 18px;box-shadow:inset 0 1px #f3d7920c}.turn-guide strong{font-size:16px;font-weight:500}.turn-guide strong span{color:#f1cd81;font-weight:700;margin-left:8px}.turn-guide p{font-size:13px;color:#bcb1a1;margin:5px 0 0}.turn-buttons{display:flex;gap:12px;align-self:stretch}.turn-buttons button{display:flex;align-items:center;justify-content:center;gap:14px;border-radius:6px;min-width:170px;padding:6px 22px;font-size:18px;font-weight:800}.recall-button{background:linear-gradient(#3b424b,#272f3a);border:1px solid #91a1ac;color:#ebefdd;box-shadow:0 3px #141b22}.recall-button>span:first-child{font-size:30px;font-weight:400}.recall-button small{display:block;font-size:11px;font-weight:500;color:#c0ccd2;margin-top:3px}.end-turn{background:linear-gradient(#f1d18c,#d8a84e);border:1px solid #ffe3a5;box-shadow:0 3px #8d6329;color:#392815}.end-turn>span{font-size:25px;font-weight:400;margin-left:25px}.turn-buttons button:hover:not(:disabled){filter:brightness(1.13)}.turn-buttons button:disabled{background:#363436;border-color:#605a51;box-shadow:none;color:#a59d90}.turn-buttons button:disabled small{color:#a59d90}.log-dialog{width:min(650px,92vw);max-height:80dvh;border:1px solid #b28c51;border-radius:10px;background:#282629;color:#eee1c9;padding:24px;overflow:auto;box-shadow:0 20px 100px #000a}.log-dialog::backdrop{background:#0b0c12cc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.log-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.log-heading h2{font-size:23px;margin:0}.log-heading button{background:#423b31;border:1px solid #937c59;color:#f2dfb6;padding:9px 16px;border-radius:5px;font-size:14px}.save-status{color:#b8b09f;font-size:13px}.log-dialog ol{font-size:16px;line-height:1.8;padding-left:25px}.log-dialog li{margin:10px 0}@media(max-width:1200px){.game-shell{padding:8px 16px 12px;gap:10px;grid-template-rows:48px minmax(0,1fr) clamp(220px,32dvh,270px) 70px}.card{padding:8px 6px 6px}.cards{gap:7px}.card-heading>strong{font-size:15px}.card p{font-size:13px}.practice-label span{display:none}.enemy{width:180px}.arena-top{padding:0 14px}.turn-buttons button{min-width:150px;padding:6px 16px}}@media(max-width:950px){.game-shell{grid-template-rows:46px minmax(0,1fr) 288px 64px;gap:8px;padding:7px 12px 12px}.cards{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:7px}.hand{grid-template-rows:28px minmax(0,1fr);gap:4px}.card{grid-template-columns:48px 1fr;grid-template-rows:28px 32px minmax(0,1fr);padding:6px 8px;gap:0 5px;text-align:left;box-shadow:inset 0 0 0 2px #fff6,0 2px #554333}.card-heading{grid-column:1/-1;display:flex;align-items:center;gap:6px}.card-heading>span{margin:0;font-size:10px;letter-spacing:0}.card-heading>strong{font-size:15px}.card-art{grid-row:2/4;grid-column:1}.card-effect{justify-content:flex-start;gap:4px}.card-effect>strong{font-size:23px}.card-effect>span{font-size:13px}.card p{font-size:12px;min-height:0;display:block;align-self:center;line-height:1.3}.card-state,.section-title p{display:none}.section-title h2{font-size:16px}.brand{font-size:23px}.brand small{font-size:11px}.practice-label{font-size:14px}.game-header nav{gap:5px}.game-header button{font-size:12px;padding:7px 10px}.arena{grid-template-rows:36px minmax(0,1fr) 40px}.live-badge>span{display:none}.combat-info{left:12px;right:12px;bottom:10px;gap:10px}.player-hud{width:180px}.enemy{width:155px;padding:7px 9px}.enemy.selected{padding:6px 8px}.hud-title{gap:5px;margin-bottom:5px}.hud-title strong{font-size:15px}.hud-title>span{font-size:10px}.enemy-list{gap:7px}.enemy .intent{font-size:11px}.intent strong{font-size:12px}.turn-guide strong{font-size:14px}.turn-guide p{font-size:12px;max-width:290px}.turn-buttons{gap:8px}.turn-buttons button{min-width:140px;font-size:16px;padding:6px 12px}.end-turn>span{margin-left:10px}.commentary>span[aria-live]{font-size:13px}.broadcast-mark,.stage-caption{display:none}}@media(max-width:600px){.game-shell{padding:6px 8px 10px;gap:7px;grid-template-rows:43px minmax(0,1fr) 298px 64px}.brand{font-size:22px;gap:5px}.brand-mark{font-size:30px}.brand small,.practice-label{display:none}.game-header{gap:8px}.game-header button{font-size:12px;padding:7px 9px}.arena{grid-template-rows:34px minmax(0,1fr) 48px}.arena-top{padding:0 10px;gap:8px}.arena-top h1{font-size:13px;gap:6px}.arena-top h1 b{font-size:23px}.action-count{gap:5px;font-size:12px}.action-count b{font-size:12px}.action-pips{display:none}.live-badge{font-size:11px}.combat-info{left:8px;right:8px;bottom:8px;gap:6px}.player-hud{width:105px;padding:7px;flex-shrink:0}.player-hud .hud-title{flex-wrap:wrap;gap:2px}.hud-title strong{font-size:13px}.hud-title .armor{font-size:11px}.enemy-list{gap:5px;flex:1;justify-content:flex-end}.enemy{width:calc(50% - 3px);min-width:0;padding:6px}.enemy.selected{padding:5px}.enemy .hud-title{flex-direction:column;align-items:flex-start;gap:1px}.enemy .hud-title>span{font-size:9px}.health-track{height:20px}.health-track b{font-size:12px}.health-track b span{font-size:10px}.enemy .intent{display:block;font-size:10px;line-height:1.2;margin-top:4px}.intent strong{display:block;font-size:12px;margin-top:2px}.commentary{padding:4px 8px;gap:7px}.commentary b{font-size:12px}.mc-avatar{display:none}.commentary>span[aria-live]{font-size:12px}.hand{grid-template-rows:27px minmax(0,1fr)}.cards{gap:6px}.card{padding:5px;grid-template-columns:1fr;grid-template-rows:34px 35px minmax(0,1fr);text-align:center;gap:1px}.card-heading{display:block}.card-heading>span{font-size:9px}.card-heading>strong{font-size:12px;letter-spacing:-.5px;white-space:normal;word-break:keep-all}.card-art{display:none}.card-effect{justify-content:center}.card-effect>strong{font-size:25px}.card-effect>span{font-size:12px}.card p{font-size:12px;word-break:normal;line-height:1.35}.section-title h2{font-size:15px}.section-title h2>span{font-size:16px}.exhaust-count{font-size:12px}.controls{padding:7px 8px}.turn-guide{display:none}.turn-buttons{width:100%;gap:8px}.turn-buttons button{min-width:0;flex:1;font-size:17px}.recall-button small{font-size:10px}.turn-buttons .recall-button{flex:1.4;gap:8px}.battle-result strong{font-size:28px}.battle-result p{font-size:13px}}@media(max-height:650px)and (min-width:951px){.game-shell{padding-top:4px;gap:7px;grid-template-rows:42px minmax(0,1fr) 205px 62px}.brand{font-size:23px}.brand small{display:none}.arena{grid-template-rows:34px minmax(0,1fr) 36px}.arena-top h1 b{font-size:23px}.stage-caption{display:none}.combat-info{bottom:8px}.player-hud{padding:7px 10px}.enemy{padding:6px 10px}.enemy.selected{padding:5px 9px}.card{grid-template-rows:auto minmax(18px,1fr) 29px auto 17px;padding-top:6px}.card-effect>strong{font-size:25px}.card-effect>span{font-size:14px}.card p{font-size:13px;min-height:34px}.card-state{font-size:10px}.card-heading>strong{font-size:15px}.section-title p{font-size:12px}.turn-buttons button{font-size:16px}.commentary>span[aria-live]{font-size:13px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}.card:hover:not(:disabled){transform:none}}
