.prism-ink-colors{display:inline-flex;align-items:center;gap:5px;vertical-align:middle;flex-shrink:0;line-height:1.5}.prism-ink-logo{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;background:#faf9fc;border:1px solid #ebe6f1;flex-shrink:0}.prism-ink-logo img{display:block;width:24px;height:24px;object-fit:contain}.prism-ink-logo-fallback{font-size:8px;color:#695a77;text-align:center;line-height:1.3}.prism-ink-names{font-size:11px;color:#766584;margin-left:4px;white-space:normal}.prism-ink-invalid{font-size:10px;padding:5px 8px;border:1px solid #eed8de;background:#fcf2f4;color:#a26b79;border-radius:5px;white-space:nowrap}.prism-ink-unknown{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:7px;border:1px dashed #d7cbdf;color:#a18caf;background:#f9f7fc;font-size:13px}.prism-ink-legend{padding:19px 22px;border:1px solid #e9e2f0;border-radius:9px;background:#fff;margin-bottom:22px}.prism-ink-legend>div:first-child{display:flex;align-items:center;gap:12px;margin-bottom:14px}.prism-ink-legend strong{font-size:12px;font-weight:600;color:#766184}.prism-ink-legend small{font-size:10px;color:#9a87a6}.prism-ink-legend-items{display:flex;flex-wrap:wrap;gap:13px 22px}.prism-ink-legend-items>.prism-ink-colors{min-width:115px}.prism-ink-legend-items .prism-ink-logo{width:36px;height:36px}.prism-ink-legend-items img{width:28px;height:28px}:root{--bg: #f5f6fb;--card: #fff;--line: #e7eaf2;--text: #202b44;--muted: #7b8498;--accent: #6254c7;--accent-soft: #eeeafd;--navy: #222d4a;--gold: #e8c786;--good: #2f6fd6;--bad: #d64545;--nav-h: 60px;font-family:Noto Sans JP,system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg);font-size:15px;line-height:1.5}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:default}:focus-visible{outline:3px solid #b8b0ea;outline-offset:2px}h1,h2,h3{margin:0 0 8px;line-height:1.3}h2{font-size:18px}h3{font-size:16px}.muted{color:var(--muted)}.small{font-size:12px}.error{color:var(--bad);background:#fdeeee;border-radius:8px;padding:8px 12px}.notice{background:var(--accent-soft);border-radius:8px;padding:8px 12px;font-size:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px}.stack>*+*{margin-top:12px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.spacer{flex:1}label{display:block;font-size:13px;color:var(--muted)}label>input,label>select,label>textarea{display:block;width:100%;margin-top:4px}input,select,textarea{border:1px solid var(--line);border-radius:8px;padding:9px 10px;background:#fff;min-height:42px}button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 14px;min-height:42px}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.link{border:0;background:none;color:var(--accent);padding:4px;min-height:0}button.small{min-height:32px;padding:4px 10px;font-size:13px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff}.seg button{border:0;border-radius:0;min-height:36px;padding:6px 12px;font-size:14px}.seg button+button{border-left:1px solid var(--line)}.seg button.on{background:var(--accent);color:#fff}.chip{display:inline-block;font-size:12px;padding:2px 8px;border-radius:99px;background:#eef0f7;color:var(--muted)}.brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:700;letter-spacing:1.5px;margin:0}.brand span{color:var(--accent);font-weight:500}.brand-logo{width:40px;height:40px;object-fit:contain;flex:none}.brand small{display:block;font-size:9px;letter-spacing:2px;font-weight:500;color:var(--muted);margin-top:2px}.login{min-height:100vh;display:grid;place-items:center;padding:16px;background:radial-gradient(ellipse at 10% 0%,#e4e1fa,transparent 60%),var(--bg)}.login-card{width:100%;max-width:380px;display:grid;gap:14px}.shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:10px;min-height:60px;padding:8px 14px;background:#fff;border-bottom:1px solid var(--line)}.topbar .brand{display:flex;align-items:center;gap:10px;color:var(--text);flex:none}.topbar .brand-logo{width:36px;height:36px}.topbar .brand-text{font-size:14px;letter-spacing:1.2px;line-height:1.2}.topbar .brand-text small{display:block;margin-top:2px}.menu-btn{border:0;background:none;padding:6px;min-height:0;color:var(--text);display:grid;place-items:center}.topnav{display:none}.topnav.open{display:grid;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:8px 12px 12px;gap:4px;box-shadow:0 8px 20px #281e501a}.topnav button{display:flex;align-items:center;gap:12px;border:0;background:none;font-size:15px;padding:11px 12px;border-radius:10px;color:var(--text);text-align:left}.topnav button .icon{width:22px;text-align:center;color:var(--muted)}.topnav button.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.topnav button.active .icon{color:var(--accent)}.set-switch{display:flex;align-items:center;gap:8px;min-width:0}.set-switch>span{font-size:12px;color:var(--muted)}.set-switch select{min-width:0;max-width:220px;margin:0}@media (min-width: 900px){.set-switch select{min-width:150px}}.side-rail{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:10px;position:sticky;top:60px;z-index:20;width:100%;min-height:44px;padding:8px 16px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:#fff;color:var(--text);font-size:14px;font-weight:600;box-shadow:0 2px 6px #281e5014}.side-rail svg{flex:none;transform:rotate(90deg)}.rail-text{font-size:14px;letter-spacing:1px}.rail-count{margin-left:auto;font-size:13px;font-weight:500;color:var(--muted)}.side-rail:hover{background:var(--accent-soft);color:var(--accent)}.side-rail .badge{margin:0}.body.with-side>.main{padding-top:0}.badge{margin:0}} .badge{margin-left:6px;min-width:18px;padding:0 5px;border-radius:99px;background:var(--accent);color:#fff;font-size:11px;font-weight:700;display:inline-block;text-align:center}.user{display:flex;align-items:center;gap:8px;flex:none}.user .avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);font-weight:700;flex:none}.user .who{display:none;min-width:0}.user .who strong{font-size:13px;display:block;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user .who span{font-size:11px;color:var(--muted)}.user .logout{border:0;background:none;padding:6px;min-height:0;color:var(--muted);display:grid;place-items:center}.user .logout:hover{color:var(--accent)}.main{padding:0 16px 40px;min-width:0;max-width:1100px}.content{padding-top:14px}.content>*+*{margin-top:14px}.error[role=alert]{margin-top:12px}.filter-side{position:fixed;z-index:50;top:60px;left:0;right:0;max-height:calc(100vh - 60px);background:#fff;border-bottom:1px solid var(--line);border-radius:0 0 16px 16px;overflow-y:auto;padding:14px 16px 22px;transform:translateY(-110%);visibility:hidden;transition:transform .2s ease,visibility .2s}.filter-side.open{transform:none;visibility:visible;box-shadow:0 12px 30px #281e5040}.side-backdrop{position:fixed;top:60px;right:0;bottom:0;left:0;z-index:40;background:#1e183c59}.side-backdrop[hidden]{display:none}.fp{display:grid;gap:8px}.fp-head{display:flex;align-items:center;gap:10px}.fp-head{flex-wrap:nowrap;white-space:nowrap}.fp-head h2{font-size:17px;margin:0}.fp-count{font-size:13px;padding:3px 10px;border-radius:99px;background:var(--accent-soft);white-space:nowrap}.fp-group{display:grid;gap:4px;padding-top:8px;border-top:1px solid var(--line)}.fp-title{font-size:12px;font-weight:700;color:var(--muted);letter-spacing:.5px}.fp .pair-chips{gap:4px;padding:0}.fp .pair-chip{min-height:30px;padding:1px 9px 1px 5px;font-size:12px}.fp .pair-chip .prism-ink-logo{width:20px;height:20px}.fp .pair-chip .prism-ink-logo img{width:14px;height:14px}.fp .seg button{min-height:28px;padding:1px 9px;font-size:13px}.fp-inks{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.ink-n{font-size:11px;line-height:1;color:var(--muted)}.ink-btn.on .ink-n{color:var(--accent);font-weight:700}.ink-btn{flex:none;width:auto;display:inline-flex;flex-direction:column;align-items:center;gap:2px;padding:3px 5px;min-height:0;border-radius:10px;background:#fff}.ink-btn.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}.ink-btn .prism-ink-logo{width:28px;height:28px;border-radius:8px}.ink-btn .prism-ink-logo img{width:20px;height:20px}@media (max-width: 899px){.topbar .brand-text,.set-switch>span,.topbar>.spacer{display:none}.set-switch{flex:1}.set-switch select{max-width:none;width:100%}.topbar{gap:8px;padding:8px 12px}}@media (min-width: 900px){.topbar{padding:8px 20px;gap:14px}.side-backdrop{display:none}.body.side-hidden .filter-side{display:none}.body.with-side{display:grid;grid-template-columns:300px 34px minmax(0,1fr);align-items:start}.body.with-side.side-hidden{grid-template-columns:34px minmax(0,1fr)}.fp-close{display:none}.filter-side{position:sticky;top:61px;left:auto;right:auto;max-height:none;border-radius:0;border-bottom:0;z-index:5;width:auto;height:calc(100vh - 61px);transform:none;transition:none;border-right:1px solid var(--line);padding:12px 14px 20px}.filter-side.open{box-shadow:none}.body.with-side>.main{padding:0 24px 40px}.main{padding:0 24px 40px}.side-rail{flex-direction:column;justify-content:center;gap:8px;top:76px;width:auto;min-height:0;padding:12px 6px;border:1px solid var(--line);border-left:0;border-radius:0 10px 10px 0;box-shadow:0 1px 4px #281e5014}.side-rail svg{transform:none}.rail-text{writing-mode:vertical-rl;text-orientation:upright;letter-spacing:4px}.rail-count{display:none}.filter-side{visibility:visible}}@media (min-width: 1100px){.menu-btn{display:none}.topbar{padding:8px 24px;gap:16px}.topnav,.topnav.open{display:flex;position:static;box-shadow:none;border:0;padding:0;gap:2px;background:none;margin-left:8px}.topnav button{padding:9px 14px;font-size:14px;white-space:nowrap}.topnav button:hover{background:#f4f5fb}.user .who{display:block}.main{padding:0 28px 40px}}.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}table{border-collapse:collapse;width:100%;font-size:14px}th,td{padding:8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}th{font-size:12px;color:var(--muted);font-weight:600;white-space:nowrap}td.num,th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.rate{font-weight:700;font-variant-numeric:tabular-nums}.rate.good{color:var(--good)}.rate.bad{color:var(--bad)}.faint{opacity:.45}.cell{border-radius:8px;padding:6px;text-align:center;min-width:64px;border:0;width:100%;background:#f1f3f9}.list-item{display:flex;align-items:center;gap:10px;padding:12px;border-bottom:1px solid var(--line);width:100%;background:none;border-radius:0;border-left:0;border-right:0;border-top:0;text-align:left}.bar{height:6px;border-radius:3px;background:#ecebf2;overflow:hidden}.bar>span{display:block;height:100%}.arch{display:inline-flex;align-items:center;gap:6px}.arch .prism-ink-logo{width:22px;height:22px;border-radius:5px}.arch .prism-ink-logo img{width:17px;height:17px}.grow{flex:1;min-width:0}.list-rate{display:grid;gap:4px;justify-items:end;width:110px;flex:none}.list-rate .bar{width:100%}.matrix td{padding:2px}.legend .rate{font-weight:600}.mt{margin-top:16px}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1e192d59;z-index:50;display:flex;align-items:flex-end;justify-content:center}.sheet{background:#fff;width:100%;max-width:640px;max-height:88vh;overflow-y:auto;border-radius:16px 16px 0 0;padding:16px 16px calc(24px + env(safe-area-inset-bottom))}.sheet-head{flex-wrap:nowrap;align-items:flex-start;position:sticky;top:-16px;background:#fff;padding:4px 0 8px;margin-top:-4px;z-index:1}@media (min-width: 900px){.sheet-backdrop{align-items:center}.sheet{border-radius:16px}}.sheet-head h2{flex:1}.sheet-head .spacer{display:none}.block{display:block}.card-name{font-weight:600;margin-right:6px}.delta{font-size:17px;flex:none;min-width:64px;text-align:right}.card-row.few .card-name{opacity:.6}details summary{cursor:pointer;color:var(--accent);margin:10px 0}label.check{display:inline-flex;align-items:center;gap:6px;color:var(--text);font-size:14px}label.check input{min-height:0;width:18px;height:18px;margin:0}.history{padding:0 16px}.game{padding:14px 0;border-bottom:1px solid var(--line)}.game:last-of-type{border-bottom:0}.game-head{margin-bottom:8px}.result{font-weight:700}.result.win{color:var(--good)}.result.loss{color:var(--bad)}.game-sides{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:stretch}.game-sides>.side{min-width:0;display:grid;gap:6px;align-content:start;border-radius:10px;padding:10px}.side-me{background:#f1f5fd;border:1px solid #dbe5f8}.side-opp{background:#fdf3f3;border:1px solid #f4dcdc}.vs-mark{align-self:center;font-size:12px;font-weight:700}@media (max-width: 640px){.game-sides{grid-template-columns:1fr}.vs-mark{display:none}}.game-sides select{width:100%;min-width:0}.side-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted)}.side-label strong{font-size:13px;color:var(--text)}.side-me .side-label strong{color:#2f6fd6}.side-opp .side-label strong{color:#c44a4a}.side-label .prism-ink-logo{width:20px;height:20px;border-radius:5px}.side-label .prism-ink-logo img{width:15px;height:15px}.more{width:100%;margin:12px 0 16px}.count{display:inline-block;width:22px;font-weight:700;color:var(--accent)}ul.plain{list-style:none;padding:0;margin:0}ul.plain li{padding:6px 0;border-bottom:1px solid var(--line);display:flex;gap:6px;align-items:center}.card-img{display:block;border-radius:6px;background:#eeedf3;object-fit:cover;aspect-ratio:5 / 7}.card-img.thumb{width:44px;flex:none;border-radius:4px}.card-img.hero{width:100%;max-width:180px;margin:0 auto;border-radius:12px;box-shadow:0 4px 16px #1e192d2e}.card-tile{border:3px solid #c9cde0;background:#fafbfe;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:6px;text-align:center;overflow:hidden}.card-tile .tile-name{font-size:13px;font-weight:600;line-height:1.3}.card-tile .tile-ink{font-size:11px;margin-top:4px}.card-tile.thumb .tile-name{font-size:8px}.card-tile.thumb .tile-ink{display:none}.card-row{align-items:center}.card-row-head{display:flex;align-items:center;padding:0 12px 6px;border-bottom:1px solid var(--line)}.delta-col{flex:none;width:104px;display:grid;gap:4px;justify-items:end}.delta-col .delta{min-width:0}.delta-scale{width:104px;display:flex;justify-content:space-between}.delta-bar{position:relative;display:block;width:100%;height:8px;background:#f1f0f5;border-radius:4px}.delta-axis{position:absolute;left:50%;top:-2px;bottom:-2px;width:1px;background:#a9a3b8}.delta-fill{position:absolute;top:0;bottom:0;border-radius:4px}.sheet.wide{max-width:1040px}.dash{display:grid;gap:20px}.stat-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat-tile{background:#f6f7fb;border-radius:10px;padding:8px 10px;display:grid;gap:2px;min-width:0}.stat-value{font-size:20px}.heatmap{table-layout:fixed}.heatmap th:first-child{width:52px}.heatmap td{padding:3px}.heat{display:grid;place-items:center;width:100%;min-height:44px;border:0;border-radius:6px;padding:4px;background:#f1f3f9;line-height:1.2}.heat.on{outline:2px solid var(--text);outline-offset:-2px}.heat.empty{color:var(--muted);background:none}.heat-rate{font-weight:700;font-size:15px;font-variant-numeric:tabular-nums}.heat-n{font-size:11px;color:var(--muted)}.heat.few .heat-rate{color:var(--muted);font-weight:600}.heat-caption{min-height:1.5em}.chart-box{width:100%;min-width:0}.chart-tip{background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:13px;box-shadow:0 2px 8px #1e192d1f}@media (min-width: 900px){.dash{grid-template-columns:280px 1fr;align-items:start}.dash-side{position:sticky;top:0}.stat-tiles{grid-template-columns:1fr}.card-img.hero{max-width:260px}}.kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.kpis .kpi:first-child{grid-column:span 2}.kpi{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:2px;align-content:start}.kpi-value{font-size:24px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}.kpi details summary{margin:2px 0 0}.tiny{font-size:11px}.dash-grid{display:grid;gap:14px}.dash-grid h3,.content>.card>h3{margin-bottom:2px}.empty-chart{display:grid;place-items:center;min-height:120px;background:#f6f7fb;border-radius:8px;text-align:center;padding:12px}.top-cards h4{margin:0 0 6px;font-weight:600}.top-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.top-card{display:grid;justify-items:center;gap:2px;padding:4px;border:0;background:#f6f7fb;border-radius:8px;min-height:0}.top-card .rate{font-size:13px}.card-img.mini{width:100%;max-width:64px;border-radius:4px}.curve-wrap{margin:0 -16px;padding:0 16px}.curve{font-size:13px;width:auto;min-width:100%}.curve th,.curve td{padding:4px}.curve .sticky{position:sticky;left:0;background:#fff;z-index:1;width:112px;min-width:112px;max-width:112px;overflow:hidden;white-space:normal;box-shadow:1px 0 0 var(--line)}.curve tr.clickable{cursor:pointer}.curve tr.clickable:hover .sticky{background:#f6f7fb}.curve-card{display:flex;align-items:center;gap:6px;min-width:0}.card-img.tiny-img{width:26px;flex:none;border-radius:3px}.curve-name{flex:1;min-width:0;font-weight:500;font-size:11px;line-height:1.25;overflow:hidden;display:-webkit-box;word-break:break-all;-webkit-line-clamp:2;-webkit-box-orient:vertical}.curve-cell{text-align:center;min-width:26px;font-weight:600;font-variant-numeric:tabular-nums;border-left:2px solid #fff}@media (min-width: 900px){.kpis{grid-template-columns:repeat(5,1fr)}.kpis .kpi:first-child{grid-column:auto}.dash-grid{grid-template-columns:1fr 1fr}.curve .sticky{width:240px;min-width:240px;max-width:240px}.curve-name{font-size:12px;word-break:normal}}.arch-select{display:grid;gap:4px;min-width:0}.quick-create{display:grid;gap:6px;background:var(--accent-soft);border-radius:8px;padding:8px}.quick-create input{min-height:38px;width:100%;min-width:0}.quick-create .row button{flex:1 1 auto}.picker-results{max-height:360px;overflow-y:auto;border:1px solid var(--line);border-radius:8px}.picker-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:6px 8px;min-height:0;background:#fff}.picker-item:disabled{opacity:.45}.picker-name{display:block;font-size:13px;font-weight:600}.ink-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;vertical-align:middle}.sig-row{flex-wrap:nowrap}.picker input[type=search]{width:100%}.pair-chips{display:flex;flex-wrap:wrap;gap:6px;padding:4px 0 2px}.pair-chip{display:inline-flex;align-items:center;gap:6px;flex:none;border-radius:99px;padding:4px 12px 4px 8px;min-height:44px;font-size:13px}.pair-chip.on{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.pair-chip .prism-ink-logo{width:24px;height:24px;border-radius:6px}.pair-chip .prism-ink-logo img{width:18px;height:18px}.target-title{font-size:17px;margin:4px 2px 0}.target-title .muted{font-weight:400;margin-left:4px}.target-chip{display:inline-block;font-size:12px;font-weight:600;color:var(--accent);background:var(--accent-soft);border-radius:99px;padding:2px 10px;margin:0}.breakdown{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0}.opp-filter{border-top:1px dashed var(--line);padding-top:10px;display:grid;gap:6px}.opp-filter .row>label{min-width:140px}.target-title>span:not(.muted){display:inline-block;margin-right:6px}.target-title .vs{color:var(--muted)}.matrix th.opp-head{vertical-align:bottom;white-space:normal;font-weight:600;color:var(--text)}.matrix th.opp-head .arch{flex-direction:column;align-items:center;gap:2px;text-align:center}.vs-heading{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}.filters{display:flex;flex-wrap:wrap;gap:8px}.replay-link{white-space:nowrap;color:var(--accent);text-decoration:none;font-weight:600}.auto-badge{background:#e7effc;color:var(--good);font-weight:600}.suggest{display:grid;gap:6px;margin-top:2px}.suggest .suggest-btn{text-align:left;background:#fff}.suggest-btn{min-height:36px;border-color:var(--accent);color:var(--accent)}.basis{margin:0}.target-title .target{display:inline-flex;align-items:center;gap:6px;vertical-align:middle}.target-title .vs .target{margin-left:6px;color:var(--text)}.pair-chip .arch{gap:4px}.chip .arch .prism-ink-logo{width:18px;height:18px;border-radius:4px}.chip .arch .prism-ink-logo img{width:14px;height:14px}.deck-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}@media (min-width: 1100px){.deck-grid{grid-template-columns:repeat(4,1fr)}}.deck-card{display:grid;gap:8px;align-content:start;border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff;min-width:0}.deck-cover{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.deck-cover .card-img.mini{max-width:none}.deck-meta{flex-wrap:nowrap;gap:8px}.deck-view{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px}.deck-view li{display:grid;gap:4px;align-content:start}.deck-view-img{position:relative;display:block}.deck-view-img .card-img{width:100%}.count-badge{position:absolute;right:4px;bottom:4px;background:#1e192dcc;color:#fff;font-size:12px;font-weight:700;padding:1px 6px;border-radius:99px}.sheet-head .arch .prism-ink-logo{width:28px;height:28px}.sheet-head .arch .prism-ink-logo img{width:22px;height:22px}.deck-card.faint{opacity:.55}.arch-cover{display:grid;place-items:center;gap:6px;aspect-ratio:20 / 7;border-radius:8px;background:#f6f4fa}.arch-cover .prism-ink-logo{width:40px;height:40px;border-radius:9px}.arch-cover .prism-ink-logo img{width:32px;height:32px}.deck-card>.arch{font-weight:600;min-width:0;flex-wrap:wrap}.deck-actions{gap:6px;flex-wrap:nowrap}.deck-cover .deck-view-img .count-badge{right:2px;bottom:2px;font-size:10px;padding:0 4px}.steps{list-style:none;counter-reset:step;margin:0;padding:0;display:grid;gap:14px}.steps>li{counter-increment:step;position:relative;display:grid;gap:6px;padding-left:40px;justify-items:start;opacity:.6}.steps>li.now,.steps>li.done{opacity:1}.steps>li:before{content:counter(step);position:absolute;left:0;top:0;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#e8ebf4;color:var(--muted);font-weight:700;font-size:14px}.steps>li.now:before{background:var(--accent);color:#fff}.steps>li.done:before{content:"✓";background:#dff2e6;color:#2a8a4f}.file-pick{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;width:100%}.file-slot{position:relative;display:grid;gap:4px;padding:12px 14px;border:1.5px dashed #cfc7e0;border-radius:10px;background:#faf9fd;cursor:pointer;min-width:0;overflow-wrap:anywhere}.file-slot.picked{border-style:solid;border-color:#9ad0ae;background:#f3fbf6}.file-slot-label{font-weight:600;font-size:14px;color:var(--text)}.file-slot input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;min-height:0}.count-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.count-tile{display:grid;gap:2px;align-content:start;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff}.count-tile strong{font-size:26px;line-height:1.2}.count-tile.is-new{border-color:var(--accent);background:var(--accent-soft)}.count-tile.zero{opacity:.55}.how-to{margin:4px 0 8px;padding-left:18px;display:grid;gap:2px}.heat-legend{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0 0 8px;color:var(--muted)}.heat-legend .swatch{width:14px;height:14px;border-radius:4px;margin-left:8px;display:inline-block}.heat-legend .swatch:first-child{margin-left:0}.swatch.good{background:#2f6fd659}.swatch.bad{background:#d6454559}.swatch.few{background:#f1f3f9;border:1px dashed #c9cde0}.filter-card{display:grid;gap:12px;background:#fbfafd}.filter-head{flex-wrap:nowrap}.filter-head h2{font-size:18px}.filter-body[hidden]{display:none}.filter-body{border-top:1px solid var(--line);padding-top:12px}.target-title{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:12px;padding:10px 14px;margin:4px 0 0}.kpis{gap:10px}.kpi{position:relative;overflow:hidden;padding:12px 14px;border-top:3px solid var(--accent);box-shadow:0 1px 2px #1e192d0d}.kpi:nth-child(2){border-top-color:#2f6fd6}.kpi:nth-child(3){border-top-color:#49aa8b}.kpi:nth-child(4){border-top-color:#d4a243}.kpi:nth-child(5){border-top-color:#8071d4}.kpi-value{font-size:28px}.dash-grid{gap:16px}.dash-grid>.card{box-shadow:0 1px 2px #1e192d0d}.dash-grid>.card>h3,.content>.stack>.card>h3{display:flex;align-items:center;gap:8px}.dash-grid>.card>h3:before,.content>.stack>.card>h3:before{content:"";width:4px;height:16px;border-radius:2px;background:var(--accent)}.breakdown{background:#fff;border:1px solid var(--line);border-radius:12px;padding:8px 12px}.main .content{background:transparent}.filter-toggle{display:inline-flex;align-items:center;gap:6px}.chevron{transition:transform .15s}.chevron.up{transform:rotate(180deg)}.matrix-card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:12px;overflow-x:auto}.sort-select{display:inline-flex;align-items:center;gap:6px}.sort-select select{min-height:36px;padding:4px 8px}.matrix{width:100%;table-layout:fixed;border-collapse:collapse}.matrix th,.matrix td{padding:2px;text-align:center;overflow:hidden}.matrix th:first-child{text-align:left}.matrix th .arch{flex-wrap:wrap;justify-content:center;font-size:11px;line-height:1.25;gap:2px 4px;word-break:break-all}.matrix th:first-child .arch{justify-content:flex-start}.matrix .prism-ink-colors{gap:2px;flex-wrap:wrap;justify-content:center}.matrix .prism-ink-logo{width:20px;height:20px;border-radius:5px}.matrix .prism-ink-logo img{width:15px;height:15px}.matrix button.cell{width:100%;padding:4px 1px;min-height:40px;border:0;border-radius:6px;display:grid;justify-items:center;line-height:1.15}.matrix .cell .rate{font-size:13px;font-weight:700}.matrix .cell .muted.small{font-size:10px}.matrix td .rate+.muted,.matrix td .muted{font-size:10px}.matrix td>span:not(.muted)>span{display:block}@media (max-width: 640px){.matrix .prism-ink-logo{width:15px;height:15px;border-radius:4px}.matrix .prism-ink-logo img{width:11px;height:11px}.matrix th .arch>span:not(.prism-ink-colors):not(.chip){display:none}.matrix .cell .rate{font-size:11px}.matrix .cell .muted.small{font-size:9px}.matrix-card{padding:6px}}.matrix button.cell>span{display:grid;justify-items:center}.matrix button.cell .muted.small{white-space:nowrap}.sort-select{white-space:nowrap;flex-wrap:nowrap}@media (max-width: 640px){.matrix .cell .rate{font-size:10px;letter-spacing:-.3px}.matrix button.cell{min-width:0;padding:4px 0;overflow:hidden}.matrix button.cell .muted{display:none}.matrix td.num .muted{font-size:9px}}.hist-filters{display:grid;gap:0;border:1px solid var(--line);border-radius:12px;background:#fbfcfe}.hf-row{display:grid;grid-template-columns:1fr;gap:6px;padding:12px 14px}.hf-row+.hf-row{border-top:1px solid var(--line)}.hf-label{font-size:13px;font-weight:700;color:var(--text)}.hf-body{display:grid;gap:8px;min-width:0;justify-items:start}.hf-inline{display:flex;flex-wrap:wrap;gap:8px}@media (min-width: 900px){.hf-row{grid-template-columns:150px 1fr;align-items:start}}.hist-result{padding-top:4px}.hist-result strong{font-size:16px}.part-head{display:flex;align-items:center;gap:12px;margin-top:26px;padding-bottom:8px;border-bottom:2px solid var(--accent-soft);scroll-margin-top:112px}.part-head h2{margin:0;font-size:18px}.part-head p{margin:0}.part-no{flex:none;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;font-weight:700}.jump-nav{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--line)}.jump-nav::-webkit-scrollbar{display:none}.jump-nav button{flex:none;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;min-height:0;padding:6px 12px;font-size:13px;color:var(--muted);white-space:nowrap;margin-bottom:-1px}.jump-nav button:hover{color:var(--accent);border-bottom-color:var(--accent)}.dash-grid>.card>h3:before{display:none}.best-mark{color:#c8942b;font-weight:700;margin:0 2px}.heat-rate{white-space:nowrap}.ink-picks{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.ink-pick{display:grid;justify-items:center;gap:2px;min-width:64px;padding:8px 6px;border-radius:10px;min-height:0}.ink-pick.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.ink-pick:disabled{opacity:.35}.ink-pick .prism-ink-logo{width:34px;height:34px;border-radius:8px}.ink-pick .prism-ink-logo img{width:26px;height:26px}.ink-none{display:grid;place-items:center;width:34px;height:34px;font-size:12px;color:var(--muted)}.member-list li{padding:8px 0}button.danger{color:var(--bad);border-color:#f0c9c9}button.danger-fill{background:var(--bad);border-color:var(--bad)}.ev{font-size:11px;letter-spacing:1px;white-space:nowrap}.ev-1{color:#b08a3a}.ev-2{color:#6a7fc9}.ev-3{color:#2f6fd6}.hand-card{display:inline-flex;align-items:center;gap:6px;margin-right:8px;min-width:0}.hand-picks{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px;max-height:340px;overflow-y:auto;padding:2px}.hand-pick{display:grid;justify-items:center;gap:3px;padding:6px 4px;border-radius:8px;min-height:0;text-align:center}.hand-pick .tiny{line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.hand-pick.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}.plays{list-style:none;counter-reset:p;margin:0;padding:0;display:grid;gap:6px}.plays li{counter-increment:p;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;flex-wrap:wrap}.plays li:before{content:counter(p);flex:none;width:22px;height:22px;border-radius:50%;background:#eef0f7;display:grid;place-items:center;font-size:12px;font-weight:700;color:var(--muted)}.plays li.best{border-color:#b7cdf3;background:#f3f8ff}.plays li.best:before{background:var(--accent);color:#fff}.turn-recs{list-style:none;margin:0;padding:0;display:grid;gap:8px}.turn-recs>li{display:grid;grid-template-columns:64px 1fr;gap:10px;align-items:start;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.turn-no{display:grid;justify-items:center;font-size:24px;font-weight:700;color:var(--accent);line-height:1.1}.turn-no small{font-size:10px;color:var(--muted);font-weight:500}.turn-body{display:grid;gap:6px;min-width:0}.rec{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;padding:4px 8px;border-radius:8px}.rec.best{background:#f3f8ff;box-shadow:inset 0 0 0 1px #b7cdf3}.rec-rates{display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 6px}.book-search{border-top:1px solid var(--line);padding-top:8px}.book-search .stack{margin-top:8px}button.hand-card.as-link{border:0;background:none;padding:2px 4px;min-height:0;text-align:left;border-radius:6px}button.hand-card.as-link:hover{background:var(--accent-soft)}button.hand-card.as-link:hover span{color:var(--accent)}.dup-chip{background:#fdf1db;color:#9a6a12;margin-left:6px}.vs-row{display:grid;grid-template-columns:minmax(120px,200px) 1fr 74px;gap:12px;align-items:center;width:100%;padding:4px 10px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;text-align:left;min-height:0}.vs-row.on-row{background:var(--accent-soft)}.vs-row:disabled{cursor:default;opacity:1}.vs-row.few .vs-bar>span{opacity:.6}.vs-name{min-width:0;overflow-wrap:anywhere}.vs-name .arch{flex-wrap:wrap}.vs-bar{position:relative;height:12px;background:#eceff7;border-radius:6px;overflow:hidden}.vs-bar>span{display:block;height:100%;border-radius:6px;min-width:3px}.vs-bar:after{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:#202b4447}.vs-num{display:flex;align-items:baseline;justify-content:flex-end;gap:6px;line-height:1.2}.vs-rate{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}@media (max-width: 640px){.vs-row{grid-template-columns:1fr 84px;gap:4px 8px}.vs-name{grid-column:1 / -1}.vs-bar{grid-column:1}.vs-num{grid-column:2}}.loss-block{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fbfcfe;min-width:0}.loss-block h4{margin:0;font-size:14px}.loss-card{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border:0;border-radius:8px;background:#fff;text-align:left;min-height:0;flex-wrap:wrap}.loss-card:hover{background:var(--accent-soft)}.loss-card-name{display:flex;align-items:center;gap:6px;min-width:120px;flex-wrap:wrap}.loss-card-rates{display:grid;gap:0;text-align:right;line-height:1.3}.skip-mark{width:26px;height:36px;border-radius:3px;background:#eceff7;color:var(--muted);display:grid;place-items:center;flex:none;font-weight:700}.loss-card:disabled{cursor:default;opacity:1}.loss-card:disabled:hover{background:#fff}.loss-frames{display:grid;gap:16px}@media (min-width: 1000px){.loss-frames{grid-template-columns:1fr 1fr;align-items:start}}.frame{border-radius:14px;border:2px solid;overflow:hidden;background:#fff;min-width:0}.frame-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:10px 14px;color:#fff}.frame-head strong{font-size:17px}.frame-head .frame-sub{opacity:.9}.frame-body{padding:12px}.frame-loss{border-color:#d96b6b}.frame-loss .frame-head{background:#d64545}.frame-loss .frame-body{background:#fff8f7}.frame-win{border-color:#6f9be0}.frame-win .frame-head{background:#2f6fd6}.frame-win .frame-body{background:#f5f9ff}.frame .loss-block{background:#fff}a.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 14px;min-height:42px;text-decoration:none;color:var(--text)}a.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.duels-box{border:1px solid var(--line);border-radius:12px;padding:14px;background:#fbfcfe}.duels-box h3{margin:0;display:flex;align-items:center;gap:8px}.duels-box h3 .chip{background:var(--accent-soft);color:var(--accent)}.file-import{border-top:1px solid var(--line);padding-top:10px}.file-import>summary{margin-top:0}.range-box{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px 14px}.range-box label{display:grid;gap:4px;color:var(--text)}.range-box select,.range-box input{width:auto;min-height:36px;margin:0}.matrix{min-width:calc(190px + 80px + var(--cols, 8) * 48px)}.matrix th:first-child{width:190px;position:sticky;left:0;z-index:2;background:#fff;box-shadow:1px 0 0 var(--line)}.matrix th.num,.matrix td.num{width:80px}@media (max-width: 640px){.matrix{min-width:calc(96px + 56px + var(--cols, 8) * 36px)}.matrix th:first-child{width:96px}.matrix th.num,.matrix td.num{width:56px}}@media (max-width: 899px){.fp .ink-btn .prism-ink-logo{width:34px;height:34px}.fp .ink-btn .prism-ink-logo img{width:24px;height:24px}.fp .ink-btn{padding:4px 6px}.fp .seg button,.fp .pair-chip{min-height:38px}.fp-inks{gap:6px}}.float-top{position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:25;width:44px;height:44px;min-height:0;padding:0;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--accent);border:1px solid var(--line);box-shadow:0 2px 8px #281e501f;opacity:.4;transition:opacity .25s}.float-top.down{opacity:.12}.float-top.up{opacity:.6}.float-top:hover,.float-top:focus-visible,.float-top:active{opacity:1}
