.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:9999;color:#111827}.loading-screen-content{display:flex;flex-direction:column;align-items:center;gap:16px;animation:zoom-in .35s ease-out forwards}.loading-title{font-size:clamp(2rem,5vw,3.5rem);font-weight:600;letter-spacing:.22em;text-indent:.22em}.loading-status{min-width:7.5em;font-size:clamp(1rem,2vw,1.25rem);font-weight:500;letter-spacing:0;color:#4b5563;text-align:left}@keyframes zoom-in{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#ffffffdb,#f8fafceb 36%,#ecfdf5ad),linear-gradient(45deg,#ffecf4f2,#eff6ffb8 52%,#fff7ed9e);color:#172033}#root{width:100%;min-height:100vh}button{font-family:inherit}button:not(:disabled),.btn-hover:not(:disabled){cursor:pointer}.btn-hover:not(:disabled):hover,.action-button:not(:disabled):hover,.icon-button:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 10px 22px #565e7d24}.btn-hover:not(.action-button):not(:disabled):hover{background:#ffffffe6!important}button:not(:disabled):active,.btn-hover:not(:disabled):active,.action-button:not(:disabled):active,.icon-button:not(:disabled):active{transform:translateY(0);box-shadow:0 1px 2px #0000000f}button{transition:all .15s ease}input{font-family:inherit}.app-shell{min-height:100vh;color:#172033;background:linear-gradient(120deg,#ffffffc2,#ffffff4d),linear-gradient(155deg,#fff0f6b3,#f0f9ffb8 48%,#ecfdf5c2)}.page-wrap{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:28px 0 40px}.glass-panel{background:#ffffffad;border:1px solid rgba(255,255,255,.76);border-radius:8px;box-shadow:0 18px 50px #565e7d29;-webkit-backdrop-filter:blur(22px) saturate(1.12);backdrop-filter:blur(22px) saturate(1.12)}.soft-card{background:#ffffffb8;border:1px solid rgba(203,213,225,.62);border-radius:8px;box-shadow:0 14px 36px #565e7d1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.hero-panel{position:relative;overflow:hidden;padding:30px 34px}.hero-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,rgba(255,92,142,.18),transparent 38%),linear-gradient(280deg,rgba(32,201,151,.18),transparent 42%);pointer-events:none}.hero-panel>*{position:relative}.eyebrow{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;border:1px solid rgba(100,116,139,.16);background:#ffffff8a;color:#64748b;font-size:12px;font-weight:700}.metric-pill{display:inline-flex;flex-direction:column;gap:2px;min-width:126px;padding:12px 14px;border-radius:8px;border:1px solid rgba(203,213,225,.64);background:#ffffff9e}.metric-pill strong{font-size:20px;line-height:1.1}.metric-pill span{color:#64748b;font-size:12px}.action-button{border:1px solid rgba(15,23,42,.1);border-radius:999px;padding:9px 14px;background:#ffffffb8;color:#172033;font-weight:700;cursor:pointer}.action-button:disabled,.star-button:disabled{cursor:not-allowed}.action-button.primary{color:#fff;border-color:#ffffff29;background:linear-gradient(135deg,#ff4f91,#ff8b66 52%,#3fd6b2);box-shadow:0 12px 28px #ff4f9147}.action-button.danger{color:#e11d48;border-color:#e11d482e;background:#ffffffb8}.input-field{width:100%;padding:11px 13px;border:1px solid rgba(148,163,184,.4);border-radius:8px;background:#ffffffb3;color:#172033;outline:none}.input-field:focus{border-color:#ff4f9180;box-shadow:0 0 0 4px #ff4f911a}.top-nav{position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(203,213,225,.38);background:#ffffffa8;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.nav-inner{width:min(1180px,calc(100% - 40px));min-height:58px;margin:0 auto;display:flex;align-items:center;gap:12px}.nav-meta,.nav-actions,.button-row,.stats-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.nav-meta{color:#64748b;font-size:13px}.nav-spacer{flex:1}.icon-button{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(15,23,42,.1);border-radius:999px;background:#ffffffb8;color:#172033}.auth-layout{min-height:100vh;width:min(100% - 28px,440px);margin:0 auto;display:flex;align-items:center;justify-content:center;padding:28px 0}.auth-card{width:100%;padding:28px}.form-stack{display:flex;flex-direction:column;gap:10px}.page-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.page-title-row h1,.page-title-row h2{margin:10px 0 0;font-size:30px;line-height:1.12;letter-spacing:0}.page-title-row p{margin:8px 0 0;color:#64748b;font-size:14px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:16px;margin-top:16px}.section-title{font-size:16px;font-weight:800;margin-bottom:12px}.section-kicker{margin:16px 0 8px;color:#64748b;font-size:12px;font-weight:800;letter-spacing:0}.item-list{display:flex;flex-direction:column}.item-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid rgba(203,213,225,.58)}.item-row:first-child{border-top:0;padding-top:0}.item-name{font-size:14px;font-weight:750}.legendary-text{color:transparent;background:linear-gradient(90deg,#ef4444,#f59e0b,#22c55e,#3b82f6,#8b5cf6);background-clip:text;-webkit-background-clip:text;font-weight:900}.muted{color:#64748b;font-size:12px;line-height:1.45}.warning-text{color:#f97316}.chest-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.chest-card{border:1px solid rgba(203,213,225,.68);border-radius:8px;padding:12px;background:#ffffff8a}.level-grid,.book-grid,.mode-grid{display:grid;gap:14px}.level-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.book-grid,.mode-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.level-card,.mode-card,.book-card{padding:16px}.book-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.book-subtitle{margin-top:3px;font-size:12px;color:#64748b}.book-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.book-metric{min-width:0;padding:8px 10px;border:1px solid rgba(148,163,184,.22);border-radius:8px;background:#ffffff8a}.book-metric span{display:block;font-size:11px;line-height:1.2;color:#64748b}.book-metric strong{display:block;margin-top:3px;font-size:14px;line-height:1.2;color:#0f172a;overflow-wrap:anywhere}.book-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.book-tag{display:inline-flex;align-items:center;min-height:22px;padding:2px 8px;border-radius:999px;background:#0f172a0f;color:#334155;font-size:11px;font-weight:700;line-height:1.15}.book-note{margin-top:10px;color:#64748b;font-size:12px;line-height:1.45}.star-button{width:32px;height:30px;border-radius:8px;font-weight:800}.level-select-page{width:min(1240px,calc(100% - 40px))}.level-select-hero{padding-block:24px}.level-key-pill{background:#0f172ae0;border-color:#0f172a2e;color:#fff}.level-key-pill span{color:#ffffffad}.phigros-level-list{display:flex;flex-direction:column;gap:12px;margin-top:18px}.phigros-level-card{position:relative;display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(112px,auto);align-items:center;gap:18px;min-height:112px;padding:16px 18px;overflow:hidden;border:1px solid rgba(148,163,184,.34);border-radius:8px;background:linear-gradient(105deg,#fffffff0,#ffffffbd 48%,#e2e8f09e),linear-gradient(90deg,#14b8a61f,#3b82f61a,#ef44441a);box-shadow:0 16px 38px #0f172a1a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.phigros-level-card:before{content:"";position:absolute;top:-40px;right:186px;width:148px;height:190px;transform:skew(-16deg);background:#0f172a0f;pointer-events:none}.phigros-level-card.is-locked{filter:saturate(.58);opacity:.72}.phigros-level-main,.phigros-difficulty-strip,.phigros-level-actions{position:relative;z-index:1}.phigros-level-main{display:grid;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:16px;min-width:0}.phigros-level-number{display:flex;align-items:center;justify-content:center;width:76px;height:76px;border-radius:8px;background:#0f172aeb;color:#fff;font-size:30px;font-weight:900;line-height:1}.phigros-level-copy{min-width:0}.phigros-level-title{overflow:hidden;color:#172033;font-size:22px;font-weight:900;line-height:1.18;text-overflow:ellipsis;white-space:nowrap}.phigros-level-meta,.phigros-unlock-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.phigros-level-meta span,.phigros-unlock-row span{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border-radius:6px;background:#ffffffad;color:#64748b;font-size:11px;font-weight:800;line-height:1}.phigros-unlock-row span{color:#b45309;background:#fffbebd6}.phigros-difficulty-strip{display:flex;align-items:stretch;justify-content:flex-end;min-width:246px;padding-inline:6px}.phigros-diff-tile{position:relative;width:72px;height:66px;margin-left:-6px;border:0;border-radius:2px;transform:skew(-12deg);overflow:hidden;box-shadow:inset 1px 0 #ffffff9e,inset -1px 0 #0f172a1a;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease,opacity .22s ease}.phigros-diff-tile:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-120%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);opacity:0;pointer-events:none;transition:transform .32s ease,opacity .32s ease}.phigros-diff-tile:not(:disabled):hover{transform:skew(-12deg) translateY(-1px);box-shadow:0 10px 22px #0f172a24,inset 1px 0 #ffffff9e,inset -1px 0 #0f172a1a}.phigros-diff-tile:not(:disabled):active{transform:skew(-12deg) translateY(0)}.phigros-diff-tile:first-child{margin-left:0}.phigros-diff-content{display:flex;height:100%;transform:skew(12deg);flex-direction:column;align-items:center;justify-content:center;gap:3px;transition:transform .22s ease}.phigros-diff-rating{font-size:24px;font-weight:900;line-height:1}.phigros-diff-label{font-size:10px;font-weight:900;line-height:1}.phigros-diff-tile.diff-ez{background:linear-gradient(135deg,#ecfccb,#86efac);color:#166534}.phigros-diff-tile.diff-hd{background:linear-gradient(135deg,#dbeafe,#93c5fd);color:#1d4ed8}.phigros-diff-tile.diff-in{background:linear-gradient(135deg,#fee2e2,#fca5a5);color:#b91c1c}.phigros-diff-tile.diff-at{background:linear-gradient(135deg,#020617,#334155);color:#fff}.phigros-diff-tile.is-active{z-index:3;transform:skew(-12deg) translateY(-2px);box-shadow:0 12px 26px #0f172a33,0 0 0 3px #0f172ac2,inset 1px 0 #ffffffb8}.phigros-diff-tile.is-active:before{transform:translate(120%);opacity:1}.phigros-diff-tile.is-active .phigros-diff-content{transform:skew(12deg) scale(1.04)}.phigros-diff-tile.is-cleared .phigros-diff-label:after{content:" CLEAR";color:currentColor;opacity:.78}.phigros-diff-tile:disabled{cursor:not-allowed}.phigros-diff-tile.is-locked{filter:grayscale(.42);opacity:.44}.phigros-diff-tile.is-disabled{opacity:.96}.phigros-level-actions{display:flex;flex-direction:column;gap:8px;min-width:206px}.phigros-action-row{display:grid;grid-template-columns:78px minmax(118px,1fr);gap:8px}.phigros-play-button,.phigros-unlock-button,.phigros-challenge-button{min-height:38px;border-radius:6px;border:0;padding:8px 12px;font-size:12px;font-weight:900}.phigros-play-button{background:#172033;color:#fff}.phigros-challenge-button{border:1px solid rgba(148,163,184,.36);background:#ffffffc2;color:#475569}.phigros-challenge-button.is-active{border-color:#0ea5e99e;background:#0ea5e921;color:#0369a1}.phigros-play-button:disabled,.phigros-challenge-button:disabled{background:#64748b85;color:#ffffffc7;cursor:not-allowed}.phigros-unlock-button{background:#f59e0b;color:#111827}.phigros-challenge-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.phigros-challenge-chip{min-height:30px;border:1px solid rgba(148,163,184,.36);border-radius:6px;padding:5px 6px;background:#ffffffc2;color:#475569;font-size:11px;font-weight:900;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.phigros-challenge-chip.is-active{transform:translateY(-1px);border-color:#0ea5e99e;background:#0ea5e921;color:#0369a1}.phigros-challenge-chip:disabled{cursor:not-allowed;opacity:.48}.chapter-select-page{width:min(1180px,calc(100% - 40px))}.chapter-hero:before,.level-select-hero.chapter-fire:before,.level-select-hero.chapter-wind:before,.level-select-hero.chapter-gold:before,.level-select-hero.chapter-ice:before,.level-select-hero.chapter-electric:before,.level-select-hero.chapter-light:before{background:linear-gradient(112deg,rgba(255,255,255,.2),transparent 52%),linear-gradient(135deg,#f8717129,#38bdf81f,#facc151a)}.chapter-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.chapter-card{position:relative;min-height:210px;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:8px;border:1px solid rgba(203,213,225,.68);border-radius:8px;padding:18px;color:#172033;text-align:left;background:#ffffffb8;box-shadow:0 16px 38px #565e7d1f}.chapter-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(130deg,rgba(255,255,255,.88),rgba(255,255,255,.36) 44%,transparent 74%),linear-gradient(145deg,var(--chapter-soft),var(--chapter-strong));z-index:0}.chapter-card:after{content:"";position:absolute;top:-34px;right:22px;width:92px;height:270px;transform:skew(-18deg);background:#ffffff42;z-index:0}.chapter-card>*{position:relative;z-index:1}.chapter-card strong{font-size:25px;font-weight:950;line-height:1.1}.chapter-index,.chapter-range,.chapter-progress{display:inline-flex;min-height:24px;align-items:center;padding:4px 8px;border-radius:6px;background:#ffffffa3;color:#475569;font-size:11px;font-weight:850;line-height:1}.chapter-progress{color:#172033}.chapter-card.is-locked{filter:grayscale(.85);opacity:.58!important}.chapter-card.is-locked:before{background:linear-gradient(130deg,#ffffffc7,#ffffff6b),linear-gradient(145deg,#e2e8f0eb,#64748b6b)}.chapter-fire{--chapter-soft: rgba(254, 226, 226, .95);--chapter-strong: rgba(248, 113, 113, .78)}.chapter-wind{--chapter-soft: rgba(220, 252, 231, .95);--chapter-strong: rgba(45, 212, 191, .74)}.chapter-gold{--chapter-soft: rgba(254, 249, 195, .96);--chapter-strong: rgba(245, 158, 11, .68)}.chapter-ice{--chapter-soft: rgba(224, 242, 254, .96);--chapter-strong: rgba(56, 189, 248, .66)}.chapter-electric{--chapter-soft: rgba(237, 233, 254, .96);--chapter-strong: rgba(168, 85, 247, .7)}.chapter-light{--chapter-soft: rgba(254, 252, 232, .96);--chapter-strong: rgba(250, 204, 21, .62)}.difficulty-stat{color:#172033;font-weight:900;background:#ffffffd1}.balance-lab-page{width:min(1320px,calc(100% - 40px))}.lab-status{margin-top:12px}.balance-lab-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:14px;margin-top:16px}.lab-panel{padding:16px;margin-top:16px}.balance-lab-grid .lab-panel{margin-top:0}.lab-panel-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-size:15px;font-weight:900}.lab-mini-button{min-height:30px;border:1px solid rgba(15,23,42,.1);border-radius:6px;padding:6px 10px;background:#ffffffc2;color:#172033;font-size:12px;font-weight:800}.lab-mini-button.danger{color:#dc2626;border-color:#dc26262e}.lab-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.lab-target-grid{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(180px,1fr) minmax(120px,.55fr);gap:10px}.lab-field,.lab-check,.lab-group-row label{display:flex;flex-direction:column;gap:5px;color:#64748b;font-size:11px;font-weight:800}.lab-check{flex-direction:row;align-items:center;margin-top:12px}.lab-draft-summary{margin-top:10px;padding:9px 10px;border-radius:8px;background:#0f172ae0;color:#fff;font-size:12px;font-weight:850}.lab-input,.lab-field select,.lab-field input,.lab-group-row input,.lab-group-row select,.lab-level-tile input,.lab-rating-card input,.lab-table input{width:100%;min-height:34px;border:1px solid rgba(148,163,184,.36);border-radius:6px;padding:7px 8px;background:#ffffffc2;color:#172033;font-size:12px;font-weight:750;outline:none}.lab-input:focus,.lab-field select:focus,.lab-field input:focus,.lab-group-row input:focus,.lab-group-row select:focus,.lab-level-tile input:focus,.lab-rating-card input:focus,.lab-table input:focus{border-color:#3b82f68f;box-shadow:0 0 0 3px #3b82f61f}.lab-rating-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.lab-rating-card{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:58px;padding:10px;border-radius:8px;border:1px solid rgba(148,163,184,.3)}.lab-rating-card span{min-width:28px;font-weight:950}.lab-rating-card.rating-ez{color:#166534;background:#dcfce7bd}.lab-rating-card.rating-hd{color:#1d4ed8;background:#dbeafec2}.lab-rating-card.rating-in{color:#b91c1c;background:#fee2e2cc}.lab-rating-card.rating-at{color:#fff;background:#0f172ae6}.lab-difficulty-picker{display:grid;grid-template-columns:repeat(4,minmax(84px,1fr));gap:10px;margin-top:12px}.lab-mode-grid{display:grid;grid-template-columns:repeat(4,minmax(92px,1fr));gap:10px}.lab-mode-card{min-height:46px;border:1px solid rgba(148,163,184,.34);border-radius:8px;background:#ffffffb8;color:#172033;font-size:13px;font-weight:900;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.lab-mode-card.is-active{transform:translateY(-1px);border-color:#0f172ab8;box-shadow:0 10px 24px #0f172a1f}.lab-at-panel{margin-top:12px;padding:12px;border-radius:8px;border:1px solid rgba(203,213,225,.62);background:#f8fafca3}.lab-pool-title{margin:12px 0 8px;color:#64748b;font-size:11px;font-weight:900}.lab-pool-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.lab-pool-chip{display:grid;grid-template-columns:auto minmax(72px,1fr) 92px;align-items:center;gap:8px;min-height:36px;padding:8px 10px;border:1px solid rgba(203,213,225,.66);border-radius:8px;background:#ffffffa8;color:#172033;font-size:12px;font-weight:850}.lab-pool-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lab-pool-weight{width:92px;min-height:28px;justify-self:end;border:1px solid rgba(148,163,184,.38);border-radius:6px;padding:4px 6px;background:#ffffffd1;color:#172033;font-size:12px;font-weight:800}.lab-pool-chip.element{border-color:#3b82f638}.lab-pool-chip.is-active{border-color:#0f172a8f;background:#e2e8f0b8}.card-pick-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px}.card-pick-item{min-height:86px;display:grid;justify-items:center;align-content:center;gap:5px;border:1px solid rgba(203,213,225,.68);border-radius:8px;background:#ffffffb3;color:#172033;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,opacity .18s ease}.card-pick-item span{max-width:100%;overflow:hidden;font-size:12px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.card-pick-item small{color:#64748b;font-size:11px;font-weight:800}.card-pick-item.is-selected{transform:translateY(-1px);border-color:#0f172ab3;box-shadow:0 12px 24px #0f172a1f}.card-pick-item:disabled{cursor:not-allowed;opacity:.45}.challenge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:16px}.challenge-card{min-height:136px;display:grid;align-content:center;gap:8px;border:1px solid rgba(203,213,225,.68);border-radius:8px;padding:16px;background:#ffffffb3;color:#172033;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.challenge-card span{width:fit-content;padding:4px 8px;border-radius:999px;background:#0ea5e91f;color:#0369a1;font-size:12px;font-weight:900}.challenge-card strong{font-size:18px;font-weight:950}.challenge-card small{color:#64748b;font-size:13px;line-height:1.45}.challenge-card.is-active{transform:translateY(-2px);border-color:#0f172ab8;box-shadow:0 14px 30px #0f172a24}.lab-target-card{position:relative;min-height:66px;overflow:hidden;border:1px solid rgba(148,163,184,.34);border-radius:8px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;color:#172033;cursor:pointer;box-shadow:inset 0 1px #ffffffc7;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,opacity .18s ease}.lab-target-card span{font-size:13px;font-weight:950;letter-spacing:0}.lab-target-card strong{min-width:42px;text-align:right;font-size:28px;font-weight:950;line-height:1}.lab-target-card.rating-ez{background:linear-gradient(135deg,#ecfccbeb,#86eface0);color:#166534}.lab-target-card.rating-hd{background:linear-gradient(135deg,#dbeafef0,#93c5fde0);color:#1d4ed8}.lab-target-card.rating-in{background:linear-gradient(135deg,#fee2e2f0,#fca5a5e0);color:#b91c1c}.lab-target-card.rating-at{background:linear-gradient(135deg,#020617,#334155);color:#fff}.lab-target-card.is-active{transform:translateY(-2px);border-color:#0f172ac7;box-shadow:0 12px 28px #0f172a2e,0 0 0 3px #0f172a14,inset 0 1px #fffc}.lab-target-card:disabled{cursor:not-allowed;opacity:.42;filter:grayscale(.55)}.lab-level-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.lab-level-tile{display:grid;grid-template-columns:minmax(0,1fr) 72px;align-items:center;gap:10px;padding:10px;border-radius:8px;border:1px solid rgba(203,213,225,.58);background:#ffffff8f}.lab-level-tile.element{border-color:#3b82f633;background:#eff6ff9e}.lab-level-tile span{overflow:hidden;color:#172033;font-size:12px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.lab-table-scroll{overflow-x:auto;border-radius:8px;border:1px solid rgba(203,213,225,.62)}.lab-table{width:100%;min-width:980px;border-collapse:collapse;background:#ffffff94}.lab-table.compact{min-width:520px}.lab-table th,.lab-table td{padding:8px;border-bottom:1px solid rgba(203,213,225,.52);text-align:left;font-size:12px}.lab-table th{color:#64748b;font-weight:900;background:#f8fafce6}.lab-table td:first-child{min-width:112px;color:#172033;font-weight:850}.lab-table input{min-width:78px}.lab-wave-list{display:flex;flex-direction:column;gap:12px}.lab-wave-card{padding:12px;border-radius:8px;border:1px solid rgba(203,213,225,.62);background:#ffffff8a}.lab-wave-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.lab-group-list{display:flex;flex-direction:column;gap:8px}.lab-group-row{display:grid;grid-template-columns:minmax(130px,1.15fr) repeat(6,minmax(70px,.65fr)) minmax(58px,.45fr) auto;align-items:end;gap:8px;padding:10px;border-radius:8px;background:#f8fafcc7}.lab-group-row .lab-boss-check input{width:18px;min-height:18px;height:18px;margin-top:7px;accent-color:#172033}.lab-export-textarea{width:100%;min-height:260px;resize:vertical;border:1px solid rgba(148,163,184,.34);border-radius:8px;padding:12px;background:#0f172aeb;color:#dbeafe;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:12px;line-height:1.5}.table-panel{overflow:hidden}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:18px;background:#0f172a5c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-panel{width:min(420px,100%);padding:20px}.level-start-modal{width:min(520px,100%)}.level-start-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px}.level-start-head h2{margin:4px 0 0;font-size:22px;line-height:1.15}.level-start-monster-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:14px 0 16px}.level-start-monster-chip{min-height:46px;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid rgba(148,163,184,.34);border-radius:8px;background:#ffffff9e;color:#172033;font-weight:800}.level-start-monster-chip svg{flex:0 0 auto}.level-start-empty{margin:14px 0 16px;padding:14px;border:1px dashed rgba(148,163,184,.52);border-radius:8px;color:#64748b;text-align:center;font-weight:700}.level-start-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.challenge-config-modal{width:min(560px,100%)}.challenge-config-list{display:grid;gap:10px;margin:14px 0 16px}.challenge-config-item{display:grid;gap:5px;min-height:86px;padding:12px 14px;border:1px solid rgba(148,163,184,.36);border-radius:8px;background:#ffffffad;color:#172033;text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.challenge-config-item span{color:#0f766e;font-size:12px;font-weight:900}.challenge-config-item strong{font-size:17px;line-height:1.15}.challenge-config-item small{color:#64748b;font-size:13px;line-height:1.45}.challenge-config-item.is-active{transform:translateY(-1px);border-color:#0ea5e9a8;background:#e0f2fec7}.challenge-config-close{width:100%}@media(max-width:560px){.level-start-actions,.phigros-action-row{grid-template-columns:1fr}}.reward-panel{padding:12px;margin-bottom:16px;border-radius:8px;border:1px solid rgba(203,213,225,.62);background:#f8fafcc7}.game-shell{height:100vh;height:100dvh;width:100%;display:flex;flex-direction:column;color:#172033;overflow:hidden;background:linear-gradient(135deg,#ffffffb3,#eff6ff9e),linear-gradient(45deg,#ecfdf5b8,#fff7eda3)}.game-topbar{flex-shrink:0;margin:14px 16px 10px;padding:12px 14px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.tutorial-game-tip{flex-shrink:0;margin:0 16px 10px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid rgba(203,213,225,.72);border-radius:8px;background:#ffffffbd;box-shadow:0 10px 24px #565e7d1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.tutorial-game-tip div{display:flex;flex-direction:column;gap:3px}.tutorial-game-tip strong{font-size:13px}.tutorial-game-tip span{color:#475569;font-size:13px;line-height:1.45}.game-stats{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.game-stat{padding:7px 10px;border:1px solid rgba(203,213,225,.68);border-radius:999px;background:#ffffffa3;font-size:13px;font-weight:750}.game-sidepanel{background:#ffffff9e;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.game-map-stage{flex:1 1 0%;width:100%;position:relative;align-self:stretch;min-height:0;overflow:hidden;display:flex;justify-content:center;align-items:center;padding:6px;touch-action:none}.game-map-svg{flex:0 0 auto;display:block;max-width:100%;max-height:100%;background:#f8fafceb;border-radius:8px;overflow:hidden;border:1px solid rgba(203,213,225,.82);box-shadow:0 18px 44px #565e7d29;z-index:1}@media(max-width:980px){.chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.balance-lab-grid{grid-template-columns:1fr}.lab-form-grid,.lab-target-grid,.lab-rating-row{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-target-grid .lab-field:first-child{grid-column:1 / -1}.lab-difficulty-picker{grid-template-columns:repeat(4,minmax(76px,1fr))}.lab-group-row{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-group-row .lab-mini-button{min-height:34px}.phigros-level-card{grid-template-columns:1fr;align-items:stretch}.phigros-level-card:before{right:38px}.phigros-difficulty-strip{justify-content:flex-start;min-width:0;overflow-x:auto;padding:4px 8px 10px}.phigros-level-actions{flex-direction:row}.phigros-challenge-row{flex:1 1 136px}.phigros-play-button,.phigros-unlock-button{flex:1}}@media(max-width:760px){.page-wrap{width:min(100% - 24px,1180px);padding-top:18px}.hero-panel{padding:22px}.nav-inner{width:min(100% - 24px,1180px);padding:10px 0;align-items:flex-start}.page-title-row{flex-direction:column}.dashboard-grid{grid-template-columns:1fr}.page-title-row h1,.page-title-row h2{font-size:24px}.metric-pill{min-width:calc(50% - 5px)}.level-select-page{width:min(100% - 24px,1180px)}.balance-lab-page{width:min(100% - 24px,1320px)}.chapter-select-page{width:min(100% - 24px,1180px)}.chapter-grid{grid-template-columns:1fr}.chapter-card{min-height:170px}.lab-panel{padding:12px}.lab-form-grid,.lab-target-grid,.lab-rating-row{grid-template-columns:1fr}.lab-target-grid .lab-field:first-child{grid-column:auto}.lab-difficulty-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.lab-wave-head{align-items:flex-start;flex-direction:column}.lab-level-grid{grid-template-columns:1fr}.lab-pool-grid{grid-template-columns:repeat(auto-fit,minmax(208px,1fr))}.phigros-level-card{min-height:0;padding:12px;gap:12px}.phigros-level-main{grid-template-columns:58px minmax(0,1fr);gap:12px}.phigros-level-number{width:58px;height:58px;font-size:23px}.phigros-level-title{font-size:18px}.phigros-level-meta span,.phigros-unlock-row span{min-height:22px;font-size:10px}.phigros-diff-tile{width:62px;height:58px}.phigros-diff-rating{font-size:21px}.game-topbar{margin:10px 10px 8px}.tutorial-game-tip{margin:0 10px 8px;align-items:flex-start;flex-direction:column}.game-map-stage{padding:6px}}@keyframes slide-in-bottom{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.card-enter{animation:slide-in-bottom .5s ease-out forwards}.stage-container{min-height:100vh;will-change:opacity,transform,filter}.stage-container-idle{opacity:1;transform:translateY(0);filter:none}.stage-container-entering{animation:stage-fade-in .26s ease-out both}.stage-container-leaving{animation:stage-fade-out .16s ease-in both;pointer-events:none}@keyframes stage-fade-in{0%{opacity:0;transform:translateY(8px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes stage-fade-out{0%{opacity:1;transform:translateY(0);filter:blur(0)}to{opacity:0;transform:translateY(-6px);filter:blur(2px)}}
