:root{--bg:#050a16;--surface:#101a30;--surface-2:#1a2847;--surface-3:#26385d;--border:#2e4269;--border-soft:#1f2d4a;--text:#f2f5fd;--text-dim:#9fb0d6;--text-faint:#6d7fa8;--accent:#3b82f6;--accent-2:#8b5cf6;--accent-3:#2dd4bf;--ok:#22c55e;--warn:#f59e0b;--danger:#ef4444;--aurora:linear-gradient(115deg, #2dd4bf 0%, #3b82f6 46%, #8b5cf6 100%);--radius:14px;--radius-sm:9px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0}body{background-image:radial-gradient(1200px 560px at 88% -14%,#2dd4bf21,#0000 60%),radial-gradient(1000px 520px at 50% -10%,#3b82f62e,#0000 62%),radial-gradient(900px 460px at -8% 4%,#8b5cf62b,#0000 58%);background-attachment:fixed}.pw-card,.pw-side,.pw-subset{box-shadow:inset 0 1px #ffffff0a,0 8px 24px #02050e73}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}input,select{font:inherit}#root{max-width:1180px;margin:0 auto;padding:18px 16px 64px}.pw-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.pw-brand{align-items:baseline;gap:10px;display:flex}.pw-logo{letter-spacing:-.03em;font-size:30px;font-weight:800;line-height:1}.pw-logo span{background:var(--aurora);color:#0000;-webkit-background-clip:text;background-clip:text}.pw-kicker{text-transform:uppercase;letter-spacing:.16em;color:var(--text-faint);font-size:11px;font-weight:700}.pw-set-name{color:var(--text-dim);margin-top:2px;font-size:13px}.pw-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.pw-stats{flex-wrap:wrap;align-items:stretch;gap:0;display:flex}.pw-stat{flex:none;padding:0 20px}.pw-stat+.pw-stat{border-left:1px solid var(--border)}.pw-stat:first-child{padding-left:0}.pw-stat-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);white-space:nowrap;margin-bottom:3px;font-size:11px;font-weight:700}.pw-stat-value{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:20px;font-weight:800}.pw-stat-sub{color:var(--text-dim);margin-top:2px;font-size:11.5px}.pw-progress-track{background:#050a168c;border-radius:99px;height:8px;margin-top:14px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff12}.pw-progress-fill{background:var(--aurora);border-radius:99px;height:100%;transition:width .4s}.pw-progress-fill.done{background:linear-gradient(90deg, #16a34a, var(--ok))}.pw-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin:18px 0 14px;display:flex}.pw-spacer{flex:auto}.pw-input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);height:34px;color:inherit;padding:0 12px;font-size:14px}.pw-input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.pw-search{width:230px}.pw-btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);min-height:34px;color:var(--text-dim);white-space:nowrap;padding:7px 13px;font-size:13px}.pw-btn:hover{background:var(--surface-3);color:var(--text)}.pw-btn.is-on,.pw-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.pw-seg{border:1px solid var(--border);border-radius:var(--radius-sm);display:inline-flex;overflow:hidden}.pw-seg .pw-btn{border:none;border-left:1px solid var(--border);border-radius:0}.pw-seg .pw-btn:first-child{border-left:none}.pw-subsets{flex-direction:column;gap:10px;display:flex}.pw-subset{background:var(--surface);border:1px solid color-mix(in srgb, var(--cat,var(--border)) 26%, var(--border));border-radius:var(--radius);overflow:hidden}.pw-subset-head{text-align:left;background:linear-gradient(100deg, color-mix(in srgb, var(--cat,var(--accent)) 26%, transparent), color-mix(in srgb, var(--cat,var(--accent)) 7%, transparent) 46%, transparent 78%);border-bottom:1px solid color-mix(in srgb, var(--cat,var(--accent)) 22%, transparent);align-items:center;gap:11px;width:100%;padding:13px 15px;display:flex}.pw-subset-head:hover{background:linear-gradient(100deg, color-mix(in srgb, var(--cat,var(--accent)) 38%, transparent), color-mix(in srgb, var(--cat,var(--accent)) 12%, transparent) 46%, transparent 78%)}.pw-subset-chip{background:var(--cat,var(--accent));width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--cat,var(--accent)) 22%, transparent);border-radius:3px;flex-shrink:0}.pw-chevron{width:8px;color:var(--text-dim);flex-shrink:0;justify-content:center;align-items:center;font-size:10px;line-height:1;display:inline-flex}.pw-subset-meta{color:var(--text-faint);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:14px;margin-left:auto;font-size:11px;display:flex}.pw-subset-count{color:var(--text-dim);letter-spacing:-.01em;font-size:13.5px;font-weight:800}.pw-subset-count.has-some{color:#fff}.pw-subset-count.is-done{color:var(--ok)}.pw-mini-track{background:var(--surface-3);border-radius:3px;width:72px;height:10px;position:relative;overflow:hidden;-webkit-mask-image:repeating-linear-gradient(90deg,#000 0 3px,#0000 3px 5px);mask-image:repeating-linear-gradient(90deg,#000 0 3px,#0000 3px 5px)}.pw-mini-fill{background:var(--cat,var(--accent));height:100%;transition:width .3s}.pw-rows{border-top:1px solid var(--border-soft)}.pw-row{border-bottom:1px solid var(--border-soft);align-items:center;gap:12px;padding:8px 14px;display:flex}.pw-row:last-child{border-bottom:none}.pw-row:hover{background:var(--surface-2)}.pw-row.is-owned .pw-row-subject{color:var(--text)}.pw-num{font-variant-numeric:tabular-nums;width:42px;color:var(--text-faint);flex-shrink:0;font-size:12px;font-weight:600}.pw-row-subject{min-width:0;color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;font-size:13.5px;overflow:hidden}.pw-chips{flex-wrap:wrap;align-items:center;gap:5px;margin-left:auto;display:flex}.pw-chip{white-space:nowrap;border:1px solid var(--chip,var(--border));background:color-mix(in srgb, var(--chip,var(--accent)) 16%, transparent);color:var(--chip,var(--text));border-radius:99px;align-items:center;gap:5px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-flex}.pw-chip .run{opacity:.7;font-weight:500}.pw-chip .qty{font-weight:800}.pw-chip:hover{background:color-mix(in srgb, var(--chip,var(--accent)) 30%, transparent)}.pw-add{border:1px dashed var(--border);width:24px;height:24px;color:var(--text-faint);border-radius:99px;flex-shrink:0;place-items:center;font-size:15px;line-height:1;display:grid}.pw-add:hover{border-style:solid;border-color:var(--accent);color:var(--accent)}.pw-add.is-open{background:var(--accent);border-style:solid;border-color:var(--accent);color:#fff}.pw-drawer{background:var(--surface-2);border-bottom:1px solid var(--border-soft);flex-wrap:wrap;align-items:center;gap:6px;padding:10px 14px 12px 68px;display:flex}.pw-drawer-label{text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);margin-right:4px;font-size:10.5px;font-weight:700}.pw-tier-btn{border:1px solid var(--border);background:var(--surface);color:var(--text-dim);white-space:nowrap;border-radius:99px;padding:4px 10px;font-size:12px}.pw-tier-btn:hover{border-color:var(--chip,var(--accent));color:var(--text)}.pw-tier-btn.is-owned{background:color-mix(in srgb, var(--chip,var(--accent)) 22%, transparent);border-color:var(--chip,var(--accent));color:var(--chip,var(--text));font-weight:600}.pw-tier-btn .run{opacity:.65;margin-left:4px;font-size:11px}.pw-overlay{z-index:100;background:#050912b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.pw-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:min(680px,100%);max-height:86vh;display:flex;overflow:hidden}.pw-modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.pw-modal-title{font-size:15px;font-weight:700}.pw-modal-sub{color:var(--text-dim);margin-top:2px;font-size:12px}.pw-colour-tabs{border-bottom:1px solid var(--border);scrollbar-width:thin;gap:6px;padding:10px 16px;display:flex;overflow-x:auto}.pw-colour-tab{border:1px solid var(--border);background:var(--surface-2);color:var(--text-dim);white-space:nowrap;border-radius:99px;flex-shrink:0;align-items:center;gap:6px;padding:5px 11px;font-size:12px;display:inline-flex}.pw-colour-tab .dot{background:var(--chip,var(--text-faint));border-radius:99px;flex-shrink:0;width:8px;height:8px}.pw-colour-tab .run{opacity:.7;font-size:11px}.pw-colour-tab.is-active{background:color-mix(in srgb, var(--chip,var(--accent)) 24%, transparent);border-color:var(--chip,var(--accent));color:var(--text);font-weight:600}.pw-colour-tab .owned-pip{color:var(--ok);font-size:10px}.pw-modal-body{flex-wrap:wrap;align-content:flex-start;gap:8px;padding:14px 16px;display:flex;overflow-y:auto}.pw-modal-foot{border-top:1px solid var(--border);color:var(--text-dim);align-items:center;gap:10px;padding:12px 16px;font-size:12px;display:flex}.pw-close{border-radius:var(--radius-sm);width:26px;height:26px;color:var(--text-faint);place-items:center;font-size:15px;line-height:0;display:grid}.pw-close svg{width:15px;height:15px;display:block}.pw-close:hover{color:var(--text);background:var(--surface-2)}.pw-note{border-radius:var(--radius-sm);margin-bottom:14px;padding:10px 14px;font-size:13px}.pw-note.warn{background:color-mix(in srgb, var(--warn) 13%, transparent);border:1px solid color-mix(in srgb, var(--warn) 40%, transparent)}.pw-note.danger{background:color-mix(in srgb, var(--danger) 13%, transparent);border:1px solid color-mix(in srgb, var(--danger) 40%, transparent)}.pw-empty{color:var(--text-dim);padding:20px 14px;font-size:13px}.pw-toast{background:var(--ok);color:#06230f;z-index:300;border-radius:10px;padding:10px 20px;font-size:13px;font-weight:700;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}#root{max-width:1320px}.pw-shell{grid-template-columns:290px minmax(0,1fr);align-items:start;gap:20px;display:grid}.pw-side{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 12%, transparent) 0%, transparent 180px), var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;max-height:calc(100vh - 36px);padding:14px;display:flex;position:sticky;top:18px}.pw-side-brand{align-items:baseline;gap:8px;display:flex}.pw-side-set{color:var(--text-dim);border-bottom:1px solid var(--border);padding-bottom:12px;font-size:11.5px;line-height:1.35}.pw-side-overall{color:var(--text-faint);justify-content:space-between;font-size:11px;display:flex}.pw-side-overall strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:13px}.pw-nav{scrollbar-width:thin;flex:auto;min-height:0;margin:0 -6px;padding:0 6px;overflow-y:auto}.pw-nav-item{border-radius:var(--radius-sm);text-align:left;width:100%;color:var(--text-dim);border-left:2px solid #0000;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px;display:flex}.pw-nav-item:hover{background:var(--surface-2);color:var(--text)}.pw-nav-item.is-active{background:var(--surface-2);border-left-color:var(--cat,var(--accent));color:var(--text)}.pw-nav-dot{background:var(--cat,var(--accent));opacity:.55;border-radius:2px;flex-shrink:0;width:8px;height:8px}.pw-nav-item:hover .pw-nav-dot,.pw-nav-item.is-started .pw-nav-dot{opacity:1}.pw-nav-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.pw-nav-count{color:var(--text-faint);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px}.pw-nav-item.is-done,.pw-nav-item.is-done .pw-nav-count{color:var(--ok)}.pw-nav-item.is-started .pw-nav-count{color:var(--text-dim);font-weight:700}.pw-side-actions{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding-top:12px;display:flex}.pw-side-actions .pw-btn{text-align:center;width:100%}.pw-subset{overflow:visible}.pw-subset-head{border-radius:var(--radius) var(--radius) 0 0}.pw-grid{border-top:1px solid var(--border-soft);grid-template-columns:repeat(auto-fill,minmax(max(130px,16.6667% - 6.66667px),1fr));gap:8px;padding:12px;display:grid}.pw-tile{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);text-align:left;flex-direction:column;gap:5px;min-height:78px;padding:8px 9px 9px;transition:background .14s,border-color .14s,transform .14s;display:flex;position:relative}.pw-tile:hover{border-color:var(--cat,var(--accent));background:var(--surface-3);transform:translateY(-1px)}.pw-tile.is-owned{border-color:color-mix(in srgb, var(--cat,var(--accent)) 58%, transparent);background:linear-gradient(145deg, color-mix(in srgb, var(--cat,var(--accent)) 42%, transparent), color-mix(in srgb, var(--cat,var(--accent)) 14%, transparent) 70%), var(--surface-2)}.pw-tile.is-owned .pw-tile-subject{color:#fff;font-weight:600}.pw-tile.is-owned:hover{background:linear-gradient(145deg, color-mix(in srgb, var(--cat,var(--accent)) 54%, transparent), color-mix(in srgb, var(--cat,var(--accent)) 20%, transparent) 70%), var(--surface-2)}.pw-tile-top{justify-content:space-between;align-items:center;gap:6px;display:flex}.pw-tile-num{font-variant-numeric:tabular-nums;color:var(--text-faint);font-size:11px;font-weight:700}.pw-tile.is-owned .pw-tile-num{color:#fff;opacity:.85}.pw-tile.is-owned .pw-tile-add{color:#fff;border-color:#ffffff73}.pw-tile-subject{color:var(--text-dim);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.25;display:-webkit-box;overflow:hidden}.pw-tile-add{border:1px dashed var(--border);width:20px;height:20px;color:var(--text-faint);border-radius:99px;flex-shrink:0;place-items:center;padding:0;font-size:11px;line-height:0;display:grid}.pw-tile-add svg{width:11px;height:11px;display:block}.pw-tile-add:hover{border-style:solid;border-color:var(--accent);color:var(--accent)}.pw-tile-add.is-open{background:var(--accent);border-color:var(--accent);color:#fff;border-style:solid}.pw-pips{flex-wrap:wrap;align-items:center;gap:3px;min-height:9px;margin-top:auto;display:flex}.pw-pip{background:var(--chip,var(--accent));border-radius:99px;width:8px;height:8px}.pw-pip.base{border-radius:2px}.pw-pip-more{color:var(--text-faint);margin-left:1px;font-size:9.5px;font-weight:700}.pw-pop{z-index:40;background:var(--surface-3);border:1px solid var(--accent);border-radius:var(--radius-sm);flex-wrap:wrap;gap:5px;width:max(100%,208px);padding:8px;display:flex;position:absolute;top:calc(100% + 5px);left:0;box-shadow:0 12px 28px #0206108c}.pw-pop.flip-right{left:auto;right:0}.pw-pop-label{text-transform:uppercase;letter-spacing:.07em;width:100%;color:var(--text-faint);font-size:9.5px;font-weight:700}@media (width<=880px){.pw-shell{grid-template-columns:1fr}.pw-side{max-height:none;position:static}.pw-nav{max-height:220px}}.pw-side-sets{border-bottom:1px solid var(--border);flex-direction:column;gap:3px;padding-bottom:12px;display:flex}.pw-set-item{border-radius:var(--radius-sm);text-align:left;width:100%;color:var(--text-dim);border:1px solid #0000;align-items:center;gap:8px;padding:7px 8px;font-size:12.5px;display:flex}.pw-set-item:hover{background:var(--surface-2);color:var(--text)}.pw-set-item.is-active{background:var(--surface-3);border-color:var(--accent);color:var(--text);font-weight:600}.pw-set-item-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.pw-set-item-pct{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:11px}.pw-add-set{border-radius:var(--radius-sm);border:1px dashed var(--border);width:100%;color:var(--text-faint);text-align:center;padding:7px 8px;font-size:12.5px}.pw-add-set:hover{border-style:solid;border-color:var(--accent);color:var(--accent)}.pw-setfilter{border-bottom:1px solid var(--border);flex-direction:column;gap:9px;padding:12px 16px;display:flex}.pw-setfilter .pw-input{width:100%}.pw-year-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.pw-year-chip{border:1px solid var(--border);background:var(--surface-2);color:var(--text-dim);font-variant-numeric:tabular-nums;border-radius:999px;padding:4px 11px;font-size:12px;font-weight:700;transition:background .12s,border-color .12s,color .12s}.pw-year-chip:hover{color:var(--text);border-color:var(--accent)}.pw-year-chip.is-on{background:color-mix(in srgb, var(--accent) 24%, transparent);border-color:var(--accent);color:var(--text)}.pw-year-clear{color:var(--text-faint);padding:4px 6px;font-size:11.5px}.pw-year-clear:hover{color:var(--text)}.pw-setbrowse{display:block}.pw-series+.pw-series{margin-top:18px}.pw-series-name{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);align-items:center;gap:8px;margin:0 0 8px;font-size:12px;font-weight:700;display:flex}.pw-series-count{letter-spacing:0;color:var(--text-faint);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:1px 7px;font-size:10.5px;font-weight:700}.pw-set-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.pw-set-card{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);text-align:left;flex-direction:column;gap:2px;padding:11px 12px;display:flex}.pw-set-card:hover:not(:disabled){border-color:var(--accent);background:var(--surface-3)}.pw-set-card:disabled{opacity:.5;cursor:default}.pw-set-card-year{font-variant-numeric:tabular-nums;font-size:17px;font-weight:800}.pw-set-card-meta{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:11px}.pw-set-card-cta{color:var(--accent);margin-top:6px;font-size:12px;font-weight:700}.pw-set-card.is-added .pw-set-card-cta{color:var(--ok)}.pw-blank{text-align:center;padding:56px 20px}.pw-blank h2{margin-bottom:6px;font-size:18px}.pw-blank p{color:var(--text-dim);margin:0 0 18px;font-size:13.5px}.pw-set-header{border-radius:var(--radius);border:1px solid var(--border);background:linear-gradient(135deg, color-mix(in srgb, var(--cat,var(--accent)) 22%, transparent), transparent 62%), var(--surface);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;padding:16px 18px;display:flex}.pw-set-header-kicker{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-transform:uppercase;letter-spacing:.14em;color:#fff;background:#ffffff29;border:1px solid #ffffff42;border-radius:99px;padding:4px 10px;font-size:10px;font-weight:800;display:inline-block}.pw-set-header h1{letter-spacing:-.035em;margin:6px 0 8px;font-size:clamp(26px,3.4vw,38px);font-weight:800;line-height:1.02}.pw-set-header-meta{color:#ffffffb3;font-variant-numeric:tabular-nums;font-size:13px}.pw-set-header:after{content:"";pointer-events:none;background:linear-gradient(#ffffff12,#0000 42%);position:absolute;inset:0}.pw-set-header>*{z-index:1;position:relative}.pw-set-header-right{text-align:right;flex-shrink:0}.pw-set-header-pct{letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:#fff;text-shadow:0 2px 18px #00000059;font-size:clamp(38px,5vw,56px);font-weight:800;line-height:.92}.pw-set-header-sub{letter-spacing:.06em;text-transform:uppercase;color:#ffffffb8;margin-top:6px;font-size:11px;font-weight:700}.pw-set-header-bar{width:200px;margin-top:12px;margin-left:auto}.pw-set-header .pw-progress-track{background:#00000061}.pw-side-title{text-transform:uppercase;letter-spacing:.12em;color:var(--text-faint);margin-bottom:2px;font-size:10px;font-weight:800}.pw-family-head{border-radius:var(--radius-sm);width:100%;color:var(--text);text-align:left;align-items:center;gap:7px;padding:6px 7px;font-size:12.5px;font-weight:700;display:flex}.pw-family-head:hover{background:var(--surface-2)}.pw-family-head .pw-chevron{font-size:9px}.pw-family-count{color:var(--text-faint);margin-left:auto;font-size:10.5px;font-weight:600}.pw-year-row{align-items:center;display:flex}.pw-year-toggle{border-radius:var(--radius-sm);flex-shrink:0;justify-content:center;width:20px;padding:7px 0;display:flex}.pw-year-toggle:hover .pw-chevron{color:var(--text)}.pw-year-toggle.is-empty{cursor:default}.pw-year{border-radius:var(--radius-sm);min-width:0;color:var(--text-dim);text-align:left;flex:auto;align-items:center;gap:8px;padding:7px 9px;font-size:15px;font-weight:700;display:flex}.pw-year:hover{background:var(--surface-2);color:var(--text)}.pw-year.is-active{color:var(--text)}.pw-year-label{font-variant-numeric:tabular-nums;letter-spacing:-.01em;flex:auto}.pw-year-pct{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.pw-year-pct.is-live{color:var(--cat,var(--accent))}.pw-setnode{border-left:3px solid #0000;margin:1px 0;padding-left:6px}.pw-setnode.is-open{border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:color-mix(in srgb, var(--cat,var(--accent)) 6%, transparent);flex-direction:column;min-height:0;margin:3px 0 6px;padding-bottom:8px;display:flex}.pw-setnode.is-active{border-left-color:var(--cat,var(--accent));background:linear-gradient(100deg, color-mix(in srgb, var(--cat,var(--accent)) 30%, transparent), color-mix(in srgb, var(--cat,var(--accent)) 9%, transparent) 70%)}.pw-setnode.is-active .pw-year{color:var(--text)}.pw-setnode.is-open .pw-year:hover{background:color-mix(in srgb, var(--cat,var(--accent)) 10%, transparent)}.pw-year-bar{background:var(--surface-3);border-radius:99px;flex-shrink:0;height:4px;margin:0 9px 2px;overflow:hidden}.pw-year-bar span{background:var(--cat,var(--accent));height:100%;transition:width .2s;display:block}.pw-setnode-body{border-top:1px solid color-mix(in srgb, var(--cat,var(--accent)) 25%, transparent);flex-direction:column;min-height:0;margin:6px 0 0 20px;padding:8px 9px 0;display:flex}.pw-side-section-head{text-transform:uppercase;letter-spacing:.12em;width:100%;color:var(--text-faint);flex-shrink:0;align-items:center;gap:7px;padding:0 0 7px;font-size:10px;font-weight:800;display:flex}.pw-side-section-head .pw-chevron{font-size:9px}.pw-side-section-pct{color:var(--text-dim);font-variant-numeric:tabular-nums;letter-spacing:0;margin-left:auto;font-size:11px}.pw-side-foot{border-top:1px solid var(--border);padding-top:10px}.pw-subset.is-excluded{opacity:.55;border-left-style:dashed}.pw-subset.is-excluded .pw-tile{background:var(--surface)}.pw-badge{text-transform:uppercase;letter-spacing:.07em;border:1px solid var(--border);color:var(--text-faint);white-space:nowrap;border-radius:4px;padding:2px 6px;font-size:9.5px;font-weight:800}.pw-nav-item.is-excluded .pw-nav-name{opacity:.55;font-style:italic}.pw-batch-bar{border-radius:var(--radius);border:1px solid var(--accent);background:color-mix(in srgb, var(--accent) 16%, var(--surface));z-index:50;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:10px 14px;display:flex;position:sticky;top:8px}.pw-batch-label{font-size:12.5px;font-weight:700}.pw-batch-sub{color:var(--text-dim);font-size:11.5px}.pw-tile.is-picked{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 26%, var(--surface-2));box-shadow:0 0 0 1px var(--accent) inset}.pw-tile.batching{cursor:copy}.pw-serial-row{border-top:1px solid var(--border);align-items:center;gap:8px;width:100%;margin-top:6px;padding:8px 0 2px;display:flex}.pw-serial-row label{color:var(--text-dim);font-size:11.5px}.pw-serial-row input{border:1px solid var(--border);background:var(--surface-2);width:92px;color:inherit;font-variant-numeric:tabular-nums;border-radius:6px;padding:4px 8px;font-size:12.5px}.pw-set-header{border-color:color-mix(in srgb, var(--cat,var(--accent)) 50%, var(--border));background:radial-gradient(135% 170% at 2% 4%, color-mix(in srgb, var(--cat,var(--accent)) 88%, transparent) 0%, color-mix(in srgb, var(--cat,var(--accent)) 38%, transparent) 32%, transparent 62%), radial-gradient(85% 150% at 96% 8%, color-mix(in srgb, var(--accent-3) 62%, transparent) 0%, transparent 52%), radial-gradient(90% 140% at 62% 110%, color-mix(in srgb, var(--accent-2) 52%, transparent) 0%, transparent 60%), linear-gradient(112deg, #1b2a52 0%, #131e3a 54%, #0c1427 100%);padding:30px 28px 26px;position:relative;overflow:hidden}.pw-set-header:before{content:"";background:var(--cat,var(--accent));width:5px;position:absolute;top:0;bottom:0;left:0}.pw-set-header h1{color:#fff;margin:5px 0 6px;font-size:30px;line-height:1.05}.pw-set-header-kicker{letter-spacing:.16em;font-size:11px}.pw-set-header-meta{color:var(--text-dim);font-size:13px}.pw-set-header-pct{color:#fff;font-size:38px}.pw-subset-head{padding:14px 16px}.pw-subset-name{letter-spacing:-.01em;font-size:15.5px;font-weight:800}.pw-subset-meta{font-size:11.5px}.pw-side{gap:14px;padding:16px 14px}.pw-side-brand{padding-bottom:2px}.pw-side-title{letter-spacing:.12em;color:var(--text);flex-shrink:0;margin:2px 0 12px;font-size:12px;font-weight:800}.pw-family{margin-bottom:6px}.pw-family-head{color:var(--text-faint);text-transform:uppercase;letter-spacing:.08em;padding:5px 7px;font-size:12px}.pw-family-head:hover{color:var(--text-dim)}.pw-side-sets-wrap{overscroll-behavior:contain;scrollbar-width:thin;flex-direction:column;flex:auto;min-height:0;margin:0 -6px;padding:0 6px;display:flex;overflow-y:auto}.pw-side-section-head{flex-shrink:0;font-size:10.5px}.pw-nav{overscroll-behavior:contain;flex:0 auto;min-height:0;max-height:34vh;margin:0;padding:0;overflow-y:auto}.pw-nav-item{padding:5px 7px;font-size:12px}.pw-side-foot{flex-shrink:0;margin-top:auto}.pw-btn{align-items:center;gap:6px;display:inline-flex}.pw-btn svg{flex-shrink:0}.pw-icon-btn{justify-content:center;align-items:center;width:34px;height:34px;padding:0;line-height:0}.pw-icon-btn svg{width:16px;height:16px;display:block}.pw-input-wrap{flex-shrink:0;align-items:center;display:inline-flex;position:relative}.pw-input-wrap>svg{color:var(--text-faint);pointer-events:none;position:absolute;left:10px}.pw-input-wrap .pw-search{padding-left:32px}.pw-field-clear{width:20px;height:20px;color:var(--text-faint);border-radius:99px;place-items:center;padding:0;line-height:0;display:grid;position:absolute;right:6px}.pw-field-clear svg{width:13px;height:13px;display:block}.pw-field-clear:hover{background:var(--surface-3);color:var(--text)}.pw-input-wrap .pw-search{padding-right:30px}.pw-input-wrap.is-select select{appearance:none;color:var(--text-dim);background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 17px) calc(50% + 1px),calc(100% - 12px) calc(50% + 1px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:30px}.pw-input-wrap.is-select select:hover{color:var(--text)}.pw-modal-foot{justify-content:space-between}.pw-modal-foot .pw-foot-note{flex:auto}.pw-modal-foot .pw-btn.primary{flex-shrink:0}.pw-dirty-dot{background:var(--warn);border-radius:99px;width:7px;height:7px;margin-right:6px;display:inline-block}.pw-modal-split{flex:auto;grid-template-columns:186px minmax(0,1fr);min-height:0;display:grid}.pw-colour-nav{border-right:1px solid var(--border);overscroll-behavior:contain;background:var(--surface-2);flex-direction:column;gap:2px;padding:8px;display:flex;overflow-y:auto}.pw-colour-nav-item{border-radius:var(--radius-sm);width:100%;color:var(--text-dim);text-align:left;border-left:3px solid #0000;align-items:center;gap:9px;padding:7px 9px;font-size:12.5px;display:flex}.pw-colour-nav-item:hover{background:var(--surface-3);color:var(--text)}.pw-colour-nav-item.is-active{background:color-mix(in srgb, var(--chip,var(--accent)) 24%, var(--surface-3));border-left-color:var(--chip,var(--accent));color:var(--text);font-weight:700}.pw-colour-nav-item .dot{background:var(--chip,var(--text-faint));border-radius:99px;flex-shrink:0;width:10px;height:10px}.pw-colour-nav-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.pw-colour-nav-run{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:10.5px}.pw-colour-nav-count{background:var(--ok);color:#04210f;border-radius:99px;flex-shrink:0;place-items:center;min-width:17px;height:17px;padding:0 4px;font-size:10px;font-weight:800;display:grid}.pw-tier-pane{min-height:0;padding:14px 16px;overflow-y:auto}.pw-tier-pane-head{align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.pw-tier-pane-title{font-size:14px;font-weight:800}.pw-tier-pane-run{color:var(--text-dim);font-variant-numeric:tabular-nums;font-size:12px}.pw-modal.wide{width:min(600px,100%)}.pw-modal-split{grid-template-columns:250px minmax(0,1fr)}@media (width<=640px){.pw-modal-split{grid-template-columns:1fr}.pw-colour-nav{border-right:none;border-bottom:1px solid var(--border);max-height:180px}}.pw-owned-row{border-top:1px solid var(--border);align-items:center;gap:8px;padding:8px 0;display:flex}.pw-owned-row:first-of-type{margin-top:10px}.pw-owned-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:12px;overflow:hidden}.pw-owned-name .run{color:var(--text-faint);margin-left:4px}.pw-qty{border:1px solid var(--border);border-radius:99px;flex-shrink:0;align-items:center;display:inline-flex;overflow:hidden}.pw-qty button{width:24px;height:24px;color:var(--text-dim);background:var(--surface-2);place-items:center;font-size:14px;line-height:1;display:grid}.pw-qty button:hover{background:var(--surface-3);color:var(--text)}.pw-qty button:disabled{opacity:.35;cursor:default}.pw-qty-value{text-align:center;font-variant-numeric:tabular-nums;min-width:26px;font-size:12.5px;font-weight:800}.pw-serial-mini{border:1px solid var(--border);background:var(--surface-2);width:74px;color:inherit;font-variant-numeric:tabular-nums;border-radius:6px;flex-shrink:0;padding:3px 7px;font-size:12px}.pw-pip-qty{color:var(--text-dim);margin-left:1px;font-size:9.5px;font-weight:800}.pw-auth{place-items:center;min-height:70vh;padding:24px 0;display:grid}.pw-auth-card{width:min(380px,100%);padding:26px 24px}.pw-auth-card .pw-logo{margin-bottom:8px;font-size:26px}.pw-auth-blurb{color:var(--text-dim);margin:0 0 20px;font-size:13px;line-height:1.5}.pw-auth-form{flex-direction:column;gap:12px;display:flex}.pw-field{flex-direction:column;gap:5px;display:flex}.pw-field>span{text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint);font-size:10.5px;font-weight:800}.pw-field .pw-input{width:100%}.pw-auth-hint{color:var(--text-faint);margin-top:-4px;font-size:11.5px}.pw-auth-submit{justify-content:center;margin-top:4px}.pw-auth-switch{border-top:1px solid var(--border);width:100%;color:var(--text-dim);margin-top:16px;padding-top:14px;font-size:12.5px;display:block}.pw-auth-switch:hover{color:var(--text)}.pw-account{border-top:1px solid var(--border);color:var(--text-faint);align-items:center;gap:8px;margin-top:10px;padding-top:10px;font-size:11.5px;display:flex}.pw-account-avatar{background:var(--aurora);color:#06101f;border-radius:99px;flex-shrink:0;place-items:center;width:26px;height:26px;font-size:12px;font-weight:800;display:grid}.pw-account-email{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-dim);flex:auto;font-size:12px;overflow:hidden}.pw-account-out{flex-shrink:0;width:30px;height:30px}.pw-account-out:hover{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 50%, transparent);background:color-mix(in srgb, var(--danger) 12%, transparent)}.pw-auth-switches{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:14px;display:flex}.pw-auth-switches .pw-auth-switch{text-align:left;border-top:none;width:auto;margin:0;padding:0}.pw-auth-link{color:var(--text-faint);white-space:nowrap;font-size:12.5px}.pw-auth-link:hover{color:var(--text);text-decoration:underline}.pw-tile.is-clickable{cursor:pointer}.pw-tile-hover{background:color-mix(in srgb, var(--cat,var(--accent)) 85%, #fff);color:#04101f;opacity:0;pointer-events:none;border-radius:99px;place-items:center;width:22px;height:22px;transition:opacity .13s,transform .13s;display:grid;position:absolute;top:7px;right:8px;transform:scale(.8);box-shadow:0 2px 10px #02050e80}.pw-tile-hover svg{stroke-width:2.6px;width:13px;height:13px;display:block}.pw-tile:hover .pw-tile-hover,.pw-tile:focus-visible .pw-tile-hover{opacity:1;transform:scale(1)}.pw-tile.is-clickable:focus-visible{outline:2px solid var(--cat,var(--accent));outline-offset:2px}.pw-tile-subject{-webkit-user-select:none;user-select:none}.pw-btn.danger{background:color-mix(in srgb, var(--danger) 18%, transparent);border-color:color-mix(in srgb, var(--danger) 55%, transparent);color:color-mix(in srgb, var(--danger) 72%, #fff)}.pw-btn.danger:hover:not(:disabled){background:color-mix(in srgb, var(--danger) 32%, transparent);color:#fff}.pw-btn.danger:disabled{opacity:.45;cursor:default}.pw-modal.pw-match{width:min(940px,100%)}.pw-match-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:18px;display:grid}.pw-match-in{flex-direction:column;gap:12px;min-width:0;display:flex}.pw-match-paste{flex:auto}.pw-textarea{resize:vertical;width:100%;height:210px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12.5px;line-height:1.5}.pw-match-read{flex-wrap:wrap;gap:8px;display:flex}.pw-match-stat{color:var(--text-dim);background:var(--surface-2);border:1px solid var(--border);border-radius:99px;padding:3px 10px;font-size:11.5px}.pw-match-stat strong{color:var(--text);font-variant-numeric:tabular-nums}.pw-match-stat.warn{border-color:color-mix(in srgb, var(--warn) 45%, transparent)}.pw-match-stat.dim{opacity:.7}.pw-match-unknown{word-break:break-word;font-size:12px}.pw-match-hint{color:var(--text-faint);margin-top:4px;font-size:11.5px}.pw-match-out{flex-direction:column;gap:10px;min-width:0;display:flex}.pw-match-filters{flex-wrap:wrap;gap:6px;display:flex}.pw-check{border:1px solid var(--border);background:var(--surface-2);color:var(--text-dim);cursor:pointer;border-radius:99px;align-items:center;gap:6px;padding:5px 11px;font-size:12px;font-weight:600;display:inline-flex}.pw-check input{accent-color:var(--accent);margin:0}.pw-check:hover{color:var(--text)}.pw-check.is-on{background:color-mix(in srgb, var(--accent) 24%, transparent);border-color:var(--accent);color:var(--text)}.pw-match-count{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:800}.pw-match-list{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);max-height:330px;overflow-y:auto}.pw-match-row{align-items:baseline;gap:9px;padding:6px 11px;font-size:12.5px;display:flex}.pw-match-row+.pw-match-row{border-top:1px solid var(--border-soft)}.pw-match-num{font-variant-numeric:tabular-nums;color:var(--accent);flex-shrink:0;font-weight:800}.pw-match-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.pw-match-subset{color:var(--text-faint);flex-shrink:0;font-size:11px}@media (width<=760px){.pw-match-body{grid-template-columns:1fr}}.pw-side-action{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);width:100%;color:var(--text-dim);justify-content:center;align-items:center;gap:7px;margin-top:6px;padding:9px 10px;font-size:13px;font-weight:600;display:flex}.pw-side-action:hover{background:var(--surface-3);color:var(--text);border-color:var(--accent)}.pw-side-action svg{width:15px;height:15px}.pw-match-suggest{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.pw-match-suggest .pw-btn{font-size:12px}.pw-match-suggest .run{opacity:.65;font-weight:700}.pw-setpick{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);align-items:stretch;display:flex;overflow:hidden}.pw-setpick-series{min-width:0;color:var(--text);white-space:nowrap;text-overflow:ellipsis;border-right:1px solid var(--border);flex:auto;align-items:center;padding:0 11px;font-size:13px;font-weight:600;display:flex;overflow:hidden}.pw-setpick select.pw-input{font-variant-numeric:tabular-nums;background:0 0;border:none;border-radius:0;flex:none;width:auto;min-width:86px;font-weight:700}.pw-setpick-note{color:var(--text-faint);margin-top:5px;font-size:11.5px}.pw-modal.pw-config{width:min(760px,100%)}.pw-config-bar{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 16px;display:flex}.pw-config-hint{color:var(--text-faint);font-size:11.5px}.pw-config-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:8px;width:100%;display:grid}.pw-config-tile{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);text-align:left;opacity:.55;align-items:center;gap:9px;padding:10px 11px;transition:background .12s,border-color .12s,opacity .12s;display:flex}.pw-config-tile:hover{border-color:var(--accent);opacity:.8}.pw-config-tile.is-on{opacity:1;border-color:color-mix(in srgb, var(--accent) 55%, transparent);background:linear-gradient(140deg, color-mix(in srgb, var(--accent) 26%, transparent), color-mix(in srgb, var(--accent) 8%, transparent) 70%), var(--surface-2)}.pw-config-tile.is-on:hover{opacity:1}.pw-config-mark{border:1px solid var(--border);color:#fff;background:#050a1666;border-radius:5px;flex-shrink:0;place-items:center;width:17px;height:17px;display:grid}.pw-config-mark svg{width:12px;height:12px;display:block}.pw-config-tile.is-on .pw-config-mark{background:var(--accent);border-color:var(--accent)}.pw-config-name{flex:auto;min-width:0;font-size:12.5px;font-weight:600;line-height:1.25}.pw-config-tile.is-on .pw-config-name{color:var(--text)}.pw-config-count{font-variant-numeric:tabular-nums;color:var(--text-faint);flex-shrink:0;font-size:11px}.pw-config-tile.is-on .pw-config-count{color:var(--text-dim)}.pw-dupe-select{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));color:var(--text);padding-left:12px}.pw-btn.danger-text{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 35%, transparent);background:color-mix(in srgb, var(--danger) 10%, transparent);margin-right:auto;font-weight:700}.pw-btn.danger-text:hover{color:#fff;background:color-mix(in srgb, var(--danger) 45%, transparent);border-color:var(--danger)}.pw-btn.danger-solid{background:var(--danger);border-color:var(--danger);color:#fff;font-weight:700}.pw-btn.danger-solid:hover{background:#dc2626;border-color:#dc2626}.pw-modal-foot.pw-danger-bar{background:color-mix(in srgb, var(--danger) 12%, transparent);border-top-color:color-mix(in srgb, var(--danger) 40%, transparent)}.pw-danger-bar .pw-foot-note{color:var(--text)}.pw-danger-bar .pw-foot-note strong{color:var(--danger)}.pw-modal.pw-admin{width:min(900px,100%)}.pw-admin-table{width:100%;font-size:12.5px}.pw-admin-row{border-radius:var(--radius-sm);grid-template-columns:minmax(0,2.2fr) minmax(0,1.2fr) 56px 72px 96px 104px;align-items:center;gap:10px;padding:9px 10px;display:grid}.pw-admin-row+.pw-admin-row{border-top:1px solid var(--border-soft)}.pw-admin-row:not(.is-head):hover{background:var(--surface-2)}.pw-admin-row.is-head{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--border);border-radius:0;font-size:10px;font-weight:800}.pw-admin-row .num{text-align:right;font-variant-numeric:tabular-nums}.pw-admin-email{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:7px;min-width:0;display:flex;overflow:hidden}.pw-admin-when{color:var(--text-faint);font-size:11.5px}.pw-plan{text-transform:uppercase;letter-spacing:.06em;border-radius:99px;padding:2px 9px;font-size:10.5px;font-weight:800;display:inline-block}.pw-plan-cell{align-items:center;gap:8px;min-width:0;display:flex}.pw-plan-free{border:1px solid var(--border);color:var(--text-dim);background:0 0}.pw-plan-pro{background:color-mix(in srgb, var(--accent) 30%, transparent);border:1px solid var(--accent);color:#fff}.pw-plan-src{color:var(--text-faint);white-space:nowrap;font-size:11px}@media (width<=720px){.pw-admin-row{grid-template-columns:minmax(0,1.6fr) 1fr 96px}.pw-admin-row .num,.pw-admin-when{display:none}}.pw-env{z-index:200;text-align:center;letter-spacing:.08em;text-transform:uppercase;width:calc(100% + 32px);margin:-18px -16px 16px;padding:7px 16px;font-size:11.5px;font-weight:800;position:sticky;top:0}.pw-env-development{background:repeating-linear-gradient(135deg, var(--warn) 0 14px, color-mix(in srgb, var(--warn) 78%, #000) 14px 28px);color:#1b1200}.pw-env-offline{background:var(--surface-3);color:var(--text-dim)}.pw-env-misconfigured{background:var(--danger);color:#fff;padding:11px 16px;font-size:12.5px}.pw-export-select{padding-left:12px}.pw-print-head{display:none}@media print{:root{--bg:#fff;--surface:#fff;--surface-2:#fff;--surface-3:#fff;--border:#bbb;--border-soft:#ddd;--text:#000;--text-dim:#333;--text-faint:#666}body{background:#fff!important}#root{max-width:none;padding:0}.pw-side,.pw-toolbar,.pw-set-header,.pw-env,.pw-note,.pw-tile-add,.pw-tile-hover,.pw-overlay,.pw-toast,.pw-batch-bar{display:none!important}.pw-shell{display:block}.pw-print-head{margin-bottom:14px;display:block}.pw-print-head h1{margin:0 0 4px;font-size:20pt}.pw-print-head p{color:#444;margin:0;font-size:9pt}.pw-subset{box-shadow:none;break-inside:avoid;border:none;margin-bottom:10pt}.pw-subset-head{border-bottom:1px solid #000;padding:0 0 3pt;font-size:11pt;background:0 0!important}.pw-subset-chip,.pw-chevron,.pw-mini-track{display:none!important}.pw-grid{border:none;gap:4pt;padding:6pt 0 0;grid-template-columns:repeat(4,1fr)!important}.pw-tile{break-inside:avoid;border:1px solid #ccc;min-height:0;padding:3pt 4pt;background:#fff!important}.pw-tile.is-owned{border:1.5pt solid #000;background:#f2f2f2!important}.pw-tile.is-owned .pw-tile-num:after{content:" ✓"}.pw-tile-num{color:#000;font-size:7.5pt}.pw-tile-subject{color:#000;font-size:8.5pt}.pw-pip{border:.5pt solid #666}}
