/* Inputs for filters */
.toggle-class,
.toggle-slot,
.toggle-sheen,
.toggle-streaker,
.quality-filter,
.status-filter,
.started-filter,
.stock-toggle,
.required-toggle,
.completion-toggle {
 display: none;
}

/* Hide per class */
.toggle-class:checked ~ .filterable .class {
 display: none;
}
/* Show per class .toggle-class */
.all:checked ~ .filterable .all,
.multi:checked ~ .filterable .multi,
.scout:checked ~ .filterable .scout,
.soldier:checked ~ .filterable .soldier,
.pyro:checked ~ .filterable .pyro,
.demoman:checked ~ .filterable .demoman,
.heavy:checked ~ .filterable .heavy,
.engineer:checked ~ .filterable .engineer,
.medic:checked ~ .filterable .medic,
.sniper:checked ~ .filterable .sniper,
.spy:checked ~ .filterable .spy {
 display: block;
}
/* Hide classes on collapsing .item-type */
.toggle-class:checked ~ .filterable .type-toggle:not(:checked) ~ .class {
 display: none;
}

/* Hide per slot */
.toggle-slot:checked ~ .filterable .ks-item {
 //display: none;
}
.primary:checked ~ .filterable [data-slot="2"],
.primary:checked ~ .filterable [data-slot="3"],
.secondary:checked ~ .filterable [data-slot="1"],
.secondary:checked ~ .filterable [data-slot="3"],
.melee:checked ~ .filterable [data-slot="1"],
.melee:checked ~ .filterable [data-slot="2"] {
 display: none;
}
/* Show per slot .toggle-slot */
.primary:checked ~ .filterable [data-primary],
.secondary:checked ~ .filterable [data-secondary],
.melee:checked ~ .filterable [data-melee],
.primary:checked ~ .filterable [data-slot="1"],
.secondary:checked ~ .filterable [data-slot="2"],
.melee:checked ~ .filterable [data-slot="3"],
.primary:checked ~ .secondary:checked ~ .melee:checked ~ .filterable .ks-item {
 display: inherit;
}

/* Hide per sheen */
.toggle-sheen:checked ~ .filterable [data-kstier="1"],
.toggle-sheen:checked ~ .filterable [data-sheen] {
 display: none;
}
/* Show each sheen */
.sh-ae:checked ~ .filterable [data-sheen="2005"],
.sh-dd:checked ~ .filterable [data-sheen="2002"],
.sh-hr:checked ~ .filterable [data-sheen="2007"],
.sh-m:checked ~ .filterable [data-sheen="2003"],
.sh-mg:checked ~ .filterable [data-sheen="2004"],
.sh-ts:checked ~ .filterable [data-sheen="2001"],
.sh-vv:checked ~ .filterable [data-sheen="2006"] {
 display: inherit;
}

/* Hide per streaker */
.toggle-streaker:checked ~ .filterable [data-kstier="1"],
.toggle-streaker:checked ~ .filterable [data-kstier="2"],
.toggle-streaker:checked ~ .filterable [data-streaker] {
 display: none;
}
/* Show each streaker */
.ks-cd:checked ~ .filterable [data-streaker="22003"],
.ks-f:checked ~ .filterable [data-streaker="22005"],
.ks-fh:checked ~ .filterable [data-streaker="22002"],
.ks-hb:checked ~ .filterable [data-streaker="22008"],
.ks-i:checked ~ .filterable [data-streaker="22007"],
.ks-s:checked ~ .filterable [data-streaker="22006"],
.ks-t:checked ~ .filterable [data-streaker="22004"] {
 display: inherit;
}

/* Tiers .toggle-tier */
.basic:checked ~ .class .ks-item[data-sheen],
.specialized:checked ~ .class .ks-item[data-kstier="1"],
.specialized:checked ~ .class .ks-item[data-kstier="3"],
.professional:checked ~ .class .ks-item[data-kstier="1"],
.professional:checked ~ .class .ks-item[data-kstier="2"],
.basic:checked ~ .specialized:checked ~ .class .ks-item[data-kstier="3"],
.basic:checked ~ .professional:checked ~ .class .ks-item[data-kstier="2"],
.specialized:checked ~ .professional:checked ~ .class .ks-item[data-kstier="1"],
.toggle-sheen:checked ~ .filterable .tier-collapse:checked ~ .class .ks-item:not([data-sheen]),
.toggle-streaker:checked ~ .filterable .tier-collapse:checked ~ .class .ks-item:not([data-streaker]),
.toggle-streaker:checked ~ .filterable .tier-collapse:checked ~ .tier-collapse:checked ~ .class .ks-item:not([data-streaker]) {
 display: none;
}
.basic:checked ~ .specialized:checked ~ .class .ks-item:not([data-kstier="3"]),
.basic:checked ~ .professional:checked ~ .class .ks-item:not([data-kstier="2"]),
.specialized:checked ~ .professional:checked ~ .class .ks-item:not([data-kstier="1"]),
.toggle-sheen:checked ~ .filterable .tier-filter:checked ~ .class .ks-item[data-sheen] {
 display: inherit;
}

/* fill status color on filtering */
.completion-filter:checked ~ .class .ks-item .filled,
.started-filter:checked ~ .class .ks-item .filled:after {
 background-color: inherit;
}

.incompletable:checked ~ .class .filled,
.completion-toggle:checked ~ .class .ks-item:not([data-completable]) .fill-status .filled { color: rgba(100,25,25,.87); }
.completable:checked ~ .class [data-completable] .filled,
.completion-toggle:checked ~ .class [data-completable] .filled { color: rgba(25,100,25,.87); }

/* fill status completion shadow on filtering */
.started-filter:checked ~ .class .filled {
 //color: rgba(100,25,25,.87);
 line-height: 18px;
 border: 1px dashed rgba(100,25,25,.87);
 background-color: rgba(100,25,25,.1);
 background-color: rgba(0,0,0,.05);
 //text-shadow: 0 0 1px rgba(150,0,0,.3);
}
.started-filter:checked ~ .class [data-completable] .filled {
 //color: rgba(25,100,25,.87);
 border: 1px dashed rgba(25,100,25,.87);
 //text-shadow: 0 0 1px rgba(0,150,0,.3);
}
.started-filter:checked ~ .class [data-started] .filled {
 border-style: solid;
}
.started-filter:checked ~ .class  .parts:before {
 border-bottom: 1px dashed rgba(100,25,25,.87);
}
.started-filter:checked ~ .class [data-completable] .parts:before {
 border-bottom: 1px solid rgba(25,100,25,.87);
}
.filled:after {
 padding: 0 2px;
}
.parts:after,
/*.started-filter:checked ~ .class .filled:after,*/
.completion-toggle:checked ~ .class .fill-status .filled:after { content: "✘"; }
[data-completable] .parts:after,
/*.started-filter:checked ~ .class [data-completable] .filled:after,*/
.completion-toggle:checked ~ .class [data-completable] .fill-status .filled:after { content: "✔"; }


/*.started-filter:checked ~ .class .filled:before,
.completion-toggle:checked ~ .class .filled:before {
 padding-left: 2px;
}*/
/* Completion status in parts overview */
.parts:after {
 position: absolute;
 top: 0;
 right: 1px;
 display: inline-block;
 width: 14px;
 text-align: center;
 line-height: 1;
}

/* Required Parts filters */
.required-filter .part {
 -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=30)";
 filter: alpha(opacity=30);
 opacity: 0.3;
}
.req-kskit:checked ~ .filterables-head .req-kskit .part,
.req-bulb:checked ~ .filterables-head .req-bulb .part,
.req-digester:checked ~ .filterables-head .req-digester .part,
.req-kb808:checked ~ .filterables-head .req-kb808 .part,
.req-furnace:checked ~ .filterables-head .req-furnace .part,
.req-processor:checked ~ .filterables-head .req-processor .part,
.req-pump:checked ~ .filterables-head .req-pump .part,
.req-stabilizer:checked ~ .filterables-head .req-stabilizer .part,
.req-detector:checked ~ .filterables-head .req-detector .part {
 -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
 filter: alpha(opacity=100);
 opacity: 1;
}

.required-toggle:checked ~ .class .ks-item ,
.started-filter ~ .required-filter:checked ~ .class .ks-item,
.completion-toggle ~ .required-filter:checked ~ .class .ks-item {
 display: none;
}
.req-kskit:checked ~ .class .ks-item[data-required*="ks-"],
.req-bulb:checked ~ .class .ks-item[data-required*="5701"],
.req-digester:checked ~ .class .ks-item[data-required*="5700"],
.req-kb808:checked ~ .class .ks-item[data-required*="5706"],
.req-furnace:checked ~ .class .ks-item[data-required*="5707"],
.req-processor:checked ~ .class .ks-item[data-required*="5705"],
.req-pump:checked ~ .class .ks-item[data-required*="5703"],
.req-stabilizer:checked ~ .class .ks-item[data-required*="5704"],
.req-detector:checked ~ .class .ks-item[data-required*="5702"],
.incompletable:checked ~ .req-kskit:checked ~ .class .ks-item[data-required*="ks-"]:not([data-completable]),
.incompletable:checked ~ .req-bulb:checked ~ .class .ks-item[data-required*="5701"]:not([data-completable]),
.incompletable:checked ~ .req-digester:checked ~ .class .ks-item[data-required*="5700"]:not([data-completable]),
.incompletable:checked ~ .req-kb808:checked ~ .class .ks-item[data-required*="5706"]:not([data-completable]),
.incompletable:checked ~ .req-furnace:checked ~ .class .ks-item[data-required*="5707"]:not([data-completable]),
.incompletable:checked ~ .req-processor:checked ~ .class .ks-item[data-required*="5705"]:not([data-completable]),
.incompletable:checked ~ .req-pump:checked ~ .class .ks-item[data-required*="5703"]:not([data-completable]),
.incompletable:checked ~ .req-stabilizer:checked ~ .class .ks-item[data-required*="5704"]:not([data-completable]),
.incompletable:checked ~ .req-detector:checked ~ .class .ks-item[data-required*="5702"]:not([data-completable]),
.completable:checked ~ .req-kskit:checked ~ .class .ks-item[data-completable][data-required*="ks-"],
.completable:checked ~ .req-bulb:checked ~ .class .ks-item[data-completable][data-required*="5701"],
.completable:checked ~ .req-digester:checked ~ .class .ks-item[data-completable][data-required*="5700"],
.completable:checked ~ .req-kb808:checked ~ .class .ks-item[data-completable][data-required*="5706"],
.completable:checked ~ .req-furnace:checked ~ .class .ks-item[data-completable][data-required*="5707"],
.completable:checked ~ .req-processor:checked ~ .class .ks-item[data-completable][data-required*="5705"],
.completable:checked ~ .req-pump:checked ~ .class .ks-item[data-completable][data-required*="5703"],
.completable:checked ~ .req-stabilizer:checked ~ .class .ks-item[data-completable][data-required*="5704"],
.completable:checked ~ .req-detector:checked ~ .class .ks-item[data-completable][data-required*="5702"],
.not-started:checked ~ .req-kskit:checked ~ .class .ks-item[data-required*="ks-"]:not([data-started]),
.not-started:checked ~ .req-bulb:checked ~ .class .ks-item[data-required*="5701"]:not([data-started]),
.not-started:checked ~ .req-digester:checked ~ .class .ks-item[data-required*="5700"]:not([data-started]),
.not-started:checked ~ .req-kb808:checked ~ .class .ks-item[data-required*="5706"]:not([data-started]),
.not-started:checked ~ .req-furnace:checked ~ .class .ks-item[data-required*="5707"]:not([data-started]),
.not-started:checked ~ .req-processor:checked ~ .class .ks-item[data-required*="5705"]:not([data-started]),
.not-started:checked ~ .req-pump:checked ~ .class .ks-item[data-required*="5703"]:not([data-started]),
.not-started:checked ~ .req-stabilizer:checked ~ .class .ks-item[data-required*="5704"]:not([data-started]),
.not-started:checked ~ .req-detector:checked ~ .class .ks-item[data-required*="5702"]:not([data-started]),
.started:checked ~ .req-kskit:checked ~ .class .ks-item[data-started][data-required*="ks-"],
.started:checked ~ .req-bulb:checked ~ .class .ks-item[data-started][data-required*="5701"],
.started:checked ~ .req-digester:checked ~ .class .ks-item[data-started][data-required*="5700"],
.started:checked ~ .req-kb808:checked ~ .class .ks-item[data-started][data-required*="5706"],
.started:checked ~ .req-furnace:checked ~ .class .ks-item[data-started][data-required*="5707"],
.started:checked ~ .req-processor:checked ~ .class .ks-item[data-started][data-required*="5705"],
.started:checked ~ .req-pump:checked ~ .class .ks-item[data-started][data-required*="5703"],
.started:checked ~ .req-stabilizer:checked ~ .class .ks-item[data-started][data-required*="5704"],
.started:checked ~ .req-detector:checked ~ .class .ks-item[data-started][data-required*="5702"] {
 display: inherit;
}


/* Item border color for tradable filters */
.tradable:checked ~ .class .ks-item[data-tradable="1"] .weapon-icon {
 border-color: rgba(0,120,0,.4);
}
.untradable:checked ~ .class .ks-item[data-tradable="2"] .weapon-icon {
 border-color: rgba(0,0,160,.4);
}
.nevertradable:checked ~ .class .ks-item[data-tradable="0"] .weapon-icon {
 border-color: rgba(120,0,0,.4);
}

/* text black on active filter */
.stock:checked ~ .filterables-head .stock:before,
.nonstock:checked ~ .filterables-head .unlock:before,
.tradable:checked ~ .filterables-head .tradable:before,
.untradable:checked ~ .filterables-head .untradable:before,
.nevertradable:checked ~ .filterables-head .nevertradable:before,
.started:checked ~ .filterables-head .started-filling:before,
.not-started:checked ~ .filterables-head .unfilled:before,
.incompletable:checked ~ .filterables-head .incompletable:before,
.completable:checked ~ .filterables-head .completable:before {
 color: rgba(0,0,0,.76);
}

/* Qualities */
.quality-filter:checked ~ .class .ks-item {
 display: none;
}
.community:checked ~ .class [data-community],
.haunted:checked ~ .class [data-haunted],
.valve:checked ~ .class [data-valve],
.genuine:checked ~ .class [data-genuine],
.selfmade:checked ~ .class [data-selfmade],
.selfmade:checked ~ .class [data-self-made],
.self-made:checked ~ .class [data-self-made],
.collectors:checked ~ .class [data-collectors],
.unusual:checked ~ .class [data-unusual],
.decorated-weapon:checked ~ .class [data-decorated],
.vintage:checked ~ .class [data-vintage],
.strange:checked ~ .class [data-strange],
.unique:checked ~ .class [data-unique] {
 display: inherit;
}

.toggle-quality {
 font-size: 0;
 line-height: 0;
 border: 13px solid;
 border-style: double;
 opacity: 0.6;
}
.toggle-quality:hover {
 opacity: 0.8;
}
.community:checked ~ .filterables-head .community,
.haunted:checked ~ .filterables-head .haunted,
.valve:checked ~ .filterables-head .valve,
.genuine:checked ~ .filterables-head .genuine,
.selfmade:checked ~ .filterables-head .selfmade,
.selfmade:checked ~ .filterables-head .self-made,
.self-made:checked ~ .filterables-head .self-made,
.collectors:checked ~ .filterables-head .collectors,
.unusual:checked ~ .filterables-head .unusual,
.decorated-weapon:checked ~ .filterables-head .decorated-weapon,
.vintage:checked ~ .filterables-head .vintage,
.strange:checked ~ .filterables-head .strange,
.unique:checked ~ .filterables-head .unique {
 opacity: 1;
 border-style: solid;
}

/* Hide sheen + streaker */
.toggle-sheen:checked ~ .toggle-streaker:checked ~ .filterable .ks-item,
.toggle-sheen:checked ~ .toggle-streaker:checked ~ .filterable .ks-item:not([data-streaker]) {
 display: none;
}
/* Combine sheen + streaker filter */
.sh-ts:checked ~ .ks-fh:checked ~ .filterable [data-sheen="2001"][data-streaker="22002"],
.sh-ts:checked ~ .ks-cd:checked ~ .filterable [data-sheen="2001"][data-streaker="22003"],
.sh-ts:checked ~ .ks-t:checked ~ .filterable [data-sheen="2001"][data-streaker="22004"],
.sh-ts:checked ~ .ks-f:checked ~ .filterable [data-sheen="2001"][data-streaker="22005"],
.sh-ts:checked ~ .ks-s:checked ~ .filterable [data-sheen="2001"][data-streaker="22006"],
.sh-ts:checked ~ .ks-i:checked ~ .filterable [data-sheen="2001"][data-streaker="22007"],
.sh-ts:checked ~ .ks-hb:checked ~ .filterable [data-sheen="2001"][data-streaker="22008"],
.sh-dd:checked ~ .ks-fh:checked ~ .filterable [data-sheen="2002"][data-streaker="22002"],
.sh-dd:checked ~ .ks-cd:checked ~ .filterable [data-sheen="2002"][data-streaker="22003"],
.sh-dd:checked ~ .ks-t:checked ~ .filterable [data-sheen="2002"][data-streaker="22004"],
.sh-dd:checked ~ .ks-f:checked ~ .filterable [data-sheen="2002"][data-streaker="22005"],
.sh-dd:checked ~ .ks-s:checked ~ .filterable [data-sheen="2002"][data-streaker="22006"],
.sh-dd:checked ~ .ks-i:checked ~ .filterable [data-sheen="2002"][data-streaker="22007"],
.sh-dd:checked ~ .ks-hb:checked ~ .filterable [data-sheen="2002"][data-streaker="22008"],
.sh-m:checked ~ .ks-fh:checked ~ .filterable [data-sheen="2003"][data-streaker="22002"],
.sh-m:checked ~ .ks-cd:checked ~ .filterable [data-sheen="2003"][data-streaker="22003"],
.sh-m:checked ~ .ks-t:checked ~ .filterable [data-sheen="2003"][data-streaker="22004"],
.sh-m:checked ~ .ks-f:checked ~ .filterable [data-sheen="2003"][data-streaker="22005"],
.sh-m:checked ~ .ks-s:checked ~ .filterable [data-sheen="2003"][data-streaker="22006"],
.sh-m:checked ~ .ks-i:checked ~ .filterable [data-sheen="2003"][data-streaker="22007"],
.sh-m:checked ~ .ks-hb:checked ~ .filterable [data-sheen="2003"][data-streaker="22008"],
.sh-mg:checked ~ .ks-fh:checked ~ .filterable [data-sheen="2004"][data-streaker="22002"],
.sh-mg:checked ~ .ks-cd:checked ~ .filterable [data-sheen="2004"][data-streaker="22003"],
.sh-mg:checked ~ .ks-t:checked ~ .filterable [data-sheen="2004"][data-streaker="22004"],
.sh-mg:checked ~ .ks-f:checked ~ .filterable [data-sheen="2004"][data-streaker="22005"],
.sh-mg:checked ~ .ks-s:checked ~ .filterable [data-sheen="2004"][data-streaker="22006"],
.sh-mg:checked ~ .ks-i:checked ~ .filterable [data-sheen="2004"][data-streaker="22007"],
.sh-mg:checked ~ .ks-hb:checked ~ .filterable [data-sheen="2004"][data-streaker="22008"],
.sh-ae:checked ~ .ks-fh:checked ~ .filterable [data-sheen="2005"][data-streaker="22002"],
.sh-ae:checked ~ .ks-cd:checked ~ .filterable [data-sheen="2005"][data-streaker="22003"],
.sh-ae:checked ~ .ks-t:checked ~ .filterable [data-sheen="2005"][data-streaker="22004"],
.sh-ae:checked ~ .ks-f:checked ~ .filterable [data-sheen="2005"][data-streaker="22005"],
.sh-ae:checked ~ .ks-s:checked ~ .filterable [data-sheen="2005"][data-streaker="22006"],
.sh-ae:checked ~ .ks-i:checked ~ .filterable [data-sheen="2005"][data-streaker="22007"],
.sh-ae:checked ~ .ks-hb:checked ~ .filterable [data-sheen="2005"][data-streaker="22008"],
.sh-vv:checked ~ .ks-fh:checked ~ .filterable [data-sheen="2006"][data-streaker="22002"],
.sh-vv:checked ~ .ks-cd:checked ~ .filterable [data-sheen="2006"][data-streaker="22003"],
.sh-vv:checked ~ .ks-t:checked ~ .filterable [data-sheen="2006"][data-streaker="22004"],
.sh-vv:checked ~ .ks-f:checked ~ .filterable [data-sheen="2006"][data-streaker="22005"],
.sh-vv:checked ~ .ks-s:checked ~ .filterable [data-sheen="2006"][data-streaker="22006"],
.sh-vv:checked ~ .ks-i:checked ~ .filterable [data-sheen="2006"][data-streaker="22007"],
.sh-vv:checked ~ .ks-hb:checked ~ .filterable [data-sheen="2006"][data-streaker="22008"],
.sh-hr:checked ~ .ks-fh:checked ~ .filterable [data-sheen="2007"][data-streaker="22002"],
.sh-hr:checked ~ .ks-cd:checked ~ .filterable [data-sheen="2007"][data-streaker="22003"],
.sh-hr:checked ~ .ks-t:checked ~ .filterable [data-sheen="2007"][data-streaker="22004"],
.sh-hr:checked ~ .ks-f:checked ~ .filterable [data-sheen="2007"][data-streaker="22005"],
.sh-hr:checked ~ .ks-s:checked ~ .filterable [data-sheen="2007"][data-streaker="22006"],
.sh-hr:checked ~ .ks-i:checked ~ .filterable [data-sheen="2007"][data-streaker="22007"],
.sh-hr:checked ~ .ks-hb:checked ~ .filterable [data-sheen="2007"][data-streaker="22008"] { display: inherit; }

/* Started filling */
.started:checked ~ .not-started:not(:checked) ~ .class .ks-item:not([data-started]),
.started:not(:checked) ~ .not-started:checked ~ .class .ks-item[data-started],
.started:checked ~ .not-started:not(:checked) ~ .completable:checked ~ .class .ks-item:not([data-started]):not([data-completable]) {
 display: none;
}

/* Completable */
.completable:not(:checked) ~ .incompletable:checked ~ .class .ks-item[data-completable],
.completable:checked ~ .incompletable:not(:checked) ~ .class .ks-item:not([data-completable]) {
 display: none;
}

/* Stock weapon */
.stock:not(:checked) ~ .nonstock:checked ~ .class .ks-item[data-stock="1"],
.stock:checked ~ .nonstock:not(:checked) ~ .class .ks-item[data-stock="0"] {
 display: none;
}

/* Trade status */
/*.tradable:not(:checked) ~ .untradable:checked ~ .class .ks-item[data-tradable="1"],
.tradable:checked ~ .untradable:not(:checked) ~ .class .ks-item[data-tradable="0"] {
 display: none;
}
.nevertradable:checked ~ .untradable:not(:checked) ~ .class .ks-item[data-tradable="1"],
.nevertradable:checked ~ .tradable:not(:checked) ~ .class .ks-item[data-tradable="0"] {
 display: none;
}*/
.tradable:checked ~ .untradable:not(:checked) ~ .nevertradable:not(:checked) ~ .class .ks-item[data-tradable="0"],
.tradable:checked ~ .untradable:not(:checked) ~ .nevertradable:not(:checked) ~ .class .ks-item[data-tradable="2"],
.tradable:not(:checked) ~ .untradable:checked ~ .nevertradable:not(:checked) ~ .class .ks-item[data-tradable="0"],
.tradable:not(:checked) ~ .untradable:checked ~ .nevertradable:not(:checked) ~ .class .ks-item[data-tradable="1"],
.tradable:not(:checked) ~ .untradable:not(:checked) ~ .nevertradable:checked ~ .class .ks-item[data-tradable="1"],
.tradable:not(:checked) ~ .untradable:not(:checked) ~ .nevertradable:checked ~ .class .ks-item[data-tradable="2"],
.tradable:checked ~ .untradable:checked ~ .nevertradable:not(:checked) ~ .class .ks-item[data-tradable="0"],
.tradable:checked ~ .untradable:not(:checked) ~ .nevertradable:checked ~ .class .ks-item[data-tradable="2"],
.tradable:not(:checked) ~ .untradable:checked ~ .nevertradable:checked ~ .class .ks-item[data-tradable="1"] {
 display: none;
}