.hidden{display:none!important}
.x-hint{font-weight:400;color:var(--muted);font-size:.8rem}
.ss-head h1{line-height:1.15}.ss-h-sub{display:block;font-size:.95rem;font-weight:600;color:var(--muted);margin-top:4px}
.ss-card{margin-bottom:var(--s3,16px)}
.ss-note{background:#f3f5fb;border:1px solid #cbd7f3;color:#20428a;border-radius:12px;padding:10px 12px;font-size:.88rem;margin:0 0 12px}
.ss-note b{background:#acc0ec;color:#162c5c;border-radius:6px;padding:1px 6px;margin-right:4px}
.ss-lock{background:#f3f5fb;border:1px solid #cbd7f3;border-radius:14px;padding:14px;margin:0 0 12px}.ss-lock h2{margin:0 0 6px;font-size:1.05rem;color:#162c5c}.ss-lock p{margin:0 0 10px;font-size:.9rem;color:#20428a}
.ss-pick-empty{border:2px dashed var(--line-2,#c9d3e3);border-radius:14px;padding:18px 14px;text-align:center;background:var(--bg,#f6f8fc)}
.ss-pick-empty p{margin:0 0 12px;font-size:.92rem;color:var(--ink-2,#2b3a55)}
.ss-pick-btns{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.ss-pick-btns .t-btn{flex:1 1 140px;cursor:pointer}
.ss-main{display:grid;justify-items:center;gap:8px}.ss-main img{max-width:100%;max-height:260px;border-radius:12px;border:1px solid var(--line,#dde3ee);background:#fff}
.ss-extra{margin-top:14px;border-top:1px solid var(--line,#dde3ee);padding-top:10px}.ss-extra-h{margin:0 0 8px;font-size:.92rem;color:var(--ink-2,#2b3a55)}
.ss-extra label{cursor:pointer}
.ss-thumbs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.ss-thumbs:empty{display:none}
.ss-th{position:relative;width:72px;height:72px;border-radius:10px;overflow:hidden;border:1px solid var(--line,#dde3ee);background:#fff}.ss-th img{width:100%;height:100%;object-fit:contain}
.ss-th button{position:absolute;top:2px;right:2px;width:24px;height:24px;border-radius:50%;border:0;background:rgba(19,32,63,.75);color:#fff;font-size:15px;line-height:24px;padding:0;cursor:pointer}
.ss-guess{margin-top:8px;background:var(--accent-soft,#eef3fc);border-radius:12px;padding:10px 12px;font-size:.9rem;color:var(--ink-2,#2b3a55)}
.ss-guess p{margin:6px 0 0}.ss-g-row{display:flex;justify-content:space-between;align-items:center;gap:8px;font-weight:650;color:var(--navy,#13203f)}.ss-g-row b{font-size:1.35rem;color:var(--accent,#1d46a8)}
.ss-g-warn{border-top:1px solid var(--line,#dde3ee);padding-top:6px}
.ss-gobox{margin:0 0 var(--s3,16px)}.ss-go{min-height:52px;font-size:1.05rem}.ss-go-note{text-align:center;margin:6px 0 0}
.ss-loading{display:flex;gap:10px;align-items:center;justify-content:center;padding:18px;color:var(--navy,#13203f);font-weight:600}
.ss-spin{width:26px;height:26px;border-radius:50%;border:3px solid #d3dbe8;border-top-color:var(--accent,#1d46a8);animation:ssspin .8s linear infinite;flex:none}@keyframes ssspin{to{transform:rotate(360deg)}}
.ss-res-top{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:0 0 10px}.ss-res-h{margin:0;font-size:1.2rem;color:var(--navy,#13203f)}
.ss-res-top .t-btn{flex:1 1 200px}
.ss-top3{background:var(--accent-soft,#eef3fc);border:1px solid #cbd7f3;border-radius:14px;padding:12px;margin:0 0 14px}.ss-top3 h3{margin:0 0 2px;font-size:1.02rem;color:var(--navy,#13203f)}.ss-top3 .x-hint{margin:0 0 10px}
.ss-more-h{font-size:1rem;color:var(--navy,#13203f);margin:4px 0 8px}
.ss-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}@media(min-width:640px){.ss-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:960px){.ss-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.ss-tile{position:relative;margin:0;background:var(--surface,#fff);border:1px solid var(--line,#dde3ee);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.ss-tile img{display:block;width:100%;aspect-ratio:1;object-fit:contain;background:#fff}
.ss-tile figcaption{display:flex;flex-direction:column;gap:6px;padding:8px;font-size:.8rem;font-weight:600;color:var(--ink-2,#2b3a55);flex:1;justify-content:space-between}
.ss-tile figcaption .t-btn{width:100%;text-align:center}
.ss-tile-top{border:2px solid var(--accent,#1d46a8)}
.ss-badge{position:absolute;top:6px;left:6px;background:var(--accent,#1d46a8);color:#fff;font-weight:700;font-size:.8rem;border-radius:999px;padding:2px 8px}
.ss-steps{margin:0 0 12px;padding-left:20px;font-size:.92rem}.ss-steps li{margin-bottom:6px}
.ss-sub{font-size:.98rem;color:var(--navy,#13203f);margin:14px 0 6px}
.ss-tbl{width:100%;border-collapse:collapse;font-size:.84rem}.ss-tbl th,.ss-tbl td{text-align:left;padding:6px 4px;border-bottom:1px solid var(--line,#dde3ee);vertical-align:top}.ss-tbl th{color:var(--muted);font-weight:600}
.ss-tbl b{color:var(--accent,#1d46a8)}
.ss-rules{margin:0;padding-left:20px;font-size:.88rem}
html[data-theme="dark"] .ss-note,html[data-theme="dark"] .ss-lock{background:#16284a;border-color:rgba(150,175,215,.35);color:#cfdcf3}
html[data-theme="dark"] .ss-lock h2{color:#F7FBFF}html[data-theme="dark"] .ss-lock p{color:#cfdcf3}
html[data-theme="dark"] .ss-top3{border-color:rgba(150,175,215,.35)}
html[data-theme="dark"] .ss-g-row,html[data-theme="dark"] .ss-res-h,html[data-theme="dark"] .ss-top3 h3,html[data-theme="dark"] .ss-more-h,html[data-theme="dark"] .ss-sub,html[data-theme="dark"] .ss-loading{color:#F7FBFF}
html[data-theme="dark"] .ss-g-row b,html[data-theme="dark"] .ss-tbl b{color:#9DBBF0}
html[data-theme="dark"] .ss-tile-top{border-color:#6f97e0}

/* v3: photo-rule badge */
.ss-rule{display:inline-block;margin-left:4px;font-size:.72rem;font-weight:700;color:#1d46a8;background:#dde6f2;border-radius:999px;padding:1px 6px;white-space:nowrap}
[data-theme=dark] .ss-rule{color:#dde6f2;background:#1d46a8}
