.platforms{background:var(--surface);border-bottom:1px solid var(--line)}.platforms-inner{padding-inline:0;display:flex}.platform{min-height:48px;padding:0 var(--s2);font-size:var(--text-sm);color:var(--ink-2);white-space:nowrap;flex:1;justify-content:center;align-items:center;gap:6px;min-width:0;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.platform.is-active{color:var(--green-deep);font-weight:600}.platform.is-active:after{content:"";left:var(--s4);right:var(--s4);background:var(--green);border-radius:3px 3px 0 0;height:3px;position:absolute;bottom:-1px}.platform.is-disabled{color:var(--muted);cursor:not-allowed}.platform.is-disabled .source-mark{opacity:.55}.platform-count{font-size:var(--text-xs);font-variant-numeric:tabular-nums;background:var(--green-tint);color:var(--green-deep);border-radius:var(--r-pill);padding:1px 6px;font-weight:600}.platform-soon{font-size:var(--text-xs);color:var(--muted);font-weight:500}.layout{padding-top:0}.page-title{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.filters{z-index:10;margin-inline:calc(var(--s4) * -1);background:var(--surface);border-bottom:1px solid var(--line);gap:var(--s2);scrollbar-width:none;padding:var(--s2) var(--s4);scroll-padding-inline:var(--s4);display:flex;position:sticky;top:0;overflow-x:auto}.filters::-webkit-scrollbar{display:none}.filter-group{flex:none;display:flex}.filter-group+.filter-group:before{content:"";width:1px;margin:6px var(--s2) 6px 0;background:var(--line);flex:none;align-self:stretch}.filter-heading{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.chips{gap:6px;display:flex}.chip{min-height:36px;padding:0 var(--s3);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);font-size:var(--text-sm);color:var(--ink-2);white-space:nowrap;transition:background-color var(--dur) var(--ease-out), border-color var(--dur) var(--ease-out), color var(--dur) var(--ease-out);flex:none;align-items:center;gap:6px;font-weight:500;display:inline-flex;position:relative}.chip:before{content:"";position:absolute;inset:-4px 0}.chip:hover{border-color:var(--green-line);color:var(--ink)}.chip:active{background:var(--line-soft)}.chip[aria-pressed=true]{background:var(--green-tint);border-color:var(--green);color:var(--green-deep);font-weight:600}.chip-count{font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums;font-weight:500}.chip[aria-pressed=true] .chip-count{color:var(--green-strong)}.no-js .filters,.no-js .sort,.no-js .more,.js .ticket-item[data-extra],.chip-short{display:none}@media (max-width:1023px){.filters{overscroll-behavior-x:contain}.chips{padding-block:4px}.chip-long{display:none}.chip-short{display:inline}}.results{padding-block:var(--s2) var(--s8);min-width:0}.results-bar{justify-content:space-between;align-items:center;gap:var(--s3);margin-bottom:var(--s2);display:flex}.results-heading{font-size:var(--text-sm);color:var(--ink-2);font-variant-numeric:tabular-nums;font-weight:500}.results-heading span{color:var(--ink);font-weight:700}.sort{align-items:center;gap:var(--s2);font-size:var(--text-sm);color:var(--muted);display:inline-flex;position:relative}.sort select{appearance:none;min-height:var(--tap);padding:0 32px 0 var(--s3);border:1px solid var(--line);border-radius:var(--r);background:var(--surface);color:var(--ink);cursor:pointer;font-weight:600;font-size:var(--text-sm)}.sort select:hover{border-color:var(--green-line)}.sort-chevron{pointer-events:none;color:var(--ink-2);position:absolute;right:10px}.search-note.is-error{color:var(--hot);background:var(--hot-tint);border-color:#e7b9bd}.search-note{font-size:var(--text-sm);color:var(--green-deep);background:var(--green-tint);border:1px solid var(--green-line);border-radius:var(--r);padding:var(--s2) var(--s3);margin-bottom:var(--s3)}.tickets{gap:var(--s3);list-style:none;display:grid}.ticket-item{filter:var(--shadow-ticket);min-width:0}.ticket{--notch:7px;background:var(--surface);border-radius:var(--r);min-height:100%;-webkit-mask:radial-gradient(circle var(--notch) at var(--stub-w) 0, #0000 98%, #000) top / 100% 51% no-repeat, radial-gradient(circle var(--notch) at var(--stub-w) 100%, #0000 98%, #000) bottom / 100% 51% no-repeat;-webkit-mask:radial-gradient(circle var(--notch) at var(--stub-w) 0, #0000 98%, #000) top / 100% 51% no-repeat, radial-gradient(circle var(--notch) at var(--stub-w) 100%, #0000 98%, #000) bottom / 100% 51% no-repeat;mask:radial-gradient(circle var(--notch) at var(--stub-w) 0, #0000 98%, #000) top / 100% 51% no-repeat, radial-gradient(circle var(--notch) at var(--stub-w) 100%, #0000 98%, #000) bottom / 100% 51% no-repeat;display:flex}.stub{width:var(--stub-w);color:#fff;background:var(--green);border-radius:var(--r) 0 0 var(--r);text-align:center;padding:var(--s3) 6px var(--s3) 10px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;display:flex;-webkit-mask:radial-gradient(3px at 0,#0000 95%,#000) 0 0/100% 10px repeat-y;mask:radial-gradient(3px at 0,#0000 95%,#000) 0 0/100% 10px repeat-y}.stub-ship{background:var(--teal)}.stub-icon{stroke-width:1.6px;opacity:.92;width:22px;height:22px;margin-bottom:2px}.stub-type{font-size:var(--text-xs);letter-spacing:.02em;color:#d9efe5;font-weight:600}.stub-ship .stub-type{color:#d6ecf1}.stub-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700;line-height:1.1}.stub-value.is-long{font-size:1.0625rem}.stub-sub{font-size:var(--text-xs);color:#e6f4ed;font-variant-numeric:tabular-nums;line-height:1.3}.stub-ship .stub-sub{color:#e2f1f4}.ticket-body{min-width:0;padding:var(--s3) var(--s3) var(--s3) var(--s4);border-left:1.5px dashed var(--line);flex-direction:column;flex:1;display:flex}.ticket-meta{font-size:var(--text-xs);color:var(--muted);align-items:center;gap:6px;min-height:20px;display:flex}.source{color:var(--ink-2);align-items:center;gap:5px;font-weight:600;display:inline-flex}.source .source-mark{border-radius:2px;width:8px;height:8px}.ticket-cat{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ticket-cat:before{content:"·";color:#9aaba2;margin-right:6px}.badge{font-size:var(--text-xs);border-radius:var(--r-sm);font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:4px;margin-left:auto;padding:2px 7px;font-weight:600;line-height:16px;display:inline-flex}.badge-hot{background:var(--hot-tint);color:var(--hot)}.badge-soon{background:var(--soon-tint);color:var(--soon)}.badge+.badge{margin-left:0}.badge-copied{background:var(--green-tint);color:var(--green-deep)}.ticket-title{font-size:var(--text-base);letter-spacing:-.01em;font-variant-numeric:tabular-nums;margin-top:4px;font-weight:600;line-height:1.35}.ticket-min{font-size:var(--text-sm);color:var(--ink-2);font-variant-numeric:tabular-nums;min-width:0;margin-top:1px}.usage{margin-top:var(--s2)}.usage-bar{border-radius:var(--r-pill);background:var(--track);height:4px;overflow:hidden}.usage-bar i{border-radius:inherit;background:var(--green);height:100%;display:block}.is-hot .usage-bar i{background:var(--hot)}.is-soon .usage-bar i{background:#9aaba2}.usage-text{justify-content:space-between;gap:var(--s2);font-size:var(--text-xs);color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;margin-top:5px;display:flex}.usage-text b{color:var(--ink);font-weight:600}.is-hot .usage-text b{color:var(--hot)}.expiry.is-today{color:var(--hot);font-weight:600}.ticket-code{min-width:0;padding:var(--s2);border:1px dashed var(--green-line);background:#f7faf8;border-radius:6px;flex:1;align-items:center;display:flex}.ticket-code code{font-family:var(--mono);color:var(--ink);letter-spacing:.01em;-webkit-user-select:all;user-select:all;text-overflow:ellipsis;white-space:nowrap;font-size:.75rem;font-weight:500;display:block;overflow:hidden}.ticket-actions{padding-top:var(--s3);gap:6px;margin-top:auto;display:flex}.ticket-detail{margin-top:var(--s2);font-size:var(--text-xs);color:var(--ink-2)}.js .ticket-detail{display:none}.empty{text-align:center;background:var(--surface);border:1px dashed var(--green-line);border-radius:var(--r);padding:var(--s8) var(--s5)}.empty-title{font-size:var(--text-lg);font-weight:700}.empty-text{font-size:var(--text-sm);color:var(--ink-2);margin:var(--s1) auto var(--s4);max-width:40ch}.more{justify-items:center;gap:var(--s2);margin-top:var(--s5);display:grid}.more-count{font-size:var(--text-sm);color:var(--muted);font-variant-numeric:tabular-nums}.loading-status{align-items:center;gap:var(--s2);margin-bottom:var(--s3);font-size:var(--text-sm);color:var(--ink-2);display:flex}.loading-spinner{border:2px solid var(--green-line);border-top-color:var(--green);border-radius:50%;flex:none;width:16px;height:16px;animation:.8s linear infinite spin}.loading.is-slow .loading-status{color:var(--ink)}.sk-list{pointer-events:none}.sk-ticket{background:var(--surface);border-radius:var(--r);min-height:132px;filter:var(--shadow-ticket);display:flex}.sk-stub{width:var(--stub-w);justify-content:center;align-items:center;gap:var(--s2);border-radius:var(--r) 0 0 var(--r);background:var(--green-tint);flex-direction:column;flex:none;display:flex}.sk-body{gap:var(--s2);min-width:0;padding:var(--s3) var(--s3) var(--s3) var(--s4);border-left:1.5px dashed var(--line);flex-direction:column;flex:1;display:flex}.sk{background:var(--line-soft);border-radius:4px;display:block}.sk-ticket{animation:1.6s ease-in-out infinite sk-breathe}.sk-ticket:nth-child(2){animation-delay:.16s}.sk-ticket:nth-child(3){animation-delay:.32s}.sk-ticket:nth-child(4){animation-delay:.48s}.sk-ticket:nth-child(5){animation-delay:.64s}.sk-ticket:nth-child(6){animation-delay:.8s}.sk-stub .sk{background:#cfe5d9}.sk-stub-icon{border-radius:6px;width:22px;height:22px}.sk-stub-value{width:60%;height:20px}.sk-line{height:10px}.sk-title{height:16px}.sk-w40{width:40%}.sk-w70{width:70%}.sk-bar{border-radius:var(--r-pill);height:4px;margin-top:var(--s1)}.sk-actions{gap:6px;margin-top:auto;display:flex}.sk-code{border-radius:6px;flex:1;height:36px}.sk-btn{background:#d5e8de;border-radius:6px;flex:none;width:92px;height:36px}.sk-ticket:nth-child(n+3) .sk-stub,.sk-ticket:nth-child(n+3) .sk-body{opacity:.7}.sk-ticket:nth-child(n+5) .sk-stub,.sk-ticket:nth-child(n+5) .sk-body{opacity:.45}.results.is-loading .results-bar{display:none}.loading-status{min-height:32px}.layout.is-loading .filters{opacity:.5;pointer-events:none}.load-error{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:var(--s8) var(--s5)}@keyframes sk-breathe{50%{opacity:.55}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.sk-ticket{animation:none!important}.loading-spinner{animation:1.6s linear infinite spin!important}}.guide{padding-bottom:var(--s12);max-width:760px}.guide-heading{font-size:var(--text-xl);letter-spacing:-.015em;margin:var(--s6) 0 var(--s3);text-wrap:balance;font-weight:700;line-height:1.25}.guide-item{background:var(--surface);border:1px solid var(--line);border-radius:var(--r)}.guide-item+.guide-item{margin-top:var(--s2)}.guide-item summary{cursor:pointer;justify-content:space-between;align-items:center;gap:var(--s3);min-height:52px;padding:var(--s3) var(--s4);font-weight:600;font-size:var(--text-base);list-style:none;display:flex}.guide-item summary::-webkit-details-marker{display:none}.guide-item summary:hover{color:var(--green-deep)}.guide-chevron{color:var(--muted);transition:transform var(--dur) var(--ease-out)}.guide-item[open] .guide-chevron{transform:rotate(180deg)}.guide-item>:not(summary){padding:0 var(--s4) var(--s4);font-size:var(--text-sm);color:var(--ink-2);max-width:68ch}.guide-list{gap:var(--s1) var(--s4);display:grid}.guide-list dt{color:var(--ink);font-weight:600}.guide-list dd+dt{margin-top:var(--s2)}@media (max-width:419px){.sort-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.platform{gap:4px;padding:0 4px}:root{--stub-w:72px}.stub .stub-value{font-size:1.3125rem}.stub .stub-value.is-long{font-size:.9375rem}.ticket-code code{letter-spacing:0;font-size:.6875rem}.ticket-code{padding:var(--s2) 6px}.ticket-body{padding-left:14px}}@media (max-width:359px){.platform .source-mark,.platform-soon{display:none}:root{--stub-w:64px}.stub .stub-value{font-size:1.0625rem}.ticket-body{padding:10px 10px 10px 12px}}@media (min-width:720px){.tickets{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){:root{--stub-w:104px}.platforms-inner{padding-inline:var(--s4);gap:var(--s2)}.platform{padding:0 var(--s5);min-height:52px;font-size:var(--text-base);flex:none}.platform.is-active:after{left:var(--s3);right:var(--s3)}.layout{column-gap:var(--s8);grid-template-columns:248px minmax(0,1fr);grid-template-areas:"title title""filters results"".guide";align-items:start;display:grid}.page-title{clip:auto;white-space:normal;letter-spacing:-.02em;width:auto;height:auto;margin:var(--s8) 0 var(--s5);grid-area:title;font-size:1.625rem;font-weight:700;line-height:1.2;position:static;overflow:visible}.filters{top:var(--s4);gap:var(--s5);padding:var(--s4);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;grid-area:filters;margin:0;position:sticky;overflow:visible}.filter-group{gap:var(--s2);flex-direction:column}.filter-group+.filter-group:before{width:auto;height:1px;margin:0 0 var(--s3);background:var(--line-soft)}.filter-heading{clip:auto;width:auto;height:auto;font-size:var(--text-sm);color:var(--ink);font-weight:700;position:static;overflow:visible}.chips{flex-direction:column;gap:2px}.chip{min-height:40px;padding:0 var(--s3);margin-inline:calc(var(--s3) * -1);width:calc(100% + var(--s3) * 2);font-size:var(--text-base);border:0;border-radius:6px;justify-content:space-between}.chip:before{display:none}.chip:hover{background:var(--line-soft)}.chip[aria-pressed=true]{background:var(--green-tint)}.results{grid-area:results;padding-top:0}.results-bar{margin-bottom:var(--s3)}.results-heading{font-size:var(--text-base)}.tickets{gap:var(--s4)}.ticket-body{padding:var(--s4) var(--s4) var(--s4) var(--s5)}.stub-value{font-size:1.75rem}.stub-value.is-long{font-size:1.1875rem}.stub-sub,.stub-type{font-size:var(--text-xs)}.ticket-actions .btn{min-height:40px;padding-inline:var(--s4)}.guide{grid-area:guide}}.refresh-notice{justify-content:space-between;align-items:center;gap:var(--s3);margin-bottom:var(--s3);padding:0 var(--s3);border-radius:var(--r);background:var(--soon-tint);color:var(--ink-2);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.refresh-notice p{padding-block:var(--s2)}
