:root{--bg:#0b0f17;--panel:hsla(0,0%,100%,.06);--panel2:hsla(0,0%,100%,.09);--text:hsla(0,0%,100%,.92);--muted:hsla(0,0%,100%,.65);--border:hsla(0,0%,100%,.12);--shadow:0 12px 30px rgba(0,0,0,.35);--radius:16px}*{box-sizing:border-box}body,html{height:100%}body{margin:0;background:#f3f4f6;color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}.container{width:min(1100px,calc(100% - 32px));margin:0 auto}.appHeader{position:-webkit-sticky;position:sticky;top:0;z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(11,15,23,.55);border-bottom:1px solid var(--border)}.headerRow{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:12px}.brand{font-weight:800;letter-spacing:.3px}.appMain{padding:0 0 24px}.appFooter{border-top:1px solid var(--border);padding:18px 0}.title{margin:0;font-size:28px;letter-spacing:.2px}.pageTitle{color:#111}.muted{color:var(--muted)}.stack{display:grid;grid-gap:10px;gap:10px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.panelInner{padding:14px}.row{align-items:center}.row,.wrap{display:flex;gap:10px}.wrap{flex-wrap:wrap}.uiBtn{border:1px solid var(--border);background:hsla(0,0%,100%,.06);color:var(--text);padding:10px 12px;border-radius:14px;cursor:pointer;font-weight:800}.uiBtn:hover{background:hsla(0,0%,100%,.09)}.uiBtn:disabled{opacity:.6;cursor:not-allowed}.uiBtn--primary{border-color:hsla(0,0%,100%,.18);background:hsla(0,0%,100%,.14)}.uiBtn--primary:hover:not(:disabled){background:hsla(0,0%,100%,.18)}.uiBtn--ghost{background:transparent}.uiBtn--ghost:hover:not(:disabled){background:hsla(0,0%,100%,.06)}.uiBtn--sm{padding:8px 10px;border-radius:12px;font-size:13px}.uiBtn--md{font-size:14px}.uiInput{width:100%;color:#111;background:#fff;border:1px solid #9ca3af;border-radius:12px;padding:9px 10px;outline:none}.uiInput:focus{border-color:#2563eb;box-shadow:0 0 0 2px rgba(37,99,235,.18)}.uiInput::placeholder{color:#6b7280}.controlsBand{position:-webkit-sticky;position:sticky;top:0;z-index:30;background:#fff;border-bottom:1px solid #d1d5db;padding:8px 10px;margin:0}.controlsRow{justify-content:space-between;gap:12px;flex-wrap:wrap}.controlsRow,.left,.right{display:flex;align-items:center}.left,.right{gap:10px}.brandText{font-size:18px;font-weight:800;color:#111;letter-spacing:.2px}.btn{border:1px solid #1f2937;background:#f3f4f6;color:#111827;padding:10px 12px;border-radius:14px;cursor:pointer;font-weight:700}.btn:hover{background:#e5e7eb}.tierBoardInner{display:grid;grid-gap:0;gap:0}.tierRow{display:grid;grid-template-columns:80px 1fr;width:100%;justify-self:stretch;margin:0;grid-gap:12px;gap:12px;align-items:start;padding:6px 10px;border:1px solid #000;border-radius:0;background:var(--panel)}.tierLeft{display:flex;align-items:center;gap:10px;border-radius:12px;padding:2px}.tierNameInput{width:100%;font-size:16px;font-weight:800;color:#111;background:transparent;border:1px solid transparent;border-radius:12px;padding:4px 6px;outline:none;text-align:center}.tierNameInput:focus{border-color:rgba(0,0,0,.25);background:hsla(0,0%,100%,.35)}.tierItems{display:flex;flex-wrap:wrap;gap:0;min-height:48px;align-content:flex-start}.poolRow{padding:12px;border:1px dashed var(--border);border-radius:var(--radius);background:hsla(0,0%,100%,.03)}.poolHeader{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.poolTitle{font-weight:800}.poolItems{display:flex;flex-wrap:wrap;gap:0;min-height:72px}.elementBreak{flex-basis:100%;width:100%;height:0}.iconCard{width:48px;height:48px;border-radius:0;border:1px solid var(--border);background:hsla(0,0%,100%,.05);overflow:hidden;display:grid;place-items:center}.iconImg{width:100%;height:100%;object-fit:cover;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.filterArea{max-width:100%}.filterRow{width:100%;max-width:420px;display:flex;align-items:center;gap:8px}.filterIconBtn{width:36px;height:36px;border:1px solid #9ca3af;background:#fff;color:#111;border-radius:8px;cursor:pointer;display:inline-grid;place-items:center;padding:0}.filterIconBtn svg{width:18px;height:18px}.elementFilterPanel{display:flex;flex-direction:column;gap:10px;margin-top:8px;max-width:100%;overflow-x:hidden}.filterColumns{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:12px 20px;gap:12px 20px;align-items:start}.filterLeftCol,.filterRightCol{display:grid;grid-gap:8px;gap:8px}.labelRow{width:100%;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.filterLabel{min-width:56px;color:#111;font-weight:700}.inlineBtns,.sortRow{display:flex;gap:8px;flex-wrap:wrap}.sortRow{width:auto;margin-left:0}.yearRow{width:100%;display:flex;align-items:center;gap:8px}.yearSelect{min-width:110px;border:1px solid #9ca3af;background:#fff;color:#111;border-radius:8px;padding:6px 8px;font-weight:600}.yearSep{color:#374151;font-weight:700}.sortBtn{min-width:64px;border:1px solid #9ca3af;background:#fff;color:#111;border-radius:8px;padding:6px 10px;cursor:pointer;font-weight:700}.sortBtn[data-selected="1"]{background:#dbeafe;border-color:#2563eb}.gachaRow,.obtainRow,.otherCategoryRow{width:100%;display:flex;gap:8px;flex-wrap:wrap}.gachaRow,.otherCategoryRow{width:auto;margin-left:64px}.labelRow .obtainRow,.labelRow .yearRow{width:auto}.gachaBtn,.obtainBtn,.otherCategoryBtn{min-width:64px;border:1px solid #9ca3af;background:#fff;color:#111;border-radius:8px;padding:6px 10px;cursor:pointer;font-weight:700}.gachaBtn[data-selected="1"],.obtainBtn[data-selected="1"],.otherCategoryBtn[data-selected="1"]{background:#dbeafe;border-color:#2563eb}.elementBtn{min-width:44px;border:1px solid #9ca3af;background:#fff;color:#111;border-radius:8px;padding:6px 10px;cursor:pointer;font-weight:700}.elementBtn[data-selected="1"]{background:#dbeafe;border-color:#2563eb}.betweenTiersAndFilter{height:6px}.betweenFilterAndPool{height:1px}@media (max-width:768px){.filterColumns{grid-template-columns:1fr;gap:10px}.gachaRow,.otherCategoryRow{margin-left:0;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch}}