:root{--bg-0:#0b0e14;--bg-1:#121724;--bg-2:#1a2133;--bg-3:#232c42;--line:#2e3950;--line-soft:#212a3d;--text:#e8edf7;--text-dim:#93a0bb;--text-faint:#64708c;--red:#e4463b;--red-dark:#b32b22;--gold:#f5c542;--green:#46c46a;--blue:#4d90d5;--purple:#a06bd8;--orange:#ff9d55;--hp-high:#46c46a;--hp-mid:#f5c542;--hp-low:#e4463b;--exp:#63c8ea;--radius:12px;--radius-sm:8px;--radius-lg:18px;--shadow:0 10px 30px #00000073;--shadow-sm:0 4px 12px #00000059;--font:"Segoe UI", Roboto, "Helvetica Neue", system-ui, -apple-system, sans-serif;--font-mono:"Cascadia Mono", "SF Mono", Consolas, "Courier New", monospace;--speed:1}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:radial-gradient(1100px 700px at 15% -10%, #3a4a6e59 0%, transparent 60%), radial-gradient(900px 600px at 100% 0%, #e4463b1f 0%, transparent 55%), radial-gradient(800px 800px at 50% 120%, #4d90d51a 0%, transparent 60%), var(--bg-0);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;overflow:hidden}button,input,select{font-family:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--line);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#3d4a66}.app{flex-direction:column;height:100%;display:flex;position:relative}.app-scroll{flex:1;min-height:0;overflow:hidden auto}.screen{max-width:1180px;margin:0 auto;padding:20px 20px 40px;animation:.28s both screen-in}@keyframes screen-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}h1,h2,h3,h4{letter-spacing:-.01em;margin:0;font-weight:800}h1{font-size:clamp(28px,5vw,44px)}h2{font-size:clamp(20px,3vw,26px)}h3{font-size:16px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--text-faint);font-size:11px;font-weight:700}.dim{color:var(--text-dim)}.faint{color:var(--text-faint)}.mono{font-family:var(--font-mono)}.center{text-align:center}.panel{background:linear-gradient(180deg, var(--bg-2), var(--bg-1));border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.panel-pad{padding:16px}.panel-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.btn{--btn-bg:var(--bg-3);--btn-border:var(--line);border-radius:var(--radius-sm);border:1px solid var(--btn-border);background:var(--btn-bg);color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:700;line-height:1.2;transition:transform .12s,filter .15s,box-shadow .15s;display:inline-flex}.btn:hover:not(:disabled){filter:brightness(1.18);transform:translateY(-1px)}.btn:active:not(:disabled){transform:translateY(1px)scale(.99)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-primary{--btn-bg:linear-gradient(180deg, var(--red), var(--red-dark));--btn-border:#f06a5f;box-shadow:0 6px 18px #e4463b4d}.btn-gold{--btn-bg:linear-gradient(180deg, #f7d264, #dca01f);--btn-border:#ffe08a;color:#2a1d00;box-shadow:0 6px 18px #f5c54240}.btn-green{--btn-bg:linear-gradient(180deg, #4fd077, #2f9d52);--btn-border:#74e096;color:#06210f}.btn-ghost{--btn-bg:transparent;--btn-border:var(--line)}.btn-sm{padding:7px 12px;font-size:12.5px}.btn-lg{padding:15px 28px;font-size:16px}.btn-block{width:100%}.topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft);z-index:30;background:#0b0e14d9;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 16px;display:flex;position:relative}.topbar-brand{letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:8px;font-size:17px;font-weight:900;display:flex}.topbar-brand .dot{background:linear-gradient(180deg, var(--red) 0 50%, #f3f5f9 50% 100%);border:2px solid #0b0e14;border-radius:50%;width:14px;height:14px;box-shadow:0 0 0 1.5px #e8edf7}.topbar-stats{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chip{background:var(--bg-2);border:1px solid var(--line);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:12.5px;font-weight:700;display:inline-flex}.chip-gold{color:var(--gold);border-color:#f5c54259}.chip-warn{color:#ffb3ad;border-color:#e4463b73}.chip-act{color:var(--blue);border-color:#4d90d566}.topbar-actions{gap:8px;margin-left:auto;display:flex}.footer{border-top:1px solid var(--line-soft);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b0e1499;padding:12px 16px;font-size:12px}.footer-content{max-width:1180px;color:var(--text-faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 auto;display:flex}.footer-text{white-space:nowrap}.footer-links{white-space:nowrap;align-items:center;gap:8px;display:flex}.footer-links a{color:var(--text-dim);text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--text)}.footer-divider{color:var(--line)}.type-badge{text-transform:uppercase;letter-spacing:.06em;color:#0d1017;text-shadow:0 1px #ffffff40;border-radius:5px;padding:3px 9px;font-size:10.5px;font-weight:800;display:inline-block}.type-badge.sm{padding:2px 7px;font-size:9.5px}.bar{border:1px solid var(--line);background:#0a0d14;border-radius:999px;height:9px;position:relative;overflow:hidden}.bar-fill{border-radius:999px;height:100%;transition:width .45s cubic-bezier(.22,1,.36,1),background-color .3s}.bar.sm{height:6px}.bar.lg{height:13px}.bar-exp .bar-fill{background:linear-gradient(90deg, #3fa8d0, var(--exp))}.sprite{image-rendering:pixelated;image-rendering:crisp-edges;filter:drop-shadow(0 6px 8px #00000080);display:block}.sprite-fainted{filter:grayscale()brightness(.5);opacity:.55}.item-icon{object-fit:contain;filter:drop-shadow(0 2px 3px #0000008c)}.trainer-sprite{object-fit:contain;flex-shrink:0}.status-chip{letter-spacing:.05em;color:#0d1017;border-radius:4px;padding:1px 6px;font-size:9.5px;font-weight:900;display:inline-block}.toasts{z-index:200;pointer-events:none;flex-direction:column;gap:8px;width:min(92vw,460px);display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%)}.toast{border-radius:var(--radius-sm);background:var(--bg-3);border:1px solid var(--line);box-shadow:var(--shadow);text-align:center;padding:10px 16px;font-size:13.5px;font-weight:600;animation:.25s both toast-in}.toast-good{color:#9df0b6;border-color:#46c46a80}.toast-bad{color:#ffb3ad;border-color:#e4463b80}@keyframes toast-in{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:none}}.overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:150;background:#06080dd1;justify-content:center;align-items:center;padding:18px;animation:.2s both fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal{background:linear-gradient(180deg, var(--bg-2), var(--bg-1));border:1px solid var(--line);border-radius:var(--radius-lg);width:min(560px,96vw);max-height:88vh;box-shadow:var(--shadow);animation:.26s cubic-bezier(.2,1.1,.4,1) both modal-in;overflow-y:auto}@keyframes modal-in{0%{opacity:0;transform:translateY(24px)scale(.94)}to{opacity:1;transform:none}}.row{align-items:center;gap:10px;display:flex}.col{flex-direction:column;gap:10px;display:flex}.wrap{flex-wrap:wrap}.spread{justify-content:space-between}.grow{flex:1;min-width:0}.gap-sm{gap:6px}.gap-lg{gap:18px}.mt{margin-top:14px}.mt-lg{margin-top:24px}.hidden{display:none}.nowrap{white-space:nowrap}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}.map-screen{flex-direction:column;gap:14px;display:flex}.act-banner{border-radius:var(--radius);border:1px solid var(--line);background:linear-gradient(120deg, var(--bg-2), var(--bg-1) 60%);padding:16px 18px;position:relative;overflow:hidden}.act-banner:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#f5c54214);position:absolute;inset:0}.act-banner .act-num{color:#ffffff12;font-size:46px;font-weight:900;line-height:1;position:absolute;top:6px;right:18px}.act-progress{gap:4px;margin-top:10px;display:flex}.act-progress i{background:var(--line);border-radius:2px;flex:1;height:4px}.act-progress i.done{background:var(--gold)}.act-progress i.cur{background:var(--red);box-shadow:0 0 8px #e4463b99}.map-wrap{border-radius:var(--radius);border:1px solid var(--line);overscroll-behavior:contain;background:linear-gradient(#1a2133e6,#0b0e14f2),repeating-linear-gradient(0deg,#0000 0 23px,#ffffff05 23px 24px),repeating-linear-gradient(90deg,#0000 0 23px,#ffffff05 23px 24px);max-height:min(58vh,560px);padding:8px 0;position:relative;overflow-y:auto}.map-canvas{width:100%;min-height:340px;position:relative}.map-edges{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.map-edge{fill:none;stroke:#33405c;stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:6 7}.map-edge.active{stroke:var(--gold);stroke-width:3px;filter:drop-shadow(0 0 5px #f5c5428c);animation:1.1s linear infinite dash-flow}.map-edge.done{stroke:#4a5a7d;stroke-dasharray:none}@keyframes dash-flow{to{stroke-dashoffset:-26px}}.map-node{cursor:default;color:var(--text-faint);background:0 0;border:none;flex-direction:column;align-items:center;gap:5px;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.map-node .bubble{background:var(--bg-2);border:2px solid var(--line);border-radius:14px;place-items:center;width:46px;height:46px;font-size:21px;transition:transform .16s,box-shadow .2s,border-color .2s;display:grid;position:relative}.map-node .label{letter-spacing:.05em;text-transform:uppercase;opacity:.65;white-space:nowrap;text-overflow:ellipsis;text-shadow:0 0 3px #0b0e14,0 0 3px #0b0e14,1px 1px 2px #0b0e14,-1px -1px 2px #0b0e14,1px -1px 2px #0b0e14,-1px 1px 2px #0b0e14;max-width:112px;font-size:10.5px;font-weight:800;overflow:hidden}.node-icon{filter:drop-shadow(0 2px 3px #00000080);width:27px;height:27px;display:block}.node-icon svg{width:100%;height:100%;display:block}.map-node .node-portrait{image-rendering:auto;filter:drop-shadow(0 2px 3px #0000008c)}.map-node.locked .bubble{filter:grayscale(.7)brightness(.62)}.map-node.visited .bubble{filter:grayscale(.4)brightness(.7);background:#151b29;border-color:#0000}.map-node.visited:after{content:"✓";color:var(--green);font-size:13px;font-weight:900;position:absolute;top:-4px;right:2px}.map-node.current .bubble{border-color:var(--blue);box-shadow:0 0 0 4px #4d90d52e}.map-node.available{cursor:pointer;color:var(--text)}.map-node.available .bubble{border-color:var(--node-color,var(--gold));background:linear-gradient(180deg, var(--bg-3), var(--bg-2));animation:1.9s ease-in-out infinite node-pulse;box-shadow:0 0 0 4px #f5c5421f,0 6px 16px #00000080}.map-node.available:hover .bubble{transform:translateY(-3px)scale(1.09);box-shadow:0 0 0 6px #f5c5422e,0 10px 22px #0000008c}.map-node.available .label{opacity:1;color:var(--node-color,var(--gold))}.map-node.boss .bubble{border-radius:17px;width:58px;height:58px;font-size:27px}@keyframes node-pulse{0%,to{box-shadow:0 0 0 4px #f5c5421a,0 6px 16px #00000080}50%{box-shadow:0 0 0 8px #f5c5420d,0 6px 16px #00000080}}.map-tooltip{background:var(--bg-3);border:1px solid var(--line);border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;box-shadow:var(--shadow-sm);z-index:10;padding:6px 10px;font-size:11.5px;position:absolute;transform:translate(-50%,8px)}.team-strip{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:10px;display:grid}.team-mini{border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid var(--line);cursor:pointer;text-align:left;color:inherit;align-items:center;gap:9px;width:100%;padding:9px 11px;transition:border-color .15s,transform .15s;display:flex}.team-mini:hover{border-color:var(--blue);transform:translateY(-2px)}.team-mini.fainted{opacity:.55}.team-mini img{object-fit:contain;width:42px;height:42px}.team-mini .nm{font-size:12.5px;font-weight:800}.team-mini .lv{color:var(--text-faint);font-size:10.5px;font-weight:700}@media (width<=640px){.map-node .bubble{border-radius:12px;width:40px;height:40px;font-size:18px}.map-node.boss .bubble{width:50px;height:50px;font-size:23px}.map-node .label{max-width:66px;font-size:9px}.map-node .node-portrait{width:32px;height:32px}.map-node .node-icon{width:23px;height:23px}.map-node.boss .node-portrait{width:38px;height:38px}.team-strip{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))}.screen{padding:14px 12px 32px}}.battle-screen{flex-direction:column;gap:12px;max-width:1180px;margin:0 auto;padding:14px 16px 26px;display:flex}.battle-stage{border-radius:var(--radius-lg);border:1px solid var(--line);min-height:330px;box-shadow:inset 0 0 90px #00000080, var(--shadow);background:linear-gradient(#2c3e63 0%,#4a6a8f 42%,#6f9a6c 42%,#3f6b45 100%);position:relative;overflow:hidden}.battle-stage:before{content:"";pointer-events:none;background:radial-gradient(120% 60% at 50% 110%,#ffffff17,#0000 60%),repeating-linear-gradient(0deg,#0000000f 0 2px,#0000 2px 4px);position:absolute;inset:0}.battle-stage.shake{animation:.42s cubic-bezier(.36,.07,.19,.97) stage-shake}@keyframes stage-shake{10%,90%{transform:translate(-2px,1px)}20%,80%{transform:translate(5px,-2px)}30%,50%,70%{transform:translate(-8px,2px)}40%,60%{transform:translate(8px,-1px)}}.battle-stage.flash:after{content:"";pointer-events:none;background:#fff;animation:.28s ease-out stage-flash;position:absolute;inset:0}@keyframes stage-flash{0%{opacity:.85}to{opacity:0}}.field{flex-direction:column;align-items:center;display:flex;position:absolute}.field-enemy{align-items:center;top:12%;right:7%}.trainer-on-field{z-index:5;animation:.5s cubic-bezier(.2,1.1,.35,1) both trainer-in}.trainer-on-field .trainer-sprite{filter:drop-shadow(0 6px 8px #0000008c)}@keyframes trainer-in{0%{opacity:0;transform:translate(70px)}to{opacity:1;transform:none}}.field-player{bottom:6%;left:7%}.platform{filter:blur(1px);pointer-events:none;background:radial-gradient(#ffffff38,#00000029 70%,#0000);border-radius:50%;position:absolute;bottom:6px;left:50%;transform:translate(-50%)}.field-enemy .platform{width:170px;height:42px}.field-player .platform{width:210px;height:52px}.battler{transition:transform .2s,opacity .4s,filter .2s;position:relative}.battler img{display:block}.battler-enemy img{object-fit:contain;width:132px;height:132px}.battler-player img{object-fit:contain;width:172px;height:172px}.battler.enter-enemy{animation:.5s cubic-bezier(.2,1.1,.35,1) both enter-right}.battler.enter-player{animation:.5s cubic-bezier(.2,1.1,.35,1) both enter-left}@keyframes enter-right{0%{opacity:0;transform:translate(90px)scale(.7)}to{opacity:1;transform:none}}@keyframes enter-left{0%{opacity:0;transform:translate(-90px)scale(.7)}to{opacity:1;transform:none}}.battler.hurt{animation:.42s steps(2,end) 3 hurt-blink}@keyframes hurt-blink{0%,49%{opacity:1;filter:none}50%,to{opacity:.25;filter:brightness(2.6)saturate(0)}}.battler.attack-player{animation:.34s ease-in-out lunge-right}.battler.attack-enemy{animation:.34s ease-in-out lunge-left}@keyframes lunge-right{50%{transform:translate(34px,-22px)scale(1.05)}}@keyframes lunge-left{50%{transform:translate(-34px,22px)scale(1.05)}}.battler.fainting{animation:.75s ease-in forwards faint-drop}@keyframes faint-drop{to{opacity:0;filter:grayscale()brightness(.4);transform:translateY(70px)scale(.86)}}.battler.charging{animation:.8s ease-in-out infinite alternate charge-glow}@keyframes charge-glow{to{filter:drop-shadow(0 0 14px #ffffffd9)}}.battler[data-status=brn] img{filter:drop-shadow(0 0 6px #ff7828cc)}.battler[data-status=par] img{filter:drop-shadow(0 0 6px #f5d23cd9)}.battler[data-status=psn] img,.battler[data-status=tox] img{filter:drop-shadow(0 0 6px #b45adcd9)}.battler[data-status=frz] img{filter:drop-shadow(0 0 7px #8cdcf0e6)brightness(1.1)}.battler[data-status=slp] img{filter:brightness(.78)}.hp-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);min-width:218px;box-shadow:var(--shadow-sm);background:#0c1018e0;border:1px solid #ffffff24;border-radius:10px;padding:8px 11px;position:absolute}.hp-card-enemy{top:14px;left:14px}.hp-card-player{min-width:244px;bottom:14px;right:14px}.hp-card .nm-row{align-items:center;gap:7px;margin-bottom:5px;display:flex}.hp-card .nm{font-size:13.5px;font-weight:900}.hp-card .lv{color:var(--text-dim);margin-left:auto;font-size:11.5px;font-weight:800}.hp-card .hp-num{color:var(--text-dim);text-align:right;font-size:11px;font-weight:700;font-family:var(--font-mono);margin-top:4px}.dmg-float{color:#fff;text-shadow:0 2px #000,0 0 12px #ff503ce6;pointer-events:none;z-index:12;font-size:22px;font-weight:900;animation:.95s ease-out forwards dmg-rise;position:absolute}.dmg-float.crit{color:#ffd84d;font-size:27px}.dmg-float.heal{color:#7dffa8;text-shadow:0 2px #000,0 0 12px #46dc78e6}@keyframes dmg-rise{0%{opacity:0;transform:translateY(6px)scale(.7)}22%{opacity:1;transform:translateY(-8px)scale(1.15)}to{opacity:0;transform:translateY(-52px)scale(1)}}.eff-banner{letter-spacing:.05em;text-transform:uppercase;color:#fff;text-shadow:0 3px #000,0 0 22px #ffffff80;pointer-events:none;z-index:14;white-space:nowrap;font-size:clamp(17px,3.4vw,27px);font-weight:900;animation:.85s ease-out forwards eff-pop;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.eff-banner.super{color:#ffe066}.eff-banner.weak{color:#9fb6d8}.eff-banner.crit{color:#ff7a5e}@keyframes eff-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.5)rotate(-6deg)}25%{opacity:1;transform:translate(-50%,-50%)scale(1.12)rotate(2deg)}70%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-60%)scale(.95)}}.fx-layer{pointer-events:none;z-index:11;position:absolute;inset:0;overflow:hidden}.fx{pointer-events:none;position:absolute;transform:translate(-50%,-50%)}.fx-particle{border-radius:50%;animation:.62s ease-out forwards fx-burst;position:absolute}@keyframes fx-burst{0%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(var(--dx), var(--dy)) scale(.2)}}.fx-fire .fx-particle{filter:blur(.4px);background:radial-gradient(circle,#fff2a8 0%,#ff9f2e 40%,#e0350d 75%,#0000 78%);animation:.7s ease-out forwards fx-fire}@keyframes fx-fire{0%{opacity:1;transform:translate(0)scale(.6)}55%{opacity:1;transform:translate(calc(var(--dx) * .6), calc(var(--dy) * .6 - 10px)) scale(1.35)}to{opacity:0;transform:translate(var(--dx), calc(var(--dy) - 30px)) scale(.4)}}.fx-water .fx-particle{background:radial-gradient(circle at 34% 30%,#dff4ff 0%,#57b6f5 45%,#1e6fd0 80%,#0000 82%);animation:.68s cubic-bezier(.4,0,.7,1) forwards fx-water}@keyframes fx-water{0%{opacity:1;transform:translate(0)scale(.5)}to{opacity:0;transform:translate(var(--dx), calc(var(--dy) + 26px)) scale(1)}}.fx-electric .bolt{transform-origin:top;background:linear-gradient(#fffbe0,#ffe14d 45%,#ffb400);width:3px;animation:.42s steps(3,end) forwards fx-bolt;position:absolute;box-shadow:0 0 12px #ffe14d,0 0 26px #ffe14db3}@keyframes fx-bolt{0%{opacity:0;transform:scaleY(.1)}30%{opacity:1;transform:scaleY(1)}to{opacity:0;transform:scaleY(1)}}.fx-grass .leaf{background:linear-gradient(90deg,#9be36a,#3f9a34);border-radius:50% 8%;width:15px;height:9px;animation:.78s ease-out forwards fx-leaf;position:absolute}@keyframes fx-leaf{0%{opacity:1;transform:translate(0)rotate(0)scale(.7)}to{opacity:0;transform:translate(var(--dx), var(--dy)) rotate(540deg) scale(1.1)}}.fx-ice .fx-particle{background:linear-gradient(140deg,#fff,#a9e8f7 45%,#4fb3d9);border-radius:2px;animation:.7s ease-out forwards fx-ice}@keyframes fx-ice{0%{opacity:1;transform:translate(0)rotate(0)scale(.5)}to{opacity:0;transform:translate(var(--dx), var(--dy)) rotate(240deg) scale(1.2)}}.fx-psychic .ring{border:3px solid #f97176e6;border-radius:50%;animation:.85s ease-out forwards fx-ring;position:absolute;box-shadow:0 0 22px #f97176b3,inset 0 0 18px #f9717680}@keyframes fx-ring{0%{opacity:0;transform:translate(-50%,-50%)scale(.15)rotate(0)}35%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.5)rotate(180deg)}}.fx-poison .fx-particle{background:radial-gradient(circle,#e3b3ff 0%,#c46ee8 35%,#9333c4 70%,#0000 70%);animation:.85s ease-out forwards fx-bubble}@keyframes fx-bubble{0%{opacity:1;transform:translate(0)scale(.4)}to{opacity:0;transform:translate(var(--dx), calc(var(--dy) - 34px)) scale(1.3)}}.fx-rock .rock,.fx-ground .rock{clip-path:polygon(50% 0%,100% 35%,82% 100%,18% 100%,0% 35%);background:linear-gradient(150deg,#d8c69a,#8a7345 60%,#5e4f2f);width:17px;height:15px;animation:.66s ease-in forwards fx-rock;position:absolute}@keyframes fx-rock{0%{opacity:1;transform:translate(0)rotate(0)}to{opacity:0;transform:translate(var(--dx), var(--dy)) rotate(300deg)}}.fx-impact .slash{background:linear-gradient(90deg,#0000,#fff,#0000);width:96px;height:6px;animation:.34s ease-out forwards fx-slash;position:absolute;box-shadow:0 0 16px #ffffffe6}@keyframes fx-slash{0%{opacity:0;transform:translate(-50%, -50%) rotate(var(--rot)) scaleX(.2)}40%{opacity:1;transform:translate(-50%, -50%) rotate(var(--rot)) scaleX(1.15)}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--rot)) scaleX(1.3)}}.fx-ghost .fx-particle{background:radial-gradient(circle,#c8beffe6,#5269ad99 60%,#0000 70%);animation:.9s ease-in-out forwards fx-ghost}@keyframes fx-ghost{0%{opacity:.9;transform:translate(0)scale(.6)}to{opacity:0;transform:translate(var(--dx), calc(var(--dy) - 20px)) scale(1.6)}}.fx-dragon .ring{border:4px solid #5a8cffe6;border-radius:50%;animation:.8s ease-out forwards fx-ring;position:absolute;box-shadow:0 0 26px #5a8cffcc}.fx-status .aura{border:3px dashed #ffffffbf;border-radius:50%;animation:.9s ease-out forwards fx-aura;position:absolute}@keyframes fx-aura{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}40%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.4)rotate(200deg)}}.battle-lower{grid-template-columns:1.6fr 1fr;gap:12px;display:grid}.battle-log{scroll-behavior:smooth;height:172px;padding:12px 14px;font-size:13.5px;line-height:1.6;overflow-y:auto}.battle-log p{margin:0 0 3px;animation:.2s both log-in}.battle-log p.hl{color:var(--gold);font-weight:700}.battle-log p.dmg{color:#ffb3ad}.battle-log p.good{color:#9df0b6}.battle-log p.turn{color:var(--text-faint);text-transform:uppercase;letter-spacing:.12em;border-top:1px solid var(--line-soft);margin-top:8px;padding-top:6px;font-size:11px}@keyframes log-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:none}}.battle-side{flex-direction:column;gap:10px;display:flex}.party-dots{gap:5px;display:flex}.party-dot{background:var(--green);border:2px solid #ffffff59;border-radius:50%;width:11px;height:11px}.party-dot.hurt{background:var(--gold)}.party-dot.out{background:#55607a}.move-preview{border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid var(--line);align-items:center;gap:8px;padding:9px 12px;font-size:12.5px;display:flex}@media (width<=800px){.battle-lower{grid-template-columns:1fr}.trainer-on-field .trainer-sprite{width:112px;height:112px}.battle-stage{min-height:276px}.battler-enemy img{width:104px;height:104px}.battler-player img{width:128px;height:128px}.hp-card{min-width:168px;padding:6px 9px}.hp-card-player{min-width:180px}.hp-card .nm{font-size:12px}.field-enemy .platform{width:128px;height:32px}.field-player .platform{width:156px;height:40px}}.title-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:22px;min-height:100%;padding:40px 20px;display:flex}.title-logo{letter-spacing:-.045em;background:linear-gradient(#fff 10%,#ffd24a 55%,#e4463b 100%);color:#0000;filter:drop-shadow(0 6px #00000059);-webkit-background-clip:text;background-clip:text;font-size:clamp(44px,11vw,96px);font-weight:900;line-height:.92;animation:.7s cubic-bezier(.2,1.2,.35,1) both logo-in}@keyframes logo-in{0%{opacity:0;transform:translateY(-26px)scale(.9)}to{opacity:1;transform:none}}.title-sub{color:var(--text-dim);max-width:520px;font-size:clamp(13px,2.4vw,16px);line-height:1.6}.title-menu{flex-direction:column;gap:10px;width:min(320px,90vw);display:flex}.title-marquee{opacity:.5;flex-wrap:wrap;justify-content:center;gap:10px;max-width:560px;margin-top:8px;display:flex}.title-marquee img{object-fit:contain;width:46px;height:46px;animation:4s ease-in-out infinite float-mon}@keyframes float-mon{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.starter-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-top:20px;display:grid}.starter-card{border-radius:var(--radius-lg);border:2px solid var(--line);background:linear-gradient(180deg, var(--bg-2), var(--bg-1));cursor:pointer;text-align:center;color:inherit;flex-direction:column;align-items:center;gap:6px;padding:18px;transition:transform .2s cubic-bezier(.2,1,.4,1),border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.starter-card:before{content:"";background:radial-gradient(circle, var(--glow,#ffffff26), transparent 65%);opacity:.55;height:180px;transition:opacity .25s;position:absolute;inset:-40% -40% auto}.starter-card:hover,.starter-card.sel{border-color:var(--accent,var(--gold));transform:translateY(-6px);box-shadow:0 16px 40px #0000008c}.starter-card:hover:before,.starter-card.sel:before{opacity:1}.starter-card img{object-fit:contain;width:128px;height:128px;animation:3.4s ease-in-out infinite float-mon;position:relative}.starter-moves{flex-wrap:wrap;justify-content:center;gap:5px;margin-top:6px;display:flex}.stat-rows{flex-direction:column;gap:4px;width:100%;margin-top:8px;display:flex}.stat-row{align-items:center;gap:8px;font-size:11.5px;display:flex}.stat-row .k{width:74px;color:var(--text-faint);text-align:left;font-weight:700}.stat-row .v{text-align:right;width:30px;font-weight:800;font-family:var(--font-mono)}.stat-row .bar{flex:1;height:6px}.team-layout{grid-template-columns:320px 1fr;align-items:start;gap:14px;display:grid}.team-list{flex-direction:column;gap:8px;display:flex}.team-card{border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid var(--line);cursor:pointer;text-align:left;width:100%;color:inherit;align-items:center;gap:10px;padding:10px;transition:border-color .15s,background .15s,transform .15s;display:flex}.team-card:hover{border-color:var(--blue);transform:translate(3px)}.team-card.sel{border-color:var(--gold);background:var(--bg-3)}.team-card.fainted img{filter:grayscale()brightness(.55)}.team-card img{object-fit:contain;flex-shrink:0;width:52px;height:52px}.detail-head{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.detail-head img{object-fit:contain;width:116px;height:116px}.move-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;display:grid}.move-card{border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid var(--line);border-left:3px solid var(--mv,var(--line));padding:9px 11px}.move-card .mv-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.move-card .mv-name{font-size:13px;font-weight:800}.move-card .mv-meta{color:var(--text-faint);font-size:10.5px;font-family:var(--font-mono);margin-top:3px}.move-card .mv-desc{color:var(--text-dim);margin-top:4px;font-size:10.5px;line-height:1.45}.move-card.pick{cursor:pointer}.move-card.pick:hover{border-color:var(--red);background:var(--bg-3)}.pill-tabs{background:var(--bg-1);border:1px solid var(--line);border-radius:999px;gap:6px;padding:4px;display:flex}.pill-tab{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:999px;flex:1;padding:7px 12px;font-size:12.5px;font-weight:800;transition:all .15s}.pill-tab.on{background:var(--bg-3);color:var(--text);box-shadow:var(--shadow-sm)}.type-matrix{grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:5px;display:grid}.type-cell{text-align:center;border-radius:6px;padding:4px;font-size:9.5px;font-weight:800}.type-cell .m{margin-top:1px;font-size:11px;display:block}.held-slot{border-radius:var(--radius-sm);background:var(--bg-1);border:1px dashed var(--line);align-items:center;gap:10px;padding:9px 11px;display:flex}.item-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px;display:grid}.item-card{border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid var(--line);text-align:left;color:inherit;align-items:center;gap:10px;width:100%;padding:10px 12px;transition:border-color .15s,transform .15s;display:flex}.item-card.clickable{cursor:pointer}.item-card.clickable:hover{border-color:var(--gold);transform:translateY(-2px)}.item-card .ic{flex-shrink:0;place-items:center;width:32px;display:grid}.item-card .nm{font-size:13px;font-weight:800}.item-card .ds{color:var(--text-faint);font-size:10.5px;line-height:1.4}.item-card .ct{font-weight:900;font-family:var(--font-mono);color:var(--gold);margin-left:auto}.event-screen{max-width:760px;margin:0 auto}.event-hero{text-align:center;border-radius:var(--radius-lg);border:1px solid var(--line);background:linear-gradient(180deg, var(--bg-2), var(--bg-1));padding:26px 20px;position:relative;overflow:hidden}.event-hero>.item-icon{filter:drop-shadow(0 6px 12px #0000008c);margin:0 auto 10px;animation:3.6s ease-in-out infinite float-mon;display:block}.event-hero .ic{filter:drop-shadow(0 6px 12px #00000080);margin-bottom:10px;font-size:58px;animation:3.6s ease-in-out infinite float-mon;display:block}.event-hero .ic .node-icon{filter:none;margin:0 auto}.event-text{color:var(--text-dim);margin-top:8px;font-size:14.5px;line-height:1.7}.event-options{flex-direction:column;gap:9px;margin-top:16px;display:flex}.event-option{border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid var(--line);cursor:pointer;text-align:left;color:inherit;align-items:center;gap:12px;width:100%;padding:14px 16px;transition:all .16s;display:flex}.event-option:hover:not(:disabled){border-color:var(--gold);background:var(--bg-3);transform:translate(4px)}.event-option:disabled{opacity:.4;cursor:not-allowed}.event-option .lb{font-size:14px;font-weight:800}.event-option .hn{color:var(--text-faint);margin-top:2px;font-size:11.5px}.event-option .arrow{color:var(--text-faint);margin-left:auto;font-size:18px}.outcome-box{border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-2);margin-top:14px;padding:16px;animation:.3s cubic-bezier(.2,1.1,.4,1) both modal-in}.outcome-box.good{border-color:#46c46a73}.outcome-box.bad{border-color:#e4463b73}.reward-list{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.reward-pill{background:var(--bg-3);border:1px solid var(--line);border-radius:999px;padding:5px 11px;font-size:12px;font-weight:700}.wild-stage{border-radius:var(--radius-lg);border:1px solid var(--line);background:linear-gradient(#223a52 0%,#40668a 55%,#3f6b45 55%,#2c4d32 100%);place-items:center;min-height:260px;display:grid;position:relative;overflow:hidden}.wild-stage img{object-fit:contain;width:150px;height:150px;animation:3s ease-in-out infinite float-mon}.wild-stage.stage-suck img{animation:.46s ease-in forwards mon-suck}@keyframes mon-suck{0%{opacity:1;filter:none;transform:scale(1)}40%{opacity:.95;filter:brightness(3)saturate(.2);transform:scale(.45)}to{opacity:0;filter:brightness(4);transform:scale(.05)}}.wild-stage.stage-burst img{animation:.62s cubic-bezier(.2,1.5,.4,1) forwards mon-burst}@keyframes mon-burst{0%{opacity:0;filter:brightness(4);transform:scale(.05)}30%{opacity:1;filter:brightness(2.2)saturate(.5);transform:scale(1.18)}to{opacity:1;filter:none;transform:scale(1)}}.ball-throw,.ball-liegt{transform-origin:50% 90%;margin:-30px 0 0 -30px;line-height:0;position:absolute;top:50%;left:50%}.ball-throw{animation:.75s cubic-bezier(.35,0,.6,1) forwards ball-arc}@keyframes ball-arc{0%{transform:translate(max(-180px,-40vw),86px)rotate(0)}50%{transform:translate(max(-88px,-20vw),-62px)rotate(380deg)}to{transform:translate(0)rotate(720deg)}}.ball-wobble{animation:wobble .56s ease-in-out var(--wobbles,1)}@keyframes wobble{0%,to{transform:rotate(0)}25%{transform:rotate(-22deg)}75%{transform:rotate(22deg)}}.ball-burst{animation:.42s ease-out forwards ball-burst}@keyframes ball-burst{0%{opacity:1;filter:none;transform:scale(1)}30%{opacity:1;filter:brightness(3);transform:scale(1.5)}to{opacity:0;filter:brightness(4);transform:scale(2.2)}}.ball-click{animation:.7s ease-out forwards ball-click}@keyframes ball-click{0%{filter:none;transform:scale(1)translateY(0)}25%{filter:brightness(2.4);transform:scale(1.14)translateY(-4px)}55%{filter:brightness(1.2);transform:scale(1)translateY(0)}to{filter:none;transform:scale(1)translateY(0)}}.ball-click:before,.ball-click:after{content:"";background:var(--gold);opacity:0;border-radius:50%;width:8px;height:8px;animation:.7s ease-out .2s forwards catch-spark;position:absolute;top:50%;left:50%}.ball-click:after{animation-name:catch-spark-links}@keyframes catch-spark{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}35%{opacity:1;transform:translate(20px,-30px)scale(1)}to{opacity:0;transform:translate(34px,-46px)scale(.3)}}@keyframes catch-spark-links{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}35%{opacity:1;transform:translate(-30px,-26px)scale(1)}to{opacity:0;transform:translate(-46px,-42px)scale(.3)}}.badge-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.badge-card{border-radius:var(--radius);text-align:center;border:1px solid var(--line);background:var(--bg-2);padding:16px 12px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.badge-card.earned{border-color:var(--bc);box-shadow:0 0 0 1px var(--bc), 0 8px 24px #0006}.badge-card.earned:hover{transform:translateY(-4px)}.badge-card.locked{opacity:.42}.badge-medal{background:radial-gradient(circle at 35% 30%, #ffffff80, var(--bc) 60%);width:62px;height:62px;box-shadow:0 0 22px var(--bc);border:3px solid #ffffff47;border-radius:50%;place-items:center;margin:0 auto 10px;font-size:27px;display:grid}.badge-card.locked .badge-medal{background:var(--bg-3);box-shadow:none;filter:grayscale()}.badge-award{text-align:center;place-items:center;gap:14px;padding:30px 22px;display:grid}.badge-award .badge-medal{width:108px;height:108px;font-size:48px;animation:.9s cubic-bezier(.2,1.4,.4,1) both badge-drop}@keyframes badge-drop{0%{opacity:0;transform:translateY(-70px)scale(.3)rotate(-40deg)}60%{opacity:1;transform:translateY(6px)scale(1.16)rotate(8deg)}to{opacity:1;transform:none}}.badge-rays{pointer-events:none;background:conic-gradient(from 0deg, transparent 0 12deg, #ffdc7824 12deg 24deg);animation:14s linear infinite spin;position:absolute;inset:0}@keyframes spin{to{transform:rotate(360deg)}}.levelup-box{text-align:center;padding:22px}.levelup-title{color:var(--gold);text-shadow:0 0 24px #f5c5428c;font-size:26px;font-weight:900;animation:.45s cubic-bezier(.2,1.5,.4,1) both pop-in}@keyframes pop-in{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:none}}.stat-diff{grid-template-columns:repeat(auto-fit,minmax(94px,1fr));gap:8px;margin-top:16px;display:grid}.stat-diff div{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px}.stat-diff .k{color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;font-size:10px}.stat-diff .v{font-size:17px;font-weight:900}.stat-diff .up{color:var(--green);font-size:11.5px;font-weight:800}.evo-stage{place-items:center;min-height:260px;padding:34px 20px;display:grid;position:relative;overflow:hidden}.evo-sprite{object-fit:contain;z-index:2;width:150px;height:150px;position:relative}.evo-sprite.morphing{animation:.62s ease-in-out infinite alternate evo-morph}@keyframes evo-morph{0%{filter:brightness()contrast();transform:scale(1)}to{filter:brightness(12)saturate(0)contrast(2);transform:scale(1.18)}}.evo-sprite.done{animation:.85s cubic-bezier(.2,1.3,.4,1) both evo-reveal}@keyframes evo-reveal{0%{filter:brightness(12)saturate(0);transform:scale(1.35)}to{filter:none;transform:scale(1)}}.evo-rays{background:conic-gradient(from 0deg, transparent 0 8deg, #ffffff29 8deg 16deg);z-index:1;width:420px;height:420px;animation:6s linear infinite spin;position:absolute}.shop-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;display:grid}.shop-card{border-radius:var(--radius-sm);background:var(--bg-2);border:1px solid var(--line);flex-direction:column;gap:6px;padding:12px;display:flex}.shop-card .price{color:var(--gold);font-weight:900;font-family:var(--font-mono)}.shop-learners{color:#9df0b6;background:#46c46a1f;border:1px solid #46c46a4d;border-radius:6px;padding:5px 7px;font-size:10.5px;line-height:1.4}.shop-learners.none{color:#ffb3ad;background:#e4463b1a;border-color:#e4463b47}.end-screen{text-align:center;max-width:640px;margin:0 auto;padding:50px 20px}.end-title{letter-spacing:-.03em;font-size:clamp(32px,8vw,62px);font-weight:900}.end-title.lose{color:var(--red);text-shadow:0 0 40px #e4463b80}.end-title.win{background:linear-gradient(180deg, #fff, var(--gold));color:#0000;-webkit-background-clip:text;background-clip:text}.end-stats{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:24px 0;display:grid}.end-stats div{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.end-stats .v{font-size:24px;font-weight:900}.end-stats .k{color:var(--text-faint);text-transform:uppercase;letter-spacing:.1em;font-size:11px}@media (width<=860px){.team-layout{grid-template-columns:1fr}}@media (width<=640px){.starter-card img{width:104px;height:104px}.detail-head img{width:92px;height:92px}.item-grid,.move-grid{grid-template-columns:1fr}.topbar{gap:8px;padding:8px 10px}.topbar-brand{font-size:15px}.chip{padding:4px 9px;font-size:11.5px}}.pick-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.pick-card{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--bg-2);color:inherit;font:inherit;text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:2px;padding:34px 12px 14px;transition:transform .14s,border-color .14s,box-shadow .14s;display:flex;position:relative}.pick-card:hover,.pick-card:focus-visible{border-color:var(--blue);transform:translateY(-3px);box-shadow:0 10px 22px #00000059}.pick-card img{object-fit:contain;width:88px;height:88px}.pick-card .nm{margin-top:4px;font-weight:700}.pick-card .lv{color:var(--text-dim);font-size:11.5px}.pick-card .chance{color:var(--text-dim);margin-top:8px;font-size:11.5px;line-height:1.35}.pick-card .rarity{border-radius:var(--radius-lg) var(--radius-lg) 0 0;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);background:#ffffff0f;padding:5px 0;font-size:10.5px;font-weight:700;position:absolute;inset:0 0 auto}.pick-card.tier-1 .rarity{color:#8fc4ff;background:#58a6ff29}.pick-card.tier-2 .rarity{color:#c9a4ff;background:#b27aff29}.pick-card.tier-3 .rarity{color:var(--gold);background:#ffc4542e}.pick-card.slot-supply .rarity{color:#7ddc9b;background:#46c46a29}.pick-card.slot-lasting .rarity{color:var(--gold);background:#ffc4542e}.pick-card.slot-situational .rarity{color:#c9a4ff;background:#a06bd82e}.pick-card .ds{color:var(--text-dim);margin-top:6px;font-size:11.5px;line-height:1.4}@media (width<=640px){.pick-grid{grid-template-columns:1fr}.pick-card{text-align:left;align-items:flex-start;min-height:104px;padding:32px 14px 12px 100px}.pick-card img{width:76px;height:76px;position:absolute;top:34px;left:12px}.pick-card .rarity{text-align:left;padding-left:14px}.pick-card .row{justify-content:flex-start!important}.pick-card .chance{margin-top:6px}}.sprite-shiny{filter:drop-shadow(0 6px 8px #00000080)drop-shadow(0 0 5px #ffd666d9);animation:2.4s ease-in-out infinite shiny-glimmer}@keyframes shiny-glimmer{0%,to{filter:drop-shadow(0 6px 8px #00000080)drop-shadow(0 0 4px #ffd6668c)}50%{filter:drop-shadow(0 6px 8px #00000080)drop-shadow(0 0 11px #ffe796)}}.shiny-star{color:var(--gold);text-shadow:0 0 6px #ffd666b3;margin-left:4px}.shiny-tag{vertical-align:middle;color:#2a1e00;background:linear-gradient(180deg, #ffe08a, var(--gold));border-radius:999px;margin-left:8px;padding:2px 8px;font-size:11px;font-weight:700}@media (prefers-reduced-motion:reduce){.sprite-shiny{animation:none}}.godmode-bar{border-color:color-mix(in srgb, var(--gold) 45%, var(--line));background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--gold) 7%, transparent) 0 10px, transparent 10px 20px), linear-gradient(180deg, var(--bg-2), var(--bg-1));margin-top:10px;padding:12px 14px}.godmode-bar .eyebrow{color:var(--gold)}.godmode-bar .btn:disabled{opacity:.4}.badge-tm{text-align:left;background:var(--bg-2);border:1px solid var(--line-soft);border-radius:var(--radius-sm);align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.badge-tm-text{flex-direction:column;gap:2px;min-width:0;display:flex}.badge-tm-text strong{color:var(--gold);font-size:14px}.badge-tm-text .dim{font-size:12px;line-height:1.35}.shop-tabs{justify-content:center;gap:8px;display:flex}.tm-learners{color:var(--green);margin-top:4px;font-size:10.5px;line-height:1.4}.tm-learners.none{color:var(--text-faint)}.tm-fit{font-family:var(--font-mono);letter-spacing:.04em;white-space:nowrap;border:1px solid;border-radius:999px;padding:1px 6px;font-size:10px}.tm-fit.learnable{color:var(--green)}.tm-fit.known{color:var(--blue)}.tm-fit.incompatible{color:var(--text-faint)}.team-card.tm-nope{opacity:.55}.save-code{width:100%;font-family:var(--font-mono);color:var(--text-dim);background:var(--bg-2);border:1px solid var(--line-soft);border-radius:var(--radius-sm);resize:vertical;word-break:break-all;margin-top:8px;padding:8px 10px;font-size:11px;line-height:1.45}.save-code:focus{outline:2px solid var(--blue);outline-offset:1px}
