:root{color:#eef3f7;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#0b1118;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{background:linear-gradient(135deg,#ff46551f,#0000 30%),#0b1118;grid-template-rows:auto 1fr;grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.topbar{background:#0c141df5;border-bottom:1px solid #eef3f71f;grid-column:1/-1;grid-template-columns:260px minmax(280px,1fr) 190px minmax(180px,auto);align-items:center;gap:16px;padding:16px 20px;display:grid}.update-banner{background:#ff465524;border-bottom:1px solid #ff465552;grid-column:1/-1;justify-content:center;align-items:center;gap:12px;padding:10px 16px;display:flex}.update-banner button,.install-button,.install-help button,.mode-row button,.favorite-button,.detail-title-actions button,.shot-nav,.shot-expand,.viewer-close,.viewer-nav,.shot-open,.recent-list button{color:#eef3f7;background:#eef3f714;border:1px solid #eef3f729}.update-banner button{align-items:center;gap:8px;min-height:34px;padding:0 12px;display:inline-flex}.install-button{white-space:nowrap;background:#ff465529;border-color:#ff46557a;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 12px;display:inline-flex}.install-button.installed{color:#70dacd;background:#26bcab1c;border-color:#26bcab75}.install-help{background:#14202bfa;border-bottom:1px solid #eef3f71f;grid-column:1/-1;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;display:flex}.install-help p{color:#9fb0bf;margin:3px 0 0;line-height:1.45}.install-help button{flex:none;place-items:center;width:34px;height:34px;display:grid}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#0b1118;background:#ff4655;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.brand h1,.brand p,.gallery-header h2,.gallery-header p,.lineup-card h3,.detail-title h2,.detail-title p,.minimal-notes p,.empty-state h3{margin:0}.brand h1{font-size:19px;line-height:1.1}.brand p,.gallery-header p,.detail-title p,.progress-card span,.progress-card small,.detail-facts small,.minimal-notes b{color:#9fb0bf}.search-box{background:#eef3f712;border:1px solid #eef3f729;align-items:center;gap:10px;height:46px;padding:0 12px;display:flex}.search-box input,.mini-search input{color:#eef3f7;background:0 0;border:0;outline:0;width:100%;min-width:0}.mini-search{background:#14202b;border:1px solid #eef3f726;align-items:center;gap:8px;height:42px;padding:0 10px;display:flex}.progress-card{gap:5px;display:grid}.progress-card strong{color:#ff4655;font-size:26px;line-height:1}.progress-track{background:#eef3f71f;height:6px;overflow:hidden}.progress-track i{background:#ff4655;height:100%;display:block}.filter-panel{background:#0c141de0;border-right:1px solid #eef3f71f;align-content:start;gap:12px;height:calc(100vh - 75px);padding:18px;display:grid;position:sticky;top:75px;overflow-y:auto}.filter-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.filter-summary div{background:#eef3f70e;border:1px solid #eef3f71f;gap:4px;padding:10px;display:grid}.filter-summary small,.admin-check span,.recent-list span{color:#9fb0bf;font-size:11px}select{color:#eef3f7;background:#14202b;border:1px solid #eef3f726;border-radius:0;width:100%;height:42px;padding:0 10px}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.mode-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.mode-row button{justify-content:center;align-items:center;gap:6px;min-height:38px;display:inline-flex}.chip-row button,.reset-button,.shot-tabs button,.detail-actions a,.detail-actions button{color:#eef3f7;background:#eef3f712;border:1px solid #eef3f726}.chip-row button{min-height:34px;padding:0 10px;font-size:13px}.chip-row button.active,.shot-tabs button.active,.mode-row button.active,.detail-title-actions button.active{background:#ff465533;border-color:#ff4655b8}.reset-button{justify-content:center;align-items:center;gap:8px;height:40px;display:inline-flex}.admin-check,.recent-list{gap:8px;padding-top:4px;display:grid}.admin-check h3,.recent-list h3{color:#cad6df;align-items:center;gap:6px;margin:0;font-size:13px;display:inline-flex}.admin-check p{background:#eef3f70b;border:1px solid #eef3f71f;justify-content:space-between;align-items:center;margin:0;padding:8px 10px;display:flex}.recent-list button{text-align:left;gap:3px;padding:8px 10px;display:grid}.recent-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.gallery-panel{min-width:0;padding:18px}.gallery-header{justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px;display:flex}.gallery-header span{color:#26bcab;font-size:12px;font-weight:900}.gallery-header h2{font-size:36px;line-height:1}.pagination-bar{background:#eef3f70a;border:1px solid #eef3f71a;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:10px;display:flex}.page-size-control,.pager{align-items:center;gap:8px;display:flex}.page-size-control span{color:#9fb0bf;font-size:13px}.page-size-control select{width:94px;height:36px}.pager button{color:#eef3f7;background:#eef3f714;border:1px solid #eef3f729;min-height:36px;padding:0 10px}.pager button:disabled{cursor:not-allowed;opacity:.42}.pager strong{text-align:center;min-width:76px}.lineup-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.lineup-card{color:inherit;text-align:left;cursor:pointer;background:#eef3f70e;border:1px solid #eef3f71f;gap:0;padding:0;display:grid;position:relative}.lineup-card.selected{border-color:#ff4655d1;box-shadow:inset 0 0 0 1px #ff465552}.favorite-button{z-index:2;color:#ff9aa3;background:#0b1118c7;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:8px;right:8px}.favorite-button.active{color:#ff4655;border-color:#ff4655cc}.gameplay-shot{aspect-ratio:16/9;background:#111923;position:relative;overflow:hidden}.gameplay-shot.large{background:#05080c;border:1px solid #eef3f71f;min-height:min(68vh,760px);margin-top:12px}.gameplay-shot.large img{object-fit:contain}.gameplay-shot img{object-fit:cover;width:100%;height:100%}.shot-empty{color:#d7e1ea;background:linear-gradient(135deg,#ff465521,#0000 34%),linear-gradient(315deg,#26bcab1a,#0000 34%),#131e29;align-content:center;place-items:center;gap:6px;width:100%;height:100%;display:grid}.shot-empty strong{font-size:15px}.shot-empty span{color:#8ea0af;font-size:13px}.card-body{gap:8px;padding:12px;display:grid}.card-meta,.agent-line,.route-line{align-items:center;gap:8px;display:flex}.card-meta{flex-wrap:wrap}.card-meta span{color:#cad6df;border:1px solid #eef3f724;padding:3px 7px;font-size:12px}.card-meta .side-attack{color:#ff9aa3;border-color:#ff465580}.card-meta .side-defense{color:#70dacd;border-color:#26bcab85}.card-meta .side-post-plant{color:#ffd58a;border-color:#ffc4578c}.card-meta .side-retake,.card-meta .side-any{color:#b6c3ff;border-color:#8aa4ff80}.lineup-card h3{font-size:17px;line-height:1.25}.agent-line{color:#cad6df;font-size:13px}.agent-line img{object-fit:contain;width:22px;height:22px}.ability-icon{color:#ff9aa3;border:1px solid #ff46557a;place-items:center;width:24px;height:24px;font-size:10px;font-style:normal;font-weight:900;display:grid}.route-line{color:#eef3f7;font-size:13px;font-weight:800}.flag-row,.detail-title-actions{flex-wrap:wrap;gap:8px;display:flex}.flag-row span,.detail-title-actions span{color:#ffd58a;background:#ffc45714;border:1px solid #ffc4576b;padding:3px 7px;font-size:12px}.detail-overlay{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#04080ddb;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.detail-panel{background:#0c141d;border:1px solid #eef3f729;width:min(1480px,100%);max-height:calc(100vh - 36px);padding:24px;position:relative;overflow-y:auto}.detail-close{color:#eef3f7;background:#eef3f714;border:1px solid #eef3f729;place-items:center;width:42px;height:42px;display:grid;position:absolute;top:16px;right:16px}.detail-title span{color:#ff4655;font-weight:900}.detail-title h2{max-width:calc(100% - 54px);margin-top:6px;font-size:34px;line-height:1.15}.detail-title-actions{margin-top:12px}.detail-title-actions button{align-items:center;gap:8px;min-height:34px;padding:0 10px;display:inline-flex}.shot-tabs{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;display:grid}.shot-tabs button{height:38px}.shot-stage{position:relative}.shot-open{width:100%;text-align:inherit;background:0 0;border:0;margin:0;padding:0;display:block}.shot-nav,.viewer-nav{z-index:2;place-items:center;display:grid;position:absolute}.shot-nav{background:#0b1118b3;width:42px;height:54px;top:50%;transform:translateY(-50%)}.shot-nav.left{left:10px}.shot-nav.right{right:10px}.shot-expand{z-index:2;background:#0b1118c2;align-items:center;gap:7px;min-height:36px;padding:0 10px;display:inline-flex;position:absolute;top:24px;right:12px}.detail-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.detail-facts div{background:#eef3f70e;border:1px solid #eef3f71f;gap:4px;min-height:66px;padding:10px;display:grid}.detail-facts strong{align-self:end;line-height:1.2}.minimal-notes{gap:8px;margin-top:12px;display:grid}.minimal-notes p{background:#eef3f70e;border-left:3px solid #26bcabb8;gap:4px;padding:9px 10px;line-height:1.45;display:grid}.minimal-notes b{font-size:12px}.detail-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.detail-actions a,.detail-actions button{align-items:center;gap:8px;min-height:40px;padding:0 12px;display:inline-flex}.image-viewer{z-index:40;background:#020407f0;grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;gap:12px;padding:18px;display:grid;position:fixed;inset:0}.viewer-close{z-index:3;place-items:center;width:44px;height:44px;display:grid;position:absolute;top:18px;right:18px}.viewer-nav{justify-self:center;width:58px;height:72px;position:static}.viewer-image-wrap{gap:10px;min-width:0;display:grid}.gameplay-shot.viewer-shot{aspect-ratio:auto;background:#05080c;height:min(82vh,900px)}.gameplay-shot.viewer-shot img{object-fit:contain}.viewer-image-wrap p{color:#cad6df;text-align:center;margin:0}.empty-state{color:#cad6df;place-items:center;min-height:280px;display:grid}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1180px){.app-shell{grid-template-columns:240px minmax(0,1fr)}}@media (width<=760px){.app-shell,.topbar{grid-template-columns:1fr}.install-help{align-items:flex-start}.filter-panel{border-bottom:1px solid #eef3f71f;border-right:0;height:auto;position:static}.gallery-panel,.detail-panel,.filter-panel,.topbar{padding:16px}.detail-overlay{padding:0}.detail-panel{border:0;width:100%;min-height:100vh;max-height:100vh}.detail-title h2{font-size:24px}.gameplay-shot.large{min-height:auto}.image-viewer{grid-template-columns:1fr;padding:12px}.viewer-nav{display:none}.gameplay-shot.viewer-shot{height:78vh}.gallery-header{flex-direction:column;align-items:start}.pagination-bar,.pager{flex-direction:column;align-items:stretch}.pager{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pager strong{order:-1;grid-column:1/-1;min-width:0}}@media (width<=460px){.lineup-grid,.detail-facts,.filter-summary,.mode-row{grid-template-columns:1fr}}
