:root{color-scheme:dark;--bg:#08111f;--panel:#101d2f;--line:#21324a;--text:#edf4ff;--muted:#91a3ba;--accent:#39d6a1;--blue:#5ea5ff}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% -10%,#173458 0,transparent 38%),var(--bg);color:var(--text);font:15px/1.55 system-ui,-apple-system,"Segoe UI","Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif}.site-head{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:28px;padding:16px max(22px,calc((100vw - 1240px)/2));background:rgba(8,17,31,.9);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.brand span,.key-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--accent);color:#042219;font-weight:900}.site-head nav{display:flex;gap:6px;flex:1}.site-head button,.site-head nav a,.admin-link,button{border:0;border-radius:10px;padding:10px 15px;background:transparent;color:var(--muted);cursor:pointer;font-weight:700}.site-head nav a{text-decoration:none;white-space:nowrap}.site-head nav button.active,.site-head nav button:hover,.site-head nav a:hover{background:#17263a;color:#fff}.admin-link{border:1px solid var(--line);text-decoration:none}main{max-width:1240px;margin:auto;padding:42px 22px 90px}.view{display:none}.view.active{display:block}.hero,.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:28px}.hero{padding:34px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(120deg,#132740,#0d1828)}p{margin:0;color:var(--accent);font-size:12px;letter-spacing:.16em;font-weight:800}h1{font-size:clamp(30px,5vw,52px);margin:4px 0}h2{margin:30px 0 14px;font-size:20px}.hero span,.auth-card span,.result-hint{color:var(--muted)}button,.filter-grid button{background:var(--accent);color:#06251c}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:16px}.card,.rank-grid article,.metric,.table-wrap{border:1px solid var(--line);border-radius:16px;background:rgba(16,29,47,.86);overflow:hidden}.card{padding:20px}.card .badge{display:inline-block;padding:4px 9px;border-radius:99px;background:#173e37;color:#6df0c3;font-size:12px}.card h3{margin:14px 0 4px}.card small,.card .meta{color:var(--muted)}.card button{width:100%;margin-top:18px}.empty{grid-column:1/-1;padding:35px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:16px}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:13px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}label{display:grid;gap:7px;color:var(--muted);font-size:13px}input,select{width:100%;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#091421;color:#fff}.result-hint{display:block;margin:18px 2px}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:13px;margin-bottom:18px}.metric{padding:20px}.metric span{color:var(--muted)}.metric strong{display:block;margin-top:6px;font-size:28px}.metric-small{font-size:17px!important}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:780px}th,td{padding:13px 15px;text-align:left;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:12px}.rank-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.rank-grid.single-rank{grid-template-columns:1fr}.rank-grid article{padding:20px}.rank-grid h2{margin:0 0 12px}.rank-row{display:grid;grid-template-columns:32px 1fr auto;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.rank-row span{color:var(--muted)}.rank-row em{font-style:normal;color:var(--accent)}
.live-filters{margin:-10px 0 26px}.live-card{padding:0}.live-cover{position:relative;aspect-ratio:16/10;background:#0a1727;overflow:hidden}.live-cover img,.cover-fallback{width:100%;height:100%;object-fit:cover}.cover-fallback{display:grid;place-items:center;font-size:46px;font-weight:900;color:#26405e}.live-cover .badge{position:absolute;left:12px;top:12px;background:#0a211dcc;backdrop-filter:blur(8px)}.live-body{padding:17px}.live-body h3{margin:0 0 5px}.live-facts{display:flex;justify-content:space-between;gap:8px;margin-top:10px;color:var(--muted);font-size:12px}.live-facts + .live-facts{margin-top:4px}.announcement{margin-top:10px;padding:8px 10px;border-radius:8px;background:#0b1624;color:#b9c7d9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.player-modal{position:fixed;inset:0;z-index:30;padding:4vw;display:grid;place-items:center;background:rgba(0,0,0,.8)}.player-modal[hidden]{display:none}.player-shell{position:relative;width:min(1320px,96vw);padding:18px;border:1px solid var(--line);border-radius:18px;background:#07101c}.player-shell video{width:100%;max-height:72vh;background:#000;border-radius:10px}.player-layout{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(260px,1fr);gap:14px}.player-layout aside{display:flex;flex-direction:column;min-height:340px;max-height:72vh;border:1px solid var(--line);border-radius:10px;background:#0a1523;overflow:hidden}.danmaku-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid var(--line)}.danmaku-head select{width:auto;padding:7px}#danmakuList{flex:1;overflow:auto;padding:8px}.danmaku-row{display:grid;grid-template-columns:auto 1fr;gap:3px 8px;padding:9px;border-bottom:1px solid #18283d}.danmaku-row b{color:#83b9ff}.danmaku-row>span:last-child{grid-column:1/-1;color:#dce8f8;word-break:break-word}.danmaku-row.member{border-left:3px solid var(--accent);background:#112b27}.danmaku-row.replay{grid-template-columns:auto 1fr}.danmaku-time{align-self:start;padding:2px 6px;border:1px solid #36516f;border-radius:5px;background:#12243a;color:#86baff;font:inherit;font-size:11px}.member-mark{padding:1px 5px;border-radius:4px;background:var(--accent);color:#05231a;font-size:11px;font-weight:800}.danmaku-row.member b{color:#7cf0c9}.close{position:absolute;right:14px;top:14px;background:#22324a;color:#fff;font-size:22px}.toast{position:fixed;right:22px;bottom:22px;z-index:40;padding:14px 18px;border-radius:10px;background:#c74455;color:#fff}
.auth-page{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(470px,100%);padding:38px;border:1px solid var(--line);border-radius:24px;background:var(--panel);box-shadow:0 28px 80px #0008}.auth-card h1{font-size:34px}.auth-card>span{display:block;margin-bottom:24px}.key-picker{margin:22px 0;padding:18px;border:1px dashed #426185;border-radius:14px;text-align:center;cursor:pointer}.key-picker input{margin-top:12px}.auth-card>button{width:100%;padding:14px}.auth-card>button:disabled{opacity:.45;cursor:not-allowed}.auth-status{margin-top:14px;color:var(--muted);letter-spacing:0}.back-link{display:block;margin-bottom:22px;color:var(--blue);text-decoration:none}
@media(max-width:900px){.player-layout{grid-template-columns:1fr}.player-layout aside{max-height:38vh;min-height:240px}}@media(max-width:720px){.site-head{align-items:flex-start;flex-wrap:wrap;gap:10px}.site-head nav{order:3;width:100%;overflow:auto}.site-head nav button,.site-head nav a{white-space:nowrap}.admin-link{margin-left:auto}.rank-grid{grid-template-columns:1fr}.hero{padding:24px}.hero h1{font-size:34px}main{padding-top:28px}}@media(max-width:520px){.live-facts{display:grid}.player-modal{padding:0}.player-shell{width:100vw;height:100vh;border-radius:0;overflow:auto}.player-shell video{margin-top:22px}}.gift-presets{grid-column:1/-1;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.gift-presets span{color:var(--muted);font-size:12px;font-weight:700}.gift-presets button{border:1px solid var(--line);border-radius:99px;padding:6px 12px;background:transparent;color:var(--muted);font-weight:700;font-size:12px;cursor:pointer}.gift-presets button:hover{border-color:var(--accent);color:#fff}.gift-presets button.active{border-color:var(--accent);background:#173e37;color:#6df0c3}

/* ==== 粉丝池重叠图（公开页 view-overlap） ==== */
.overlap-hero{position:relative;display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:space-between;margin-bottom:18px;padding:26px 30px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(120deg,#132740,#0d1828);overflow:hidden}
.overlap-hero:after{content:'';position:absolute;right:-70px;top:-140px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(57,214,161,.26),transparent 68%);pointer-events:none}
.overlap-hero-copy{position:relative;z-index:1;display:grid;gap:6px}
.overlap-hero-copy strong{font-size:22px}
.overlap-hero-copy span{color:var(--muted);font-size:13px}
.overlap-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(96px,1fr));gap:12px}
.overlap-metrics .metric{padding:12px 16px;border-radius:16px;background:rgba(16,29,47,.74)}
.overlap-metrics .metric span{font-size:12px}
.overlap-metrics .metric strong{margin-top:4px;font-size:20px}
.overlap-toolbar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-bottom:14px}
.overlap-seg{display:flex;gap:7px;flex-wrap:wrap}
.overlap-seg button{border:1px solid var(--line);border-radius:99px;padding:7px 13px;background:transparent;color:var(--muted);font-weight:700;font-size:12px;cursor:pointer;transition:border-color .18s,color .18s,background .18s}
.overlap-seg button:hover{border-color:var(--accent);color:#fff}
.overlap-seg button.active{border-color:var(--accent);background:#173e37;color:#6df0c3}
.overlap-seg button i{display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:50%;vertical-align:middle}
.overlap-back{display:none}
.overlap-only .overlap-back{display:inline-block;margin-left:auto;padding:8px 13px;border:1px solid var(--line);border-radius:10px;color:var(--muted);text-decoration:none;font-weight:700}
.overlap-only .site-head nav,.overlap-only .admin-link{display:none}
.overlap-only .view:not(#view-overlap){display:none!important}
.overlap-only main{max-width:1440px;padding-top:26px}
.overlap-search{display:flex;align-items:center}
.overlap-search input{min-width:230px;padding:7px 13px;border:1px solid var(--line);border-radius:99px;background:rgba(11,23,39,.72);color:var(--text);font:inherit;font-size:12px}
.overlap-search input::placeholder{color:#6f8299}
.overlap-search input:focus{outline:none;border-color:var(--accent)}
.overlap-check{display:flex;align-items:center;gap:7px;margin-left:auto;color:var(--muted);font-size:12px;font-weight:700}
.overlap-stage{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}
.overlap-canvas{position:relative;border:1px solid var(--line);border-radius:24px;background:radial-gradient(circle at 16% 6%,rgba(94,165,255,.16),transparent 44%),radial-gradient(circle at 84% 94%,rgba(57,214,161,.14),transparent 46%),linear-gradient(#0b1727,#081120);overflow:hidden}
.overlap-canvas:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(33,50,74,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(33,50,74,.5) 1px,transparent 1px);background-size:46px 46px;-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 28%,transparent 76%);mask-image:radial-gradient(circle at 50% 50%,#000 28%,transparent 76%);pointer-events:none}
#overlapSvg{display:block;width:100%;height:auto;cursor:grab;touch-action:none}
#overlapSvg.dragging{cursor:grabbing}
.overlap-tips{margin:-6px 0 12px;color:var(--muted);font-size:12px}
.ov-help{margin:14px 0 0;padding:12px 14px;border:1px solid rgba(64,96,140,.45);border-radius:12px;background:rgba(255,255,255,.02)}
.ov-help h3{margin:0 0 8px;font-size:13px;color:var(--text)}
.ov-help ul{margin:0;padding-left:17px;display:grid;gap:6px}
.ov-help li{font-size:12px;line-height:1.65;color:var(--muted)}
.ov-help b{color:var(--text);font-weight:600}
#overlapSvg:active{cursor:grabbing}
#overlapSvg .ov-edge{stroke-linecap:round;transition:stroke-opacity .18s,stroke-width .18s}
#overlapSvg .ov-edge.flow{stroke-dasharray:7 11;animation:ov-flow 1.05s linear infinite}
@keyframes ov-flow{to{stroke-dashoffset:-36}}
#overlapSvg .ov-node{cursor:pointer;transition:opacity .18s}
#overlapSvg .ov-label{font-size:11px;font-weight:700;paint-order:stroke;stroke:rgba(8,17,31,.94);stroke-width:3.4px;stroke-linejoin:round;fill:#dbe7f7;pointer-events:none}
#overlapSvg.labels-off .ov-label{display:none}
#overlapSvg.dimmed .ov-label{opacity:.32}
.overlap-zoom{position:absolute;right:14px;top:14px;display:grid;gap:6px}
.overlap-zoom button{width:34px;height:34px;border-radius:12px;border:1px solid var(--line);background:rgba(13,24,40,.86);color:var(--text);font-weight:800;cursor:pointer;backdrop-filter:blur(8px)}
.overlap-zoom button:hover{border-color:var(--accent);color:#fff}
.overlap-legend{position:absolute;left:16px;bottom:14px;display:flex;flex-wrap:wrap;gap:12px;padding:8px 13px;border-radius:99px;background:rgba(9,18,32,.74);border:1px solid var(--line);font-size:12px;color:var(--muted);backdrop-filter:blur(10px)}
.overlap-legend i{display:inline-block;width:9px;height:9px;margin-right:5px;border-radius:50%;vertical-align:middle}
.overlap-legend b{color:var(--text);font-weight:700}
.overlap-tip{position:absolute;right:16px;bottom:16px;z-index:3;width:min(360px,calc(100% - 32px));max-height:55%;overflow:auto;padding:12px 14px;border-radius:14px;border:1px solid #2c4767;background:rgba(9,18,32,.95);box-shadow:0 18px 40px #0009;color:var(--text);font-size:12px;line-height:1.65;pointer-events:none;backdrop-filter:blur(12px)}
.overlap-tip[hidden]{display:none}
.overlap-tip b{display:block;margin-bottom:5px;font-size:13px}
.overlap-tip em{font-style:normal;color:var(--accent);font-weight:700}
.overlap-tip .tip-blue{color:var(--blue);font-weight:700}
.overlap-side{border:1px solid var(--line);border-radius:24px;background:rgba(16,29,47,.74);padding:20px 20px 16px}
.overlap-side h2{margin:0 0 12px;font-size:16px}
.overlap-rank{display:grid;gap:9px;max-height:540px;overflow:auto;padding-right:2px}
.overlap-rank button{display:grid;gap:7px;width:100%;padding:10px 12px;border:1px solid transparent;border-radius:14px;background:rgba(11,23,39,.72);color:var(--text);text-align:left;cursor:pointer;font-weight:600;transition:border-color .18s,background .18s}
.overlap-rank button:hover{border-color:var(--accent)}
.overlap-rank button.active{border-color:var(--accent);background:#142f2a}
.overlap-rank .pair{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}
.overlap-rank .pair em{font-style:normal;color:var(--accent);font-weight:800}
.overlap-rank .bar{height:5px;border-radius:99px;background:#1b2c44;overflow:hidden}
.overlap-rank .bar span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--blue),var(--accent))}
.overlap-rank .meta{color:var(--muted);font-size:11px;font-weight:600}
.overlap-note{margin-top:12px;color:var(--muted);font-size:11px;line-height:1.65}
@media(max-width:1080px){.overlap-stage{grid-template-columns:1fr}.overlap-side{order:-1}.overlap-rank{max-height:280px}}
@media(max-width:720px){.overlap-tip{position:static;width:auto;margin-top:10px;max-height:none}.overlap-hero{padding:20px}.overlap-metrics{grid-template-columns:repeat(2,minmax(96px,1fr));width:100%}.overlap-check{margin-left:0}.overlap-legend{position:static;margin:10px;border-radius:16px}}

/* ===== 重叠图筛选面板（时间 / 礼物 / 门槛滑块） ===== */
.ov-filters{display:flex;flex-direction:column;gap:10px;margin:0 0 14px;padding:12px 14px;border-radius:14px;
  background:rgba(16,29,47,.72);border:1px solid rgba(94,165,255,.16)}
.ov-frow{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.ov-flabel{min-width:34px;font-size:12px;font-weight:600;color:#8fa6c4;letter-spacing:.04em}
.ov-custom{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#8fa6c4}
.ov-custom input[type=date],.ov-custom input[type=text]{background:#0c1729;border:1px solid rgba(94,165,255,.22);
  border-radius:8px;color:#dce7f5;padding:5px 8px;font-size:12px;font-family:inherit}
.ov-custom input[type=text]{min-width:140px}
.ov-custom input[type=date]{width:128px}
.ov-custom button,.ov-chip{background:#132540;border:1px solid rgba(94,165,255,.22);border-radius:8px;
  color:#c7d7ea;padding:5px 10px;font-size:12px;cursor:pointer;transition:.15s}
.ov-custom button:hover,.ov-chip:hover{border-color:#39d6a1;color:#eaf5ff}
.ov-custom button{flex-shrink:0;white-space:nowrap}
.ov-giftchips{display:flex;flex-wrap:wrap;gap:6px}
.ov-chip{padding:4px 9px}
.ov-chip.active{background:rgba(57,214,161,.18);border-color:#39d6a1;color:#a9f0d5}
.ov-selected{width:100%;max-height:100px;overflow:auto}
.ov-picker{width:100%;padding:12px;border:1px solid rgba(94,165,255,.18);border-radius:12px;box-sizing:border-box;background:#0c1729}
.ov-picker-head,.ov-picker-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}
.ov-picker-head{justify-content:space-between}.ov-picker-head strong{font-size:13px}
.ov-picker-tools input,.ov-picker-tools select{width:auto;min-width:0;background:#132540;border:1px solid rgba(94,165,255,.22);border-radius:8px;color:#dce7f5;padding:7px 10px;font:inherit;font-size:12px}
.ov-picker-tools input{flex:1;min-width:140px}
.ov-gift-list{max-height:270px;overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;padding:4px}
.ov-gift-option{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid rgba(94,165,255,.14);border-radius:8px;font-size:12px;cursor:pointer;min-width:0}
.ov-gift-option input{width:16px;height:16px;padding:0;accent-color:#39d6a1;flex-shrink:0}.ov-gift-option span{flex:1;min-width:0;overflow-wrap:anywhere}.ov-gift-option small{color:#8fa6c4;display:block;margin-top:3px;font-size:11px}
.ov-glow-group{grid-column:1/-1}.ov-glow-group summary{padding:8px;cursor:pointer;color:#a9f0d5;font-size:12px}.ov-glow-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px}
.ov-picker-note,.ov-applied{font-size:12px;font-weight:400;letter-spacing:normal;color:#8fa6c4;line-height:1.6;margin:8px 0}.ov-applied{width:100%;margin:0;color:#a9f0d5}
.ov-apply{border-color:#39d6a1;color:#a9f0d5}#ovGiftDraftState{font-size:12px;color:#ffd166}
.ov-mobile-open,.ov-mobile-close{display:none}
@media(max-width:720px){.ov-mobile-open,.ov-mobile-close{display:inline-block}.ov-picker{display:none}.ov-picker.open{display:flex;flex-direction:column;position:fixed;inset:auto 0 0;max-height:88dvh;z-index:1000;border-radius:18px 18px 0 0;box-shadow:0 -100px 0 100vh rgba(0,0,0,.5);padding:16px}.ov-gift-list{max-height:none;min-height:80px;overflow:auto;flex:1}.ov-picker-tools{flex-shrink:0}.ov-gift-list,.ov-glow-items{grid-template-columns:repeat(2,minmax(0,1fr))}.ov-picker .ov-custom input{min-width:0;width:100%}.ov-picker .ov-custom{flex-shrink:0}.ov-picker-note{flex-shrink:0}}
.ov-range{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:#8fa6c4}
.ov-range input[type=range]{width:110px;accent-color:#39d6a1}
.ov-range b{color:#7ee7c0;font-variant-numeric:tabular-nums;min-width:36px}
.ov-fload{font-size:12px;color:#ffd166;margin-left:auto}
@media(max-width:720px){.ov-giftchips{width:100%}.ov-range input[type=range]{width:80px}}

/* 「数据截至 xx:xx」：跟随标题的小字提示 */
.as-of{font-size:12px;font-weight:400;color:#8fa6c4;margin-left:8px;letter-spacing:.02em}

/* 筛选未生效时的提示：用警示色，避免用户把旧数据当成筛选结果 */
.as-of-failed{color:#ffb454 !important}
.result-hint.as-of-failed{color:#ffb454 !important;font-weight:600}

/* 公开盲审入口 */
.review-callout{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;margin:-10px 0 26px;padding:24px 26px;border:1px solid rgba(94,165,255,.35);border-radius:20px;background:linear-gradient(115deg,rgba(23,52,88,.9),rgba(16,29,47,.9));overflow:hidden}
.review-callout:after{content:'';position:absolute;right:72px;top:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(57,214,161,.2),transparent 68%);pointer-events:none}
.review-callout-copy{position:relative;z-index:1;max-width:760px}
.review-callout h2{margin:5px 0 6px;font-size:clamp(20px,3vw,28px)}
.review-callout-copy>span{color:var(--muted)}
.review-callout-action{position:relative;z-index:1;display:inline-flex;align-items:center;justify-content:center;gap:9px;flex:0 0 auto;padding:12px 18px;border-radius:12px;background:var(--accent);color:#06251c;text-decoration:none;font-weight:800;box-shadow:0 10px 28px rgba(57,214,161,.14);transition:transform .18s,box-shadow .18s}
.review-callout-action:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(57,214,161,.24)}
.review-callout-action:focus-visible{outline:3px solid rgba(94,165,255,.72);outline-offset:3px}
@media(max-width:720px){.review-callout{align-items:stretch;flex-direction:column;padding:21px}.review-callout-action{width:100%}}
/* Keep public navigation labels horizontal and aligned at every viewport. */
.site-head .brand,.site-head .admin-link{flex-shrink:0;white-space:nowrap}
.site-head nav{min-width:0;align-items:center;overflow-x:auto}
.site-head nav>button,.site-head nav>a{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;white-space:nowrap;font:inherit;font-weight:700;line-height:1.55;min-height:43px}
@media(max-width:720px){.site-head nav{flex:0 0 100%;width:100%;max-width:100%}}

.gift-member-scope{grid-column:1/-1;border-top:1px solid var(--line);padding-top:14px}.gift-member-scope-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.gift-member-scope p{font-size:12px;color:var(--muted);line-height:1.6}.gift-member-scope summary{cursor:pointer;font-size:13px;padding:6px 0}.gift-member-picker-actions{display:flex;gap:8px;margin:10px 0;flex-wrap:wrap}.gift-member-picker-actions input{flex:1;min-width:160px}.gift-member-selected{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.gift-member-selected button{font-size:12px;padding:5px 9px}.gift-member-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));max-height:260px;overflow:auto;gap:6px}.filter-grid .gift-member-choice{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid var(--line);border-radius:7px;font-size:12px}.filter-grid .gift-member-choice input{width:16px;height:16px;flex-shrink:0;accent-color:#d9b76c}.gift-member-choice small{display:block;font-size:10px;margin-top:4px}@media(max-width:760px){.gift-member-scope-controls{grid-template-columns:1fr}.gift-member-picker-actions button{flex:1}}

.site-foot{display:flex;align-items:center;gap:12px;max-width:1240px;margin:0 auto;padding:8px 22px 28px;color:var(--muted);font-size:13px}
.site-foot button{background:transparent;color:var(--blue);border:1px solid var(--line);padding:8px 12px}
.feedback-modal{position:fixed;inset:0;z-index:35;display:grid;place-items:center;padding:18px;background:rgba(0,0,0,.72)}
.feedback-modal[hidden]{display:none}
.feedback-card{width:min(520px,100%);padding:22px;border:1px solid var(--line);border-radius:18px;background:#101d2f}
.feedback-card h2{margin:0 0 6px}
.feedback-card label{display:grid;gap:6px;margin-top:12px;color:var(--muted);font-size:13px;font-weight:700}
.feedback-card select,.feedback-card textarea,.feedback-card input{width:100%;padding:10px;border:1px solid var(--line);border-radius:10px;background:#0b1624;color:var(--text);font:inherit}
.feedback-card textarea{min-height:120px;resize:vertical}
.feedback-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.feedback-actions button[type=button]{background:#22324a;color:#fff}
