*{margin:0;padding:0;box-sizing:border-box}:root{--bg-gradient-start: #1a1a2e;--bg-gradient-end: #16213e;--card-bg: #ffffff;--card-bg-alt: #fafafa;--text-primary: #1a1a2e;--text-secondary: #5a5a7a;--accent-color: #c9a962;--accent-secondary: #e8d5a3;--accent-rose: #b76e79;--accent-rose-light: #d4a5ad;--sexy-red: #8b2942;--sexy-red-light: #a83250;--sexy-glow: rgba(139, 41, 66, .3);--shadow-color: rgba(0, 0, 0, .08);--shadow-hover: rgba(201, 169, 98, .2);--glow-color: rgba(201, 169, 98, .3);--border-subtle: rgba(201, 169, 98, .2)}body.dark-mode{--bg-gradient-start: #0d0d14;--bg-gradient-end: #1a1a2e;--card-bg: #1e1e2f;--card-bg-alt: #252538;--text-primary: #f5f5f5;--text-secondary: #a0a0b8;--accent-color: #d4af37;--accent-secondary: #f0d78c;--accent-rose: #c9848e;--accent-rose-light: #e0a8b0;--sexy-red: #c93d5a;--sexy-red-light: #e04d6a;--sexy-glow: rgba(201, 61, 90, .4);--shadow-color: rgba(0, 0, 0, .3);--shadow-hover: rgba(212, 175, 55, .25);--glow-color: rgba(212, 175, 55, .35);--border-subtle: rgba(212, 175, 55, .25)}.announcement-bar{background:linear-gradient(90deg,#1a1a2e,#2d1f3d,#1a1a2e);border-bottom:1px solid var(--accent-color);overflow:hidden;white-space:nowrap;position:relative}.announcement-bar:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,rgba(26,26,46,1) 0%,transparent 5%,transparent 95%,rgba(26,26,46,1) 100%);pointer-events:none;z-index:1}.announcement-track{display:inline-flex;animation:marquee 30s linear infinite}.announcement-text{display:inline-block;padding:10px 100px 10px 0;font-size:.9rem;color:var(--accent-color);font-weight:500;letter-spacing:.05em;text-shadow:0 0 10px rgba(201,169,98,.5)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}body.dark-mode .announcement-bar{background:linear-gradient(90deg,#0d0d14,#1a1a2e,#0d0d14)}body.dark-mode .announcement-bar:before{background:linear-gradient(90deg,rgba(13,13,20,1) 0%,transparent 5%,transparent 95%,rgba(13,13,20,1) 100%)}body.dark-mode .announcement-text{color:var(--accent-color);text-shadow:0 0 15px rgba(212,175,55,.6)}@media(max-width:768px){.announcement-text{font-size:.8rem;padding:8px 0}.announcement-track{animation-duration:20s}}.birthday-section{max-width:900px;margin:0 auto 20px;padding:15px 20px;background:linear-gradient(135deg,#c9a9621a,#8b29421a);border-radius:12px;border:1px solid var(--border-subtle)}.birthday-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.birthday-icon{font-size:1.2rem}.birthday-title{font-size:.95rem;font-weight:600;color:var(--text-primary)}.birthday-list{display:flex;flex-wrap:wrap;gap:8px}.birthday-tag{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--card-bg);border-radius:20px;border:1px solid var(--border-subtle);text-decoration:none;transition:all .2s ease;box-shadow:0 2px 4px var(--shadow-color)}.birthday-tag:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-hover);border-color:var(--accent-color)}.birthday-tag.today{background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);border-color:transparent}.birthday-tag.today .birthday-name,.birthday-tag.today .birthday-age{color:#fff}.birthday-name{font-size:.85rem;font-weight:600;color:var(--text-primary)}.birthday-date{font-size:.75rem;color:var(--text-secondary);padding:2px 6px;background:#c9a96233;border-radius:10px}.birthday-age{font-size:.75rem;color:var(--accent-rose);font-weight:500}body.dark-mode .birthday-section{background:linear-gradient(135deg,#d4af3714,#c93d5a14)}body.dark-mode .birthday-date{background:#d4af3726}@media(max-width:768px){.birthday-section{margin:0 10px 15px;padding:12px 15px}.birthday-title{font-size:.85rem}.birthday-tag{padding:5px 10px}.birthday-name{font-size:.8rem}.birthday-date,.birthday-age{font-size:.7rem}}.birthday-section-compact{max-width:900px;margin:0 auto 15px;background:var(--card-bg);border-radius:10px;border:1px solid var(--border-subtle);overflow:hidden}.birthday-header-compact{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;background:linear-gradient(135deg,#e91e6326,#9c27b026);border:none;text-align:left;transition:background .2s}.birthday-header-compact:hover{background:linear-gradient(135deg,#e91e6333,#9c27b033)}.birthday-icon-compact{font-size:1rem}.birthday-title-compact{font-size:.85rem;font-weight:600;color:var(--text-primary);flex:1}.birthday-count-compact{font-size:.75rem;color:var(--accent-rose);font-weight:600;padding:2px 8px;background:#b76e7926;border-radius:10px}.birthday-toggle{font-size:.65rem;color:var(--text-secondary);margin-left:4px;transition:transform .2s}.birthday-toggle.expanded{transform:rotate(180deg)}.birthday-list-compact{display:flex;flex-wrap:wrap;gap:6px;padding:0 14px;max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.birthday-list-compact.expanded{max-height:500px;padding:10px 14px}.birthday-tag-compact{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;background:var(--card-bg-alt);border-radius:16px;border:1px solid var(--border-subtle);text-decoration:none;transition:all .2s;font-size:.75rem}.birthday-tag-compact:hover{background:var(--accent-rose);border-color:var(--accent-rose)}.birthday-tag-compact:hover .birthday-name-compact,.birthday-tag-compact:hover .birthday-date-compact,.birthday-tag-compact:hover .birthday-age-compact{color:#fff}.birthday-tag-compact.today{background:linear-gradient(135deg,#e91e63,#9c27b0);border-color:transparent}.birthday-tag-compact.today .birthday-name-compact,.birthday-tag-compact.today .birthday-age-compact{color:#fff}.birthday-name-compact{font-weight:600;color:var(--text-primary)}.birthday-date-compact{font-size:.7rem;color:var(--accent-rose);padding:1px 5px;background:#b76e791f;border-radius:8px}.birthday-age-compact{font-size:.65rem;color:var(--text-secondary)}.birthday-more{display:inline-flex;align-items:center;padding:5px 10px;font-size:.7rem;color:var(--accent-color);font-weight:500}@media(max-width:768px){.birthday-section-compact{margin:0 10px 12px}.birthday-header-compact{padding:8px 12px}.birthday-title-compact{font-size:.8rem}.birthday-list-compact{gap:5px}.birthday-list-compact.expanded{padding:8px 12px}}.stats-and-links-row{display:flex;gap:20px;max-width:1200px;margin:0 auto 20px;padding:0 20px;align-items:stretch}.stats-column{display:flex;flex-direction:column;gap:12px;flex:1}.stats-and-links-row>.age-stats-compact,.stats-column>.age-stats-compact,.stats-column>.cup-stats-compact{flex:none;margin:0}.quick-links-section{display:flex;flex-direction:column;gap:10px;flex:1}.quick-links-card{background:var(--card-bg);border-radius:12px;padding:15px;border:1px solid var(--border-subtle)}.quick-links-title{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:12px;display:flex;align-items:center;gap:6px}.quick-links-icon{font-size:1rem}.quick-links-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quick-link-item{display:flex;align-items:center;gap:6px;padding:10px 12px;background:linear-gradient(135deg,#c9a96214,#8b294214);border-radius:8px;text-decoration:none;transition:all .2s ease;border:1px solid transparent}.quick-link-item:hover{background:linear-gradient(135deg,#c9a96226,#8b294226);border-color:var(--accent-color);transform:translateY(-1px)}.quick-link-emoji{font-size:1rem}.quick-link-label{font-size:.8rem;font-weight:500;color:var(--text-primary)}.quick-links-note{font-size:.7rem;color:var(--text-secondary);margin-top:10px;text-align:center}.view-history-section{max-width:1200px;margin:0 auto 20px;padding:0 20px}.view-history-wide{background:linear-gradient(135deg,var(--card-bg) 0%,rgba(201,169,98,.05) 100%);border-radius:16px;padding:18px 24px;border:1px solid var(--border-subtle);box-shadow:0 4px 20px var(--shadow-color)}.view-history-wide .view-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.view-history-wide .view-history-title{font-size:.95rem;font-weight:600;color:var(--accent-color);display:flex;align-items:center;gap:8px}.view-history-wide .view-history-icon{font-size:1.1rem}.view-history-wide .view-history-clear{font-size:.75rem;color:var(--text-secondary);background:#8b29421a;border:none;cursor:pointer;padding:6px 12px;border-radius:6px;transition:all .2s ease}.view-history-wide .view-history-clear:hover{background:#8b294233;color:var(--sexy-red)}.view-history-wide .view-history-list{display:flex;flex-wrap:wrap;gap:10px}.view-history-wide .view-history-item{font-size:.85rem;padding:8px 16px;background:linear-gradient(135deg,#c9a96226,#8b29421a);border-radius:20px;color:var(--text-primary);text-decoration:none;transition:all .2s ease;border:1px solid rgba(201,169,98,.2);font-weight:500}.view-history-wide .view-history-item:hover{border-color:var(--accent-color);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-color);background:linear-gradient(135deg,#c9a96240,#8b294226)}.view-history{background:var(--card-bg);border-radius:12px;padding:15px;border:1px solid var(--border-subtle)}.view-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.view-history-title{font-size:.85rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.view-history-icon{font-size:.9rem}.view-history-clear{font-size:.7rem;color:var(--text-secondary);background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.view-history-clear:hover{background:#8b29421a;color:var(--sexy-red)}.view-history-list{display:flex;flex-wrap:wrap;gap:6px}.view-history-item{font-size:.75rem;padding:5px 10px;background:linear-gradient(135deg,#c9a9621a,#8b29421a);border-radius:15px;color:var(--text-primary);text-decoration:none;transition:all .2s ease;border:1px solid transparent}.view-history-item:hover{border-color:var(--accent-color);transform:translateY(-1px)}@media(max-width:600px){.view-history-section{padding:0 10px}.view-history-wide{padding:14px 16px}.view-history-wide .view-history-item{font-size:.8rem;padding:6px 12px}}.ranking-sticky-header{position:sticky;top:0;z-index:100;background:var(--bg-primary);border-bottom:1px solid var(--border-subtle);padding:10px 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ranking-header-top{display:flex;align-items:center;gap:15px}.ranking-header-top .back-btn{padding:8px 12px;font-size:.8rem;flex-shrink:0}.ranking-nav-compact{display:flex;gap:8px;flex-wrap:wrap;flex:1;justify-content:flex-end}.ranking-nav-btn{padding:8px 14px;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:20px;color:var(--text-primary);text-decoration:none;font-size:.8rem;font-weight:500;transition:all .2s ease;white-space:nowrap}.ranking-nav-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.ranking-nav-btn.active{background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);border-color:var(--accent-color);color:#fff}.ranking-hero{padding:30px 0 20px;text-align:center}.ranking-hero .ranking-title-section{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.ranking-hero .ranking-icon{font-size:2rem}.ranking-header .ranking-title-section{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:10px}.ranking-header .ranking-icon{font-size:2rem}.ranking-disclaimer{font-size:.8rem;color:var(--text-secondary);margin-top:10px}.ranking-other-section{padding:40px 0;background:var(--card-bg-alt);margin-top:30px}.ranking-other-section h2{text-align:center;font-size:1.2rem;margin-bottom:25px;color:var(--text-primary)}.ranking-other-links{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.ranking-other-link{display:flex;align-items:center;gap:10px;padding:16px 24px;background:var(--card-bg);border:2px solid var(--border-subtle);border-radius:12px;text-decoration:none;color:var(--text-primary);transition:all .3s ease;font-weight:500}.ranking-other-link:hover{border-color:var(--accent-color);background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);color:#fff;transform:translateY(-3px);box-shadow:0 8px 25px var(--glow-color)}.ranking-other-icon{font-size:1.5rem}.ranking-other-label{font-size:.95rem}@media(max-width:600px){.ranking-other-links{flex-direction:column;align-items:center}.ranking-other-link{width:100%;max-width:280px;justify-content:center}}.ranking-grid{display:flex;flex-direction:column;gap:12px}.ranking-card{display:flex;align-items:center;gap:15px;padding:15px;background:var(--card-bg);border-radius:12px;border:1px solid var(--border-subtle);text-decoration:none;transition:all .2s ease}.ranking-card:hover{transform:translate(5px);box-shadow:0 5px 20px var(--shadow-hover);border-color:var(--accent-color)}.ranking-rank{min-width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700;color:var(--text-secondary);background:var(--card-bg-alt);border-radius:50%}.ranking-rank.top-1{background:linear-gradient(135deg,gold,#ffb800);color:#fff;font-size:1.2rem}.ranking-rank.top-2{background:linear-gradient(135deg,silver,#a0a0a0);color:#fff}.ranking-rank.top-3{background:linear-gradient(135deg,#cd7f32,sienna);color:#fff}.ranking-image{width:60px;height:60px;border-radius:8px;overflow:hidden;flex-shrink:0}.ranking-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;font-weight:600}.ranking-info{flex:1}.ranking-name{font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:4px}.ranking-value{font-size:.95rem;color:var(--accent-color);font-weight:600}.ranking-meta{font-size:.8rem;color:var(--text-secondary);margin-top:2px}@media(max-width:900px){.stats-and-links-row{flex-direction:column;padding:0 10px}.stats-column{flex-direction:row;gap:10px}.stats-column>.age-stats-compact,.stats-column>.cup-stats-compact{flex:1}.quick-links-section{max-width:100%;flex-direction:row}.quick-links-card,.view-history{flex:1}}@media(max-width:600px){.stats-column,.quick-links-section{flex-direction:column}.quick-links-card,.view-history{width:100%}.quick-links-grid{grid-template-columns:repeat(2,1fr)}.ranking-header-top{flex-direction:column;gap:10px}.ranking-header-top .back-btn{align-self:flex-start}.ranking-nav-compact{justify-content:center;width:100%}.ranking-nav-btn{padding:6px 10px;font-size:.75rem}.ranking-hero{padding:20px 0 15px}.ranking-hero h1{font-size:1.3rem}.ranking-card{padding:12px;gap:10px}.ranking-rank{min-width:35px;height:35px;font-size:1rem}.ranking-image{width:50px;height:50px}.ranking-name{font-size:.9rem}.ranking-value{font-size:.85rem}}.finder-banner{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);border-radius:12px;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 15px #8b29424d;flex:1;min-height:60px}.finder-banner:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8b294266}.finder-banner-icon{font-size:1.3rem}.finder-banner-text{font-size:.95rem;font-weight:600;color:#fff}.finder-banner-arrow{font-size:1rem;color:#fff;opacity:.8}.howto-banner{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;background:linear-gradient(135deg,#2e6b8a,#1a3a5c);border-radius:12px;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 15px #1a3a5c4d;flex:1;min-height:60px}.howto-banner:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1a3a5c66}.howto-banner-icon{font-size:1.3rem}.howto-banner-text{font-size:.95rem;font-weight:600;color:#fff}.howto-banner-arrow{font-size:1rem;color:#fff;opacity:.8}.random-banner{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d;flex:1;min-height:60px}.random-banner:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.random-banner:active{transform:translateY(0)}.random-banner-icon{font-size:1.3rem}.random-banner-text{font-size:.95rem;font-weight:600;color:#fff}.random-banner-arrow{font-size:1rem;color:#fff;opacity:.8}.quick-links-blog-card{background:var(--card-bg);border-radius:12px;padding:.75rem;box-shadow:0 2px 12px var(--shadow-color)}.quick-links-blog-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle)}.quick-links-blog-title{font-size:.85rem;color:var(--text-primary);font-weight:600}.quick-links-blog-more{color:var(--accent-rose);text-decoration:none;font-size:.7rem;font-weight:500}.quick-links-blog-more:hover{color:var(--sexy-red)}.quick-links-blog-list{display:flex;flex-direction:column;gap:.25rem}.quick-links-blog-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .5rem;border-radius:6px;text-decoration:none;transition:background .2s}.quick-links-blog-item:hover{background:var(--card-bg-alt)}.quick-links-blog-icon{font-size:.9rem;flex-shrink:0}.quick-links-blog-text{font-size:.75rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.quick-links-blog-item:hover .quick-links-blog-text{color:var(--accent-color)}.type-finder-page{min-height:100vh;background:linear-gradient(160deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%)}.finder-header{padding:30px 0 20px;text-align:center}.finder-title-section{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:10px}.finder-emoji{font-size:2.5rem}.finder-header h1{font-size:1.8rem;color:var(--text-primary)}.finder-subtitle{color:var(--text-secondary);font-size:1rem}.finder-questions{padding:20px 0 40px}.finder-question{background:var(--card-bg);border-radius:16px;padding:25px;margin-bottom:20px;border:1px solid var(--border-subtle)}.finder-question-title{display:flex;align-items:center;gap:12px;font-size:1.1rem;color:var(--text-primary);margin-bottom:20px}.question-number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);border-radius:50%;color:#fff;font-size:.85rem;font-weight:700}.finder-options{display:flex;flex-wrap:wrap;gap:10px}.finder-option{display:flex;align-items:center;gap:8px;padding:12px 20px;background:var(--card-bg-alt);border:2px solid var(--border-subtle);border-radius:25px;cursor:pointer;transition:all .2s ease;font-size:.9rem}.finder-option:hover{border-color:var(--accent-color);transform:translateY(-2px)}.finder-option.selected{background:linear-gradient(135deg,#c9a96233,#8b294233);border-color:var(--accent-color)}.option-icon{font-size:1.2rem}.option-label{color:var(--text-primary);font-weight:500}.finder-action{display:flex;justify-content:center;gap:15px;margin-top:30px}.finder-submit{padding:16px 40px;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#666,#444);border:none;border-radius:30px;cursor:not-allowed;transition:all .3s ease}.finder-submit.active{background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);cursor:pointer;box-shadow:0 4px 20px #8b294266}.finder-submit.active:hover{transform:translateY(-2px);box-shadow:0 6px 25px #8b294280}.finder-results{padding:20px 0 40px}.finder-results-header{text-align:center;margin-bottom:30px}.finder-results-header h2{font-size:1.5rem;color:var(--text-primary);margin-bottom:8px}.results-count{color:var(--accent-color);font-weight:600}.finder-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px}.finder-result-card{background:var(--card-bg);border-radius:12px;overflow:hidden;text-decoration:none;transition:all .2s ease;border:1px solid var(--border-subtle)}.finder-result-card:hover{transform:translateY(-3px);box-shadow:0 8px 25px var(--shadow-hover);border-color:var(--accent-color)}.finder-result-image{aspect-ratio:1;overflow:hidden}.finder-result-image img{width:100%;height:100%;object-fit:cover}.finder-result-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;font-weight:600}.finder-result-info{padding:12px;text-align:center}.finder-result-info h3{font-size:.9rem;color:var(--text-primary);margin-bottom:4px}.finder-result-info p{font-size:.75rem;color:var(--text-secondary)}.finder-no-results{text-align:center;padding:40px;color:var(--text-secondary)}.finder-reset,.finder-to-top{padding:14px 30px;font-size:1rem;font-weight:600;border:none;border-radius:25px;cursor:pointer;transition:all .2s ease}.finder-reset{background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);color:#fff}.finder-reset:hover{transform:translateY(-2px)}.finder-to-top{background:var(--card-bg);color:var(--text-primary);border:1px solid var(--border-subtle)}.finder-to-top:hover{border-color:var(--accent-color)}@media(max-width:768px){.finder-header h1{font-size:1.4rem}.finder-emoji{font-size:2rem}.finder-question{padding:20px 15px}.finder-options{gap:8px}.finder-option{padding:10px 15px;font-size:.85rem}.finder-results-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.finder-action{flex-direction:column;align-items:center}.finder-reset,.finder-to-top{width:100%;max-width:280px}}body{font-family:Helvetica Neue,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;background:linear-gradient(160deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);min-height:100vh;padding:30px;transition:background .4s ease;letter-spacing:.02em}.container{max-width:1400px;margin:0 auto}header{text-align:center;color:#fff;margin-bottom:30px;padding:20px 30px;position:sticky;top:0;background:linear-gradient(135deg,#1a1a2efa,#16213efa);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:100;border-radius:0 0 20px 20px;box-shadow:0 10px 40px #0000004d;animation:slideDown .6s ease;border-bottom:1px solid var(--border-subtle)}@keyframes slideDown{0%{transform:translateY(-100px);opacity:0}to{transform:translateY(0);opacity:1}}h1{font-family:"Noto Serif JP",Georgia,serif;font-size:2.4rem;font-weight:600;margin-bottom:10px;letter-spacing:.2em;background:linear-gradient(135deg,var(--accent-color) 0%,#f5e6c8 40%,var(--accent-color) 60%,var(--sexy-red-light) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:shimmer 4s ease-in-out infinite;background-size:300% 100%;text-shadow:0 0 40px rgba(201,169,98,.3);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}@keyframes shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.subtitle{font-size:.95rem;opacity:.7;margin-top:15px;font-weight:300;letter-spacing:.2em;text-transform:uppercase}.theme-toggle-container{position:absolute;top:20px;right:20px;display:flex;align-items:center;gap:10px;z-index:110}.theme-toggle-label{font-size:.85rem;font-weight:500;opacity:.9}.theme-toggle{position:relative;width:50px;height:26px;background:#ffffff4d;border-radius:50px;cursor:pointer;transition:all .3s ease;border:none;box-shadow:0 2px 10px #0003;z-index:111;pointer-events:auto}.theme-toggle:before{content:"";position:absolute;width:20px;height:20px;border-radius:50%;background:#fff;top:3px;left:3px;transition:all .3s ease;box-shadow:0 2px 5px #0003}body.dark-mode .theme-toggle{background:#ff6b9d80}body.dark-mode .theme-toggle:before{transform:translate(24px);background:#ff6b9d}.theme-toggle:hover{transform:scale(1.05);box-shadow:0 4px 15px #0000004d}.stats{display:flex;gap:25px;justify-content:center;margin-bottom:40px;flex-wrap:wrap}.stat-card{background:var(--card-bg);padding:25px 40px;border-radius:4px;box-shadow:0 4px 20px var(--shadow-color);text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);cursor:pointer;border:1px solid var(--border-subtle);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--accent-color),var(--accent-secondary));transform:scaleX(0);transition:transform .4s ease}.stat-card:hover{transform:translateY(-8px);box-shadow:0 12px 40px var(--shadow-hover)}.stat-card:hover:before{transform:scaleX(1)}.stat-number{font-size:2.2rem;font-weight:200;color:var(--accent-color);letter-spacing:.05em}.stat-label{font-size:.75rem;color:var(--text-secondary);margin-top:8px;text-transform:uppercase;letter-spacing:.15em;font-weight:500}.age-stats-compact{background:var(--card-bg);padding:12px 16px;border-radius:2px;border:1px solid var(--border-subtle);cursor:pointer;transition:all .3s ease;flex:1}.age-stats-compact:hover{border-color:var(--accent-color);box-shadow:0 4px 20px var(--shadow-hover)}.age-stats-compact-header{display:flex;align-items:center;gap:6px;margin-bottom:10px}.age-stats-icon{font-size:.9rem}.age-stats-label{font-size:.8rem;font-weight:500;color:var(--text-primary);letter-spacing:.05em}.age-stats-arrow{margin-left:auto;color:var(--accent-color);font-size:.8rem;transition:transform .3s ease}.age-stats-compact:hover .age-stats-arrow{transform:translate(3px)}.age-stats-compact-list{display:flex;flex-direction:column;gap:6px}.age-row{display:flex;align-items:center;gap:8px}.age-row-label{font-size:.7rem;color:var(--text-secondary);width:42px;flex-shrink:0}.age-row-bar-wrapper{flex:1;height:32px;background:var(--card-bg-alt);border-radius:6px;overflow:hidden}.age-row-bar{height:100%;background:linear-gradient(90deg,var(--accent-color),var(--sexy-red));border-radius:4px;min-width:4px;transition:width .3s ease}.age-row-count{font-size:.75rem;font-weight:600;color:var(--accent-color);width:24px;text-align:right;flex-shrink:0}.age-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.age-modal{background:var(--card-bg);border-radius:12px;padding:30px;max-width:500px;width:100%;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0006;border:1px solid var(--border-subtle)}.age-modal-close{position:absolute;top:15px;right:15px;width:32px;height:32px;border:none;background:var(--card-bg-alt);border-radius:50%;font-size:1.2rem;cursor:pointer;color:var(--text-secondary);transition:all .3s ease;display:flex;justify-content:center;align-items:center}.age-modal-close:hover{background:var(--accent-color);color:#fff}.age-modal-title{font-size:1.3rem;font-weight:500;margin-bottom:8px;color:var(--text-primary)}.age-modal-hint{font-size:.8rem;color:var(--text-secondary);margin-bottom:20px}.age-modal-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:25px}.age-modal-group{background:var(--card-bg-alt);border:1px solid var(--border-subtle);border-radius:8px;padding:16px;cursor:pointer;transition:all .3s ease;text-align:center;display:flex;flex-direction:column;gap:4px}.age-modal-group:hover{border-color:var(--accent-color);box-shadow:0 4px 15px var(--shadow-hover)}.age-modal-group.active{background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);border-color:var(--accent-color)}.age-modal-group.active .group-label,.age-modal-group.active .group-count,.age-modal-group.active .group-percent{color:#fff}.group-label{font-size:.9rem;font-weight:500;color:var(--text-primary)}.group-count{font-size:1.3rem;font-weight:600;color:var(--accent-color)}.group-percent{font-size:.75rem;color:var(--text-secondary)}.age-modal-detail h3{font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:12px;text-transform:uppercase;letter-spacing:.1em}.age-modal-ages{display:flex;flex-wrap:wrap;gap:8px}.age-modal-age{background:var(--card-bg-alt);border:1px solid var(--border-subtle);border-radius:6px;padding:8px 14px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;min-width:60px}.age-modal-age:hover{border-color:var(--accent-color)}.age-modal-age.active{background:var(--accent-color);border-color:var(--accent-color)}.age-modal-age.active .age-num,.age-modal-age.active .age-count{color:#fff}.age-modal-age.group-selected{background:linear-gradient(135deg,#c9a9624d,#e91e6333);border-color:var(--accent-color)}.age-modal-age.group-selected .age-num{color:var(--accent-color)}.age-modal-age.group-selected .age-count{color:var(--text-secondary)}.age-num{font-size:.85rem;font-weight:500;color:var(--text-primary)}.age-count{font-size:.7rem;color:var(--text-secondary)}.age-modal-done{width:100%;margin-top:20px;padding:14px 20px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.age-modal-done:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--glow-color)}@media(max-width:480px){.age-modal{padding:20px;margin:10px}.age-modal-groups{grid-template-columns:1fr}}.cup-stats-compact{background:var(--card-bg);padding:12px 16px;border-radius:2px;border:1px solid var(--border-subtle);cursor:pointer;transition:all .3s ease}.cup-stats-compact:hover{border-color:#6a9fd8;box-shadow:0 4px 20px var(--shadow-hover)}.cup-stats-compact-header{display:flex;align-items:center;gap:6px;margin-bottom:10px}.cup-stats-icon{font-size:.9rem}.cup-stats-label{font-size:.8rem;font-weight:500;color:var(--text-primary);letter-spacing:.05em}.cup-stats-arrow{margin-left:auto;color:#6a9fd8;font-size:.8rem;transition:transform .3s ease}.cup-stats-compact:hover .cup-stats-arrow{transform:translate(3px)}.cup-stats-compact-list{display:flex;flex-direction:column;gap:4px}.cup-row{display:flex;align-items:center;gap:8px}.cup-row-label{font-size:.7rem;color:var(--text-secondary);width:18px;flex-shrink:0;font-weight:600}.cup-row-bar-wrapper{flex:1;height:16px;background:var(--card-bg-alt);border-radius:4px;overflow:hidden}.cup-row-bar{height:100%;background:linear-gradient(90deg,#6a9fd8,#4a6fa5);border-radius:3px;min-width:4px;transition:width .3s ease}.cup-row-count{font-size:.7rem;font-weight:600;color:#6a9fd8;width:20px;text-align:right;flex-shrink:0}.cup-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cup-modal{background:var(--card-bg);border-radius:12px;padding:30px;max-width:500px;width:100%;max-height:80vh;overflow-y:auto;position:relative;box-shadow:0 20px 60px #0006;border:1px solid var(--border-subtle)}.cup-modal-close{position:absolute;top:15px;right:15px;width:32px;height:32px;border:none;background:var(--card-bg-alt);border-radius:50%;font-size:1.2rem;cursor:pointer;color:var(--text-secondary);transition:all .3s ease;display:flex;justify-content:center;align-items:center}.cup-modal-close:hover{background:var(--accent-color);color:#fff}.cup-modal-title{font-size:1.3rem;font-weight:500;margin-bottom:8px;color:var(--text-primary)}.cup-modal-hint{font-size:.85rem;color:var(--text-secondary);margin-bottom:20px}.cup-modal-cups{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px}.cup-modal-cup{display:flex;flex-direction:column;align-items:center;padding:12px 8px;background:var(--card-bg-alt);border:2px solid transparent;border-radius:8px;cursor:pointer;transition:all .3s ease}.cup-modal-cup:hover{border-color:var(--accent-color);transform:translateY(-2px)}.cup-modal-cup.active{background:linear-gradient(135deg,#6a9fd833,#4a6fa533);border-color:#6a9fd8}.cup-modal-cup .cup-letter{font-size:1.4rem;font-weight:700;color:var(--accent-color);margin-bottom:4px}.cup-modal-cup .cup-count{font-size:.8rem;font-weight:500;color:var(--text-primary)}.cup-modal-cup .cup-percent{font-size:.7rem;color:var(--text-secondary)}.cup-modal-total{font-size:.85rem;color:var(--text-secondary);text-align:center;margin-bottom:10px}.cup-modal-done{width:100%;margin-top:10px;padding:14px 20px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.cup-modal-done:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--glow-color)}@media(max-width:480px){.cup-modal{padding:20px;margin:10px}.cup-modal-cups{grid-template-columns:repeat(3,1fr)}}.controls-row{display:flex;gap:15px;justify-content:center;align-items:center;flex-wrap:wrap;margin-bottom:30px}.controls{display:flex;gap:15px;justify-content:center;flex-wrap:wrap;flex:1}.search-container{position:relative;flex:1;max-width:350px;display:flex;align-items:center}.search-box,.sort-box,.filter-box{flex:1;max-width:350px;padding:14px 20px;border:1px solid var(--border-subtle);border-radius:2px;font-size:.9rem;box-shadow:none;outline:none;transition:all .4s ease;background:var(--card-bg);color:var(--text-primary);letter-spacing:.03em}.search-container .search-box{padding-right:45px}.search-hint{position:absolute;right:12px;top:50%;transform:translateY(-50%);cursor:pointer;z-index:5}.search-hint-icon{font-size:1rem;opacity:.5;transition:opacity .3s ease}.search-hint:hover .search-hint-icon{opacity:1}.search-hint-popup{position:absolute;right:0;top:calc(100% + 10px);background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:8px;padding:15px 18px;min-width:280px;box-shadow:0 10px 40px #0003;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .3s ease;z-index:100}.search-hint:hover .search-hint-popup{opacity:1;visibility:visible;transform:translateY(0)}.search-hint-title{font-weight:600;color:var(--accent-color);margin-bottom:10px;font-size:.9rem}.search-hint-popup ul{list-style:none;padding:0;margin:0}.search-hint-popup li{color:var(--text-secondary);font-size:.8rem;padding:5px 0;line-height:1.5}.search-hint-popup strong{color:var(--text-primary)}.search-suggestions{position:absolute;top:100%;left:0;right:0;background:var(--card-bg);border:1px solid var(--border-subtle);border-top:none;border-radius:0 0 8px 8px;box-shadow:0 10px 30px #00000026;z-index:50;max-height:320px;overflow-y:auto}.suggestion-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;transition:background .2s ease;text-decoration:none;border-bottom:1px solid var(--border-subtle)}.suggestion-item:last-child{border-bottom:none}.suggestion-item:hover,.suggestion-item.selected{background:linear-gradient(135deg,#c9a9621a,#8b29421a)}.suggestion-name{font-weight:600;color:var(--text-primary);font-size:.9rem}.suggestion-kana{font-size:.75rem;color:var(--text-secondary);margin-left:8px}body.dark-mode .search-suggestions{box-shadow:0 10px 30px #0006}.search-box:focus,.sort-box:focus,.filter-box:focus{border-color:var(--accent-color);box-shadow:0 4px 20px var(--shadow-hover)}.sort-box,.filter-box{cursor:pointer;min-width:200px}.sort-container{position:relative;display:flex;align-items:center;gap:10px}.current-sort{display:flex;align-items:center;gap:6px;padding:10px 16px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--accent-secondary) 100%);border-radius:25px;color:#fff;font-weight:600;font-size:.9rem;white-space:nowrap;box-shadow:0 4px 15px var(--glow-color)}.sort-icon{font-size:1rem}.sort-label{font-size:.85rem}.sort-direction{font-size:1rem;font-weight:700}.filter-group{display:flex;gap:10px;justify-content:center;margin-bottom:20px;flex-wrap:wrap}.filter-btn{padding:10px 24px;background:transparent;border:1px solid var(--border-subtle);border-radius:2px;color:var(--text-secondary);cursor:pointer;transition:all .4s ease;font-weight:400;font-size:.85rem;letter-spacing:.05em}.filter-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.filter-btn.active{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.clear-favorites-btn{display:none;padding:8px 20px;background:#ff4757;border:2px solid #ff4757;border-radius:50px;color:#fff;cursor:pointer;transition:all .3s ease;font-weight:600;margin-left:10px}.clear-favorites-btn:hover{background:#ff3838;border-color:#ff3838;transform:scale(1.05);box-shadow:0 4px 15px #ff475766}.clear-favorites-btn.show{display:inline-block}.active-filters{display:flex;align-items:center;gap:15px;margin-bottom:25px;padding:18px 25px;background:var(--card-bg);border-radius:2px;border:1px solid var(--border-subtle);flex-wrap:wrap}.active-filters-label{font-weight:600;color:var(--text-secondary);white-space:nowrap}.active-filters-tags{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.filter-tag{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:2px;font-size:.8rem;font-weight:400;background:var(--accent-color);color:#fff;animation:tagAppear .3s ease;letter-spacing:.03em}@keyframes tagAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.filter-tag button{background:#ffffff4d;border:none;color:#fff;width:18px;height:18px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:all .2s ease}.filter-tag button:hover{background:#ffffff80;transform:scale(1.1)}.filter-tag.search-tag{background:#5a5a7a}.filter-tag.favorites-tag{background:var(--sexy-red);box-shadow:0 2px 10px var(--sexy-glow)}.filter-tag.age-tag{background:#4a7c6f}.filter-tag.cup-tag{background:var(--sexy-red-light)}.clear-all-filters{padding:8px 18px;border-radius:2px;font-size:.8rem;font-weight:400;background:transparent;color:var(--accent-rose);border:1px solid var(--accent-rose);cursor:pointer;transition:all .3s ease;letter-spacing:.05em}.clear-all-filters:hover{background:var(--accent-rose);color:#fff}.share-filter-url{padding:8px 16px;border-radius:2px;font-size:.8rem;font-weight:400;background:var(--accent-color);color:#fff;border:none;cursor:pointer;transition:all .3s ease;letter-spacing:.05em}.share-filter-url:hover{background:var(--accent-secondary);color:var(--text-primary)}.grid-toggle{display:flex;gap:0;background:var(--card-bg);padding:0;border-radius:2px;border:1px solid var(--border-subtle);overflow:hidden}.grid-toggle-btn{padding:10px 14px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;border-radius:0;font-size:.7rem;font-weight:500;transition:all .3s ease;letter-spacing:.1em;border-right:1px solid var(--border-subtle)}.grid-toggle-btn:last-child{border-right:none}.grid-toggle-btn:hover{background:#c9a9621a;color:var(--accent-color)}.grid-toggle-btn.active{background:var(--accent-color);color:#fff}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:25px;margin-bottom:40px}.grid.grid-1{grid-template-columns:1fr;max-width:600px;margin-left:auto;margin-right:auto}.grid.grid-2{grid-template-columns:repeat(2,1fr)}.grid.grid-3{grid-template-columns:repeat(3,1fr)}@media(max-width:1024px){.grid.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.grid.grid-2,.grid.grid-3{grid-template-columns:1fr}}.card{background:var(--card-bg);border-radius:4px;padding:35px;box-shadow:0 4px 25px var(--shadow-color);transition:all .5s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;cursor:pointer;opacity:0;transform:translateY(30px);animation:fadeInUp .6s ease forwards;border:1px solid transparent}.card-initial{position:absolute;top:15px;right:15px;width:70px;height:70px;overflow:hidden;border-radius:50%;box-shadow:0 4px 15px #0003;border:3px solid rgba(255,255,255,.3);z-index:5;display:flex;align-items:center;justify-content:center;transition:all .4s ease}.card:hover .card-initial{transform:scale(1.1) rotate(5deg);box-shadow:0 6px 20px #0000004d}.card-initial span{font-size:1.8rem;color:#fff;font-weight:600;font-family:"Noto Serif JP",serif;text-shadow:0 2px 4px rgba(0,0,0,.2)}.card-thumbnail{position:absolute;top:15px;right:15px;width:100px;height:100px;overflow:hidden;border-radius:12px;box-shadow:0 4px 15px #0000004d;border:3px solid rgba(255,255,255,.3);z-index:5;transition:all .4s ease;background:#0003}.card-thumbnail img{width:100%;height:100%;object-fit:cover;object-position:center top}.card:hover .card-thumbnail{transform:scale(1.05);box-shadow:0 6px 25px #0006}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:linear-gradient(180deg,var(--sexy-red) 0%,var(--accent-color) 100%);opacity:0;transition:opacity .4s ease}.card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,rgba(139,41,66,.02) 100%);pointer-events:none}.card:hover{transform:translateY(-12px);box-shadow:0 20px 50px var(--shadow-hover),0 0 30px var(--sexy-glow);border-color:var(--border-subtle)}.card:hover:before{opacity:1}.card-number{position:absolute;top:20px;right:110px;background:transparent;color:var(--accent-color);width:auto;height:auto;border-radius:0;display:flex;align-items:center;justify-content:center;font-weight:300;font-size:1.8rem;letter-spacing:.05em;opacity:.4}.favorite-btn{position:absolute;top:20px;left:20px;background:var(--card-bg);border:1px solid var(--border-subtle);width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.1rem;transition:all .3s ease;z-index:10}body.dark-mode .favorite-btn{background:var(--card-bg-alt)}.favorite-btn:hover{transform:scale(1.1);border-color:var(--sexy-red);box-shadow:0 0 15px var(--sexy-glow)}.favorite-btn.favorited{background:var(--sexy-red);border-color:var(--sexy-red);box-shadow:0 0 20px var(--sexy-glow)}.compare-btn-card{position:absolute;bottom:20px;right:65px;background:var(--card-bg);border:1px solid var(--border-subtle);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.9rem;transition:all .3s ease;z-index:10}body.dark-mode .compare-btn-card{background:var(--card-bg-alt)}.compare-btn-card:hover{transform:scale(1.1);border-color:var(--accent-color);color:var(--accent-color)}.compare-btn-card.in-compare{background:var(--accent-color);border-color:var(--accent-color);color:#fff}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.favorite-btn.favorited{animation:heartBeat .5s ease}@keyframes heartBeat{0%,to{transform:scale(1)}25%{transform:scale(1.3)}50%{transform:scale(1.1)}75%{transform:scale(1.25)}}.card-name{font-size:1.4rem;font-weight:400;color:var(--text-primary);margin-bottom:15px;padding-right:60px;padding-left:45px;letter-spacing:.08em}.card-birthdate{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:.85rem;margin-bottom:10px;font-weight:300}.card-age{display:inline-block;background:linear-gradient(135deg,var(--sexy-red) 0%,var(--sexy-red-light) 100%);color:#fff;padding:6px 16px;border-radius:2px;font-size:.8rem;font-weight:400;margin-bottom:15px;letter-spacing:.1em;box-shadow:0 2px 10px var(--sexy-glow)}.card-measurements{background:var(--card-bg-alt);padding:18px 20px;border-radius:2px;margin:18px 0;transition:all .3s ease;border-left:2px solid var(--sexy-red);position:relative}body.dark-mode .card-measurements{background:var(--card-bg-alt)}.card-measurements:hover{border-left-width:4px;box-shadow:inset 0 0 20px #8b29420d}.measurement-item{color:var(--text-secondary);font-size:.85rem;margin:6px 0;display:flex;align-items:center;font-weight:300;letter-spacing:.03em}.card-description{color:var(--text-secondary);line-height:1.7;font-size:.85rem;font-weight:300;letter-spacing:.02em}.search-highlight{background:linear-gradient(135deg,#8b294226,#c9a96233);color:var(--sexy-red);padding:2px 6px;border-radius:2px;font-weight:500;border-bottom:1px solid var(--sexy-red)}.badge{display:inline-block;background:transparent;color:var(--accent-color);padding:5px 12px;border-radius:2px;font-size:.7rem;font-weight:500;margin-top:12px;margin-right:8px;transition:all .3s ease;border:1px solid var(--accent-color);letter-spacing:.05em;text-transform:uppercase}.badge:hover{background:var(--accent-color);color:#fff}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#000c;animation:fadeIn .3s ease}.modal-content{background-color:var(--card-bg);margin:5% auto;padding:50px;border-radius:4px;max-width:600px;position:relative;animation:slideUp .3s ease;max-height:90vh;overflow-y:auto;color:var(--text-primary);border:1px solid var(--border-subtle)}@keyframes slideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.close{position:absolute;right:20px;top:20px;font-size:2rem;font-weight:700;color:var(--text-secondary);cursor:pointer;transition:all .3s ease;z-index:10}.close:hover{color:var(--accent-color);transform:rotate(90deg)}.modal-header{display:flex;gap:25px;margin-bottom:30px;padding-bottom:25px;border-bottom:1px solid var(--border-subtle)}.modal-initial{flex-shrink:0;width:100px;height:100px;border-radius:50%;overflow:hidden;box-shadow:0 4px 20px #0003;border:4px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center}.modal-initial span{font-size:2.5rem;color:#fff;font-weight:600;font-family:"Noto Serif JP",serif;text-shadow:0 2px 4px rgba(0,0,0,.2)}.modal-thumbnail{flex-shrink:0;width:150px;height:150px;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px #0000004d;border:4px solid rgba(255,255,255,.3);background:#0003}.modal-thumbnail img{width:100%;height:100%;object-fit:cover;object-position:center top}.modal-header-info{flex:1;min-width:0}.modal-header-info h2{color:var(--accent-color);font-size:1.8rem;font-weight:400;margin-bottom:8px;letter-spacing:.05em}.modal-kana{color:var(--text-secondary);font-size:.9rem;margin-bottom:12px}.modal-birthdate{font-size:1rem;margin-bottom:10px}.modal-description{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin-bottom:15px}.modal-badges{display:flex;flex-wrap:wrap;gap:8px}.modal-body{display:flex;flex-direction:column;gap:25px}.modal-specs h3{color:var(--accent-color);font-size:1.1rem;font-weight:400;margin-bottom:15px;letter-spacing:.05em}.specs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.spec-item{background:var(--card-bg-alt);border-radius:4px;padding:12px 15px;display:flex;align-items:center;gap:10px;border:1px solid var(--border-subtle)}.spec-icon{font-size:1.1rem}.spec-label{color:var(--text-secondary);font-size:.85rem}.spec-value{margin-left:auto;font-weight:500;color:var(--accent-color)}.scroll-to-top{position:fixed;bottom:30px;right:30px;width:50px;height:50px;background:var(--card-bg);color:var(--sexy-red);border:1px solid var(--sexy-red);border-radius:2px;font-size:1.3rem;cursor:pointer;display:none;align-items:center;justify-content:center;box-shadow:0 4px 20px var(--shadow-color);transition:all .4s ease;z-index:999}.scroll-to-top:hover{background:var(--sexy-red);color:#fff;transform:translateY(-5px);box-shadow:0 10px 30px var(--sexy-glow)}.compare-bar{position:fixed;bottom:0;left:0;right:0;background:var(--card-bg);padding:18px 25px;box-shadow:0 -4px 30px #00000026;z-index:998;animation:slideUpBar .3s ease;border-top:1px solid var(--border-subtle)}@keyframes slideUpBar{0%{transform:translateY(100%)}to{transform:translateY(0)}}.compare-bar-content{max-width:1400px;margin:0 auto;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.compare-bar-label{font-weight:600;color:var(--text-primary);white-space:nowrap}.compare-bar-items{display:flex;gap:10px;flex-wrap:wrap;flex:1}.compare-bar-item{display:flex;align-items:center;gap:10px;padding:10px 16px;background:linear-gradient(135deg,var(--sexy-red) 0%,var(--sexy-red-light) 100%);color:#fff;border-radius:2px;font-size:.85rem;font-weight:400;letter-spacing:.03em;box-shadow:0 2px 10px var(--sexy-glow)}.compare-bar-item button{background:#ffffff4d;border:none;color:#fff;width:20px;height:20px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.8rem;transition:all .2s ease}.compare-bar-item button:hover{background:#ffffff80}.compare-bar-actions{display:flex;gap:10px}.compare-btn{padding:12px 28px;background:var(--accent-color);color:#fff;border:none;border-radius:2px;font-weight:400;cursor:pointer;transition:all .3s ease;letter-spacing:.08em;font-size:.85rem}.compare-btn:hover{background:var(--accent-secondary);color:var(--text-primary)}.compare-clear-btn{padding:12px 22px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:2px;font-weight:400;cursor:pointer;transition:all .3s ease;letter-spacing:.05em;font-size:.85rem}.compare-clear-btn:hover{border-color:var(--text-secondary)}.compare-page-link{padding:12px 20px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);color:#fff;border:none;border-radius:2px;font-weight:500;cursor:pointer;transition:all .3s ease;text-decoration:none;font-size:.85rem;display:flex;align-items:center;gap:5px}.compare-page-link:hover{transform:translateY(-2px);box-shadow:0 4px 15px var(--glow-color)}.compare-modal{display:flex!important;align-items:center;justify-content:center;padding:20px}.compare-modal .compare-modal-content{max-width:900px;width:95%;padding:40px;background:var(--card-bg);border-radius:4px;max-height:90vh;overflow-y:auto;margin:0;position:relative;border:1px solid var(--border-subtle)}.compare-title{text-align:center;color:var(--accent-color);margin-bottom:8px;font-size:1.5rem;font-weight:300;letter-spacing:.1em}.compare-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:30px;font-size:.85rem;letter-spacing:.05em}.compare-cards-header{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:25px}.compare-card-header{background:var(--card-bg-alt);padding:15px;border-radius:2px;color:var(--text-primary);position:relative;transition:all .3s ease;border:1px solid var(--border-subtle);display:flex;gap:12px;align-items:flex-start}.compare-card-header:hover{border-color:var(--accent-color)}.compare-card-header.primary{background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);color:#fff;border-color:var(--accent-color)}.compare-initial{flex-shrink:0;width:50px;height:50px;border-radius:50%;overflow:hidden;box-shadow:0 2px 8px #00000026;border:2px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center}.compare-initial span{font-size:1.3rem;color:#fff;font-weight:600;font-family:"Noto Serif JP",serif}.compare-card-info{flex:1;min-width:0;text-align:left}.compare-card-number{display:inline-block;background:var(--card-bg);color:var(--accent-color);width:20px;height:20px;border-radius:50%;text-align:center;line-height:20px;font-weight:400;font-size:.7rem;border:1px solid var(--accent-color);margin-bottom:5px}.compare-card-header.primary .compare-card-number{background:#fff;color:var(--sexy-red);border-color:#fff}.compare-card-name{font-size:1rem;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compare-card-desc{font-size:.7rem;opacity:.85;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.compare-specs{background:var(--card-bg-alt);border-radius:2px;padding:25px;margin-bottom:30px;border:1px solid var(--border-subtle)}body.dark-mode .compare-specs{background:var(--card-bg-alt)}.compare-spec-row{display:flex;align-items:center;padding:15px 0;border-bottom:1px solid rgba(0,0,0,.06)}body.dark-mode .compare-spec-row{border-bottom:1px solid rgba(255,255,255,.06)}.compare-spec-row:last-child{border-bottom:none}.compare-spec-label{width:120px;flex-shrink:0;display:flex;align-items:center;gap:8px}.spec-icon{font-size:1.2rem}.spec-name{font-weight:600;color:var(--text-primary);font-size:.9rem}.compare-spec-values{flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:15px}.compare-spec-value{text-align:center;padding:14px 12px;border-radius:2px;background:var(--card-bg);position:relative;transition:all .3s ease;border:1px solid transparent}.compare-spec-value.best{background:#c9a9621a;border-color:var(--accent-color)}.compare-spec-value.lowest,body.dark-mode .compare-spec-value.lowest{opacity:.5}.value-main{font-size:1.1rem;font-weight:400;color:var(--text-primary);display:block;letter-spacing:.03em}.compare-spec-value.best .value-main{color:var(--accent-color);font-weight:500}.value-diff{display:block;font-size:.75rem;font-weight:600;margin-top:4px}.value-diff.positive{color:#22c55e}.value-diff.negative{color:#ef4444}.best-badge{position:absolute;top:-8px;right:-8px;background:var(--accent-color);color:#fff;font-size:.55rem;font-weight:500;padding:3px 8px;border-radius:2px;letter-spacing:.1em}.compare-total-section{margin-bottom:25px}.compare-total-section h3,.compare-birthdate-section h3{color:var(--text-primary);font-size:1rem;margin-bottom:15px;padding-left:5px}.compare-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.compare-total-card{background:var(--card-bg-alt);padding:20px 18px;border-radius:2px;text-align:center;color:var(--text-primary);border:1px solid var(--border-subtle)}.compare-total-card.primary{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.total-name{font-weight:400;font-size:.9rem;margin-bottom:10px;letter-spacing:.05em}.total-bwh{font-size:.95rem;font-weight:500;margin-bottom:8px;letter-spacing:.03em}.total-sum{font-size:.8rem;opacity:.8;background:transparent;padding:0;border-radius:0;display:inline-block;letter-spacing:.03em}.compare-birthdates{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.compare-birthdate-card{background:var(--card-bg-alt);padding:16px;border-radius:2px;text-align:center;border:1px solid var(--border-subtle)}body.dark-mode .compare-birthdate-card{background:var(--card-bg-alt)}.birthdate-name{font-weight:400;color:var(--text-primary);font-size:.85rem;margin-bottom:8px;letter-spacing:.05em}.birthdate-date{color:var(--text-secondary);font-size:.8rem;letter-spacing:.03em}@media(max-width:600px){.compare-modal .compare-modal-content{padding:20px 15px}.compare-spec-label{width:80px}.spec-name{font-size:.8rem}.compare-spec-value{padding:10px 6px}.value-main{font-size:1rem}.compare-cards-header{grid-template-columns:1fr}}.range-filters{display:flex;gap:20px;justify-content:center;margin-bottom:20px;flex-wrap:wrap}.range-filter{background:var(--card-bg);padding:22px 28px;border-radius:2px;border:1px solid var(--border-subtle);min-width:280px;flex:1;max-width:400px;transition:all .3s ease}.range-filter.active{border-color:var(--accent-color)}.range-filter-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px;gap:10px}.range-filter-label{font-weight:400;color:var(--text-primary);font-size:.85rem;letter-spacing:.05em}.range-filter-value{font-weight:500;color:var(--accent-color);font-size:.85rem;padding:0;background:transparent;border-radius:0}.range-reset-btn{padding:4px 12px;background:transparent;color:var(--text-secondary);border:1px solid var(--border-subtle);border-radius:2px;font-size:.7rem;font-weight:400;cursor:pointer;transition:all .3s ease;letter-spacing:.05em}.range-reset-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.range-slider-container{position:relative;height:30px;margin-top:10px}.range-slider-track{position:absolute;width:100%;height:6px;background:#ddd;border-radius:3px;top:50%;transform:translateY(-50%)}body.dark-mode .range-slider-track{background:#555}.range-slider{position:absolute;width:100%;height:6px;top:50%;transform:translateY(-50%);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;pointer-events:none}.range-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,var(--accent-color) 0%,var(--accent-secondary) 100%);cursor:pointer;pointer-events:all;box-shadow:0 2px 8px var(--glow-color);transition:transform .2s ease}.range-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.range-slider::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,var(--accent-color) 0%,var(--accent-secondary) 100%);cursor:pointer;pointer-events:all;box-shadow:0 2px 8px var(--glow-color);border:none}.filter-tag.range-tag{background:linear-gradient(135deg,#667eea,#764ba2)}.note-indicator{position:absolute;bottom:20px;right:20px;font-size:.9rem;background:var(--card-bg);border:1px solid var(--border-subtle);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:10;opacity:.5;transition:all .3s ease}.note-indicator:hover{opacity:1;transform:scale(1.1);border-color:var(--accent-color)}body.dark-mode .note-indicator{background:var(--card-bg-alt)}.note-indicator.has-note{background:var(--accent-color);border-color:var(--accent-color);color:#fff;opacity:1}body.dark-mode .note-indicator.has-note{background:var(--accent-color)}@keyframes noteAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.memo-section{margin-top:25px;padding-top:20px;border-top:1px solid rgba(0,0,0,.1)}body.dark-mode .memo-section{border-top:1px solid rgba(255,255,255,.1)}.memo-section h3{color:var(--text-primary);margin-bottom:15px;font-size:1rem}.memo-input{width:100%;min-height:100px;padding:15px;border:2px solid rgba(233,30,99,.2);border-radius:12px;font-family:inherit;font-size:.95rem;resize:vertical;background:var(--card-bg);color:var(--text-primary);transition:all .3s ease}.memo-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #e91e631a}.memo-input::placeholder{color:var(--text-secondary);opacity:.7}.product-section{margin-top:25px;padding-top:25px;border-top:1px solid var(--border-subtle)}.product-section-title{color:var(--accent-color);font-size:1.1rem;font-weight:500;margin-bottom:20px;letter-spacing:.05em;display:flex;align-items:center;gap:10px}.pr-badge{background:linear-gradient(135deg,#e74c3c,#c0392b);color:#fff;font-size:.65rem;font-weight:700;padding:3px 8px;border-radius:4px;letter-spacing:.1em}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.product-card{background:var(--card-bg-alt);border-radius:8px;overflow:hidden;border:1px solid var(--border-subtle);transition:all .3s ease}.product-card.clickable{cursor:pointer}.product-card.clickable:hover{transform:translateY(-4px);box-shadow:0 8px 25px var(--shadow-hover);border-color:var(--accent-color)}.product-card.no-link{opacity:.7}.product-image{position:relative;width:100%;height:140px;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.product-card.clickable:hover .product-image img{transform:scale(1.05)}.product-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--sexy-red) 0%,var(--accent-color) 100%)}.product-image-placeholder span{font-size:2.5rem;opacity:.8}.product-type-badge{position:absolute;top:8px;left:8px;background:#000000b3;color:#fff;padding:4px 10px;border-radius:4px;font-size:.7rem;font-weight:500;letter-spacing:.03em}.product-new-badge{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#f44,#c00);color:#fff;padding:4px 10px;border-radius:4px;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 2px 8px #f446;animation:pulse-new 2s ease-in-out infinite}@keyframes pulse-new{0%,to{transform:scale(1);box-shadow:0 2px 8px #f446}50%{transform:scale(1.05);box-shadow:0 4px 12px #f449}}.product-info{padding:15px}.product-title{font-size:.9rem;font-weight:500;color:var(--text-primary);margin-bottom:8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-price{font-size:1.1rem;font-weight:600;color:var(--sexy-red);margin-bottom:6px}.product-date{font-size:.75rem;color:var(--text-secondary);margin-bottom:12px}.product-stores{display:flex;flex-wrap:wrap;gap:6px}.store-link{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:var(--store-color);color:#fff;border-radius:4px;font-size:.7rem;font-weight:500;text-decoration:none;transition:all .2s ease}.store-link:hover{filter:brightness(1.1);transform:scale(1.05)}.product-coming-soon{display:inline-block;padding:6px 12px;background:var(--card-bg);color:var(--text-secondary);border-radius:4px;font-size:.75rem;border:1px dashed var(--border-subtle)}.affiliate-notice{margin-top:15px;font-size:.75rem;color:var(--text-secondary);text-align:center;opacity:.8}.detail-page-btn{display:inline-flex;align-items:center;gap:8px;margin-top:15px;padding:12px 24px;background:linear-gradient(135deg,var(--sexy-red) 0%,var(--accent-color) 100%);color:#fff;border:none;border-radius:4px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease;letter-spacing:.05em}.detail-page-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px var(--sexy-glow)}.detail-page{min-height:100vh;background:linear-gradient(160deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%)}.detail-page.not-found{display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}.detail-page.not-found h1{color:var(--accent-color);margin-bottom:15px}.detail-page.not-found p{color:var(--text-secondary);margin-bottom:30px}.detail-container{max-width:1200px;margin:0 auto;padding:0 30px}.detail-hero{position:relative;min-height:80vh;display:flex;align-items:flex-end;overflow:hidden}.detail-hero-bg{position:absolute;top:0;right:0;width:55%;height:100%;display:flex;align-items:center;justify-content:center}.detail-hero-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to right,var(--bg-gradient-end) 0%,rgba(22,33,62,.5) 40%,transparent 100%)}.detail-hero-initial{position:relative;z-index:5;width:200px;height:200px;border-radius:50%;background:#ffffff26;border:4px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;box-shadow:0 10px 40px #0000004d;animation:floatInitial 3s ease-in-out infinite}@keyframes floatInitial{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.detail-hero-initial span{font-size:5rem;color:#fff;font-weight:600;font-family:"Noto Serif JP",serif;text-shadow:0 4px 8px rgba(0,0,0,.3)}.detail-hero-thumbnail{position:relative;z-index:5;width:400px;height:400px;border-radius:20px;overflow:hidden;border:5px solid rgba(255,255,255,.3);box-shadow:0 15px 60px #00000080;animation:floatInitial 3s ease-in-out infinite;background:#0003}.detail-hero-thumbnail img{width:100%;height:100%;object-fit:cover;object-position:center top}.detail-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,var(--bg-gradient-end) 0%,rgba(22,33,62,.8) 20%,transparent 50%)}.detail-hero-content{position:relative;z-index:10;width:100%;max-width:1200px;margin:0 auto;padding:40px 30px 60px}.detail-hero-text{max-width:500px}.back-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:30px;color:#fff;font-size:.85rem;cursor:pointer;transition:all .3s ease;margin-bottom:30px}.back-btn:hover{background:#fff3;transform:translate(-5px)}.detail-catchphrase{display:inline-block;padding:8px 18px;background:var(--sexy-red);color:#fff;font-size:.85rem;font-weight:500;letter-spacing:.1em;margin-bottom:15px;border-radius:2px}.detail-name{font-family:"Noto Serif JP",serif;font-size:3.5rem;font-weight:600;color:#fff;letter-spacing:.1em;margin-bottom:10px;text-shadow:0 4px 20px rgba(0,0,0,.5)}.detail-kana{font-size:1rem;color:#ffffffb3;letter-spacing:.2em;margin-bottom:20px}.detail-highlights{display:flex;flex-wrap:wrap;gap:10px}.highlight-tag{padding:8px 16px;background:#c9a96233;border:1px solid var(--accent-color);color:var(--accent-color);font-size:.85rem;font-weight:500;border-radius:2px;letter-spacing:.05em}.detail-profile{padding:60px 0;background:var(--card-bg)}.profile-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:50px;align-items:start}.profile-appeal h2{color:var(--accent-color);font-size:1.4rem;font-weight:500;margin-bottom:25px;letter-spacing:.05em}.appeal-text p{color:var(--text-primary);font-size:1rem;line-height:2;margin-bottom:20px}.profile-sources{margin-top:30px;padding-top:15px;border-top:1px solid var(--border-subtle);font-size:.75rem;color:var(--text-secondary);opacity:.7}.sources-label{margin-right:8px}.source-item{display:inline}.source-item:not(:last-child):after{content:" / "}.profile-stats{background:var(--card-bg-alt);padding:30px;border-radius:8px;border:1px solid var(--border-subtle)}.profile-stats h3{color:var(--accent-color);font-size:1.1rem;font-weight:500;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--border-subtle)}.stats-list{display:flex;flex-direction:column;gap:15px}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(0,0,0,.05)}body.dark-mode .stat-row{border-bottom:1px solid rgba(255,255,255,.05)}.stat-row:last-child{border-bottom:none}.stat-label{color:var(--text-secondary);font-size:.9rem}.stat-row .stat-value{color:var(--text-primary);font-weight:600;font-size:1rem}.detail-products{padding:60px 0;background:linear-gradient(160deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%)}.detail-products h2{color:#fff;font-size:1.6rem;font-weight:500;text-align:center;margin-bottom:10px;letter-spacing:.05em}.products-subtitle{color:#fff9;text-align:center;margin-bottom:30px;font-size:.9rem}.price-slider-container{background:#1e1e2f;border:1px solid rgba(201,169,98,.3);border-radius:8px;padding:12px 20px;margin-bottom:24px;max-width:480px;margin-left:auto;margin-right:auto}.price-slider-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.price-slider-label{font-size:.85rem;font-weight:500;color:#c9a962}.price-slider-values-inline{font-size:.9rem;font-weight:600;color:#f5f5f5}.price-slider-reset{background:transparent;border:1px solid rgba(201,169,98,.3);color:#fff9;padding:3px 10px;border-radius:20px;font-size:.75rem;cursor:pointer;transition:all .2s ease;margin-left:auto}.price-slider-reset:hover{background:#8b2942;border-color:#8b2942;color:#fff}.price-slider-track{position:relative;height:28px;display:flex;align-items:center;touch-action:none;-webkit-user-select:none;user-select:none}.price-slider-rail{position:absolute;width:100%;height:6px;top:50%;left:0;transform:translateY(-50%);background:#ffffff26;border-radius:3px}.price-slider-range{position:absolute;height:6px;top:50%;transform:translateY(-50%);background:linear-gradient(90deg,#c9a962,#8b2942);border-radius:3px}.price-slider-thumb{position:absolute;width:22px;height:22px;top:50%;background:linear-gradient(135deg,#c9a962,#e8d5a3);border:3px solid #1e1e2f;border-radius:50%;cursor:grab;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0006;transition:transform .1s ease,box-shadow .2s ease;z-index:2}.price-slider-thumb:hover{transform:translate(-50%,-50%) scale(1.15);box-shadow:0 0 12px #c9a96299}.price-slider-thumb.active{cursor:grabbing;transform:translate(-50%,-50%) scale(1.2);box-shadow:0 0 16px #c9a962cc}.price-slider-info{text-align:center;margin-top:8px}.price-slider-count{font-size:.8rem;color:#fff9}.price-slider-count strong{color:#c9a962;font-weight:600}@media(max-width:768px){.price-slider-container{padding:10px 16px}.price-slider-thumb{width:24px;height:24px}.price-slider-track{height:32px}}.product-nav{display:flex;justify-content:center;gap:12px;margin-bottom:40px;flex-wrap:wrap}.product-nav-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:50px;color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:all .3s ease}.product-nav-btn:hover{background:var(--sexy-red);border-color:var(--sexy-red);transform:translateY(-3px);box-shadow:0 8px 25px #c9a9624d}.product-nav-icon{font-size:1.2rem}.product-nav-label{font-weight:500}.product-nav-count{background:#c9a96233;padding:2px 8px;border-radius:12px;font-size:.8rem;color:var(--gold-primary)}.product-nav-btn:hover .product-nav-count{background:#fff3;color:#fff}.product-type-section{margin-bottom:50px;scroll-margin-top:20px}.product-type-title{color:var(--gold-primary);font-size:1.3rem;font-weight:500;margin-bottom:25px;padding-bottom:12px;border-bottom:2px solid var(--border-subtle);display:flex;align-items:center;gap:10px}.product-type-count{color:#ffffff80;font-size:.9rem;font-weight:400;margin-left:auto}.detail-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:25px}.detail-product-card{background:var(--card-bg);border-radius:8px;overflow:hidden;border:1px solid var(--border-subtle);transition:all .4s ease}.detail-product-card:hover{transform:translateY(-8px);box-shadow:0 20px 50px #0000004d}.detail-product-card.no-link{opacity:.7}.detail-product-image{position:relative;height:200px;background:linear-gradient(135deg,var(--sexy-red) 0%,var(--accent-color) 100%)}.detail-product-image img{width:100%;height:100%;object-fit:cover}.detail-product-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.detail-product-placeholder span{font-size:4rem;opacity:.5}.detail-product-type{position:absolute;top:12px;left:12px;padding:6px 12px;background:#000000b3;color:#fff;font-size:.75rem;font-weight:500;border-radius:4px}.detail-product-info{padding:25px}.detail-product-info h4{color:var(--text-primary);font-size:1rem;font-weight:500;margin-bottom:12px;line-height:1.5}.detail-product-price{color:var(--sexy-red);font-size:1.3rem;font-weight:700;margin-bottom:8px}.detail-product-date{color:var(--text-secondary);font-size:.8rem;margin-bottom:20px}.detail-product-links{display:flex;flex-direction:column;gap:10px}.detail-store-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;background:var(--store-color);color:#fff;text-decoration:none;border-radius:6px;font-size:.9rem;font-weight:600;transition:all .3s ease;letter-spacing:.03em}.detail-store-btn:hover{filter:brightness(1.1);transform:scale(1.02)}.detail-coming-soon{display:block;text-align:center;padding:14px;background:var(--card-bg-alt);color:var(--text-secondary);border-radius:6px;font-size:.85rem;border:1px dashed var(--border-subtle)}.no-products{text-align:center;padding:60px 20px;color:#fff9}.scroll-to-top-btn{position:fixed;bottom:30px;right:30px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--gold-primary) 0%,var(--sexy-red) 100%);border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;box-shadow:0 4px 20px #c9a96266;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease;z-index:1000}.scroll-to-top-btn.visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top-btn:hover{transform:translateY(-5px);box-shadow:0 8px 30px #c9a96280}.scroll-to-top-btn:active{transform:translateY(-2px)}.scroll-to-top-icon{color:#fff;font-size:1.2rem;font-weight:700;line-height:1}.scroll-to-top-text{color:#fff;font-size:.6rem;font-weight:600;letter-spacing:.05em}.share-buttons{display:flex;align-items:center;gap:10px;margin-top:20px}.share-label{font-size:.85rem;color:#ffffffb3;margin-right:5px}.share-btn{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;border-radius:50%;font-size:.9rem;font-weight:700;cursor:pointer;transition:all .3s ease;color:#fff}.share-btn:hover{transform:translateY(-3px);box-shadow:0 5px 15px #0000004d}.share-btn.twitter{background:#000}.share-btn.line{background:#00b900;font-size:.7rem;font-weight:600}.share-btn.facebook{background:#1877f2;font-size:1.1rem}.share-btn.copy{background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%)}.detail-related{padding:60px 0;background:linear-gradient(180deg,var(--bg-gradient-end) 0%,var(--bg-gradient-start) 100%)}.detail-related h2{text-align:center;font-size:1.8rem;margin-bottom:10px;color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.5)}.related-subtitle{text-align:center;color:#ffffffb3;margin-bottom:30px;text-shadow:0 1px 5px rgba(0,0,0,.3)}.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px}.related-card{background:var(--card-bg);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:all .3s ease;border:1px solid var(--border-subtle)}.related-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000004d;border-color:var(--accent-color)}.related-image{position:relative;width:100%;aspect-ratio:3 / 4;overflow:hidden}.related-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.related-card:hover .related-image img{transform:scale(1.05)}.related-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.related-placeholder span{font-size:3rem;color:#fffc;font-weight:700;text-shadow:0 2px 10px rgba(0,0,0,.3)}.related-info{padding:15px}.related-info h4{font-size:1rem;margin:0 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.related-meta{font-size:.8rem;color:var(--text-secondary);margin:0}@media(max-width:768px){.share-buttons{justify-content:center;margin-top:15px}.share-btn{width:42px;height:42px}.detail-related{padding:40px 0}.detail-related h2{font-size:1.4rem}.related-grid{grid-template-columns:repeat(2,1fr);gap:15px}.related-info{padding:12px}.related-info h4{font-size:.9rem}}.photo-gallery{padding:60px 0;background:linear-gradient(180deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%)}.photo-gallery h2{text-align:center;font-size:1.8rem;margin-bottom:10px;background:linear-gradient(135deg,var(--accent-color),var(--sexy-red));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gallery-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:30px}.gallery-carousel-wrapper{position:relative;padding:0 40px}.gallery-carousel{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:10px 0}.gallery-carousel::-webkit-scrollbar{display:none}.gallery-carousel-item{flex:0 0 180px;scroll-snap-align:start;aspect-ratio:3 / 4;border-radius:10px;overflow:hidden;cursor:pointer;position:relative;box-shadow:0 4px 15px #0003;transition:transform .3s ease}.gallery-carousel-item:hover{transform:scale(1.05);box-shadow:0 8px 25px #c9a9624d}.gallery-carousel-item img{width:100%;height:100%;object-fit:cover}.gallery-carousel-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 50%);opacity:0;transition:opacity .3s;display:flex;align-items:center;justify-content:center;font-size:2rem}.gallery-carousel-item:hover .gallery-carousel-overlay{opacity:1}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;background:#ffffff1a;border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:1.5rem;cursor:pointer;z-index:2;transition:all .3s;display:flex;align-items:center;justify-content:center}.gallery-arrow:hover{background:#c9a96233;color:var(--accent-color)}.gallery-arrow-left{left:0}.gallery-arrow-right{right:0}.gallery-shortcut{text-align:center;padding:15px 20px;background:var(--bg-gradient-end)}.gallery-shortcut-link{display:inline-flex;align-items:center;gap:6px;color:var(--text-secondary);text-decoration:none;font-size:.9rem;padding:8px 16px;border-radius:20px;background:#ffffff0d;border:1px solid var(--border-subtle);transition:all .3s ease}.gallery-shortcut-link:hover{color:var(--accent-color);border-color:var(--accent-color);background:#c9a9621a;transform:translate(5px)}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;background:#000000f2;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-close{position:absolute;top:20px;right:20px;width:50px;height:50px;background:#ffffff1a;border:none;border-radius:50%;color:#fff;font-size:2rem;cursor:pointer;transition:all .3s ease;z-index:10001}.lightbox-close:hover{background:#fff3;transform:rotate(90deg)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:60px;height:60px;background:#ffffff1a;border:none;border-radius:50%;color:#fff;font-size:2.5rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;z-index:10001}.lightbox-nav:hover{background:#fff3}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-content{max-width:90vw;max-height:85vh;display:flex;flex-direction:column;align-items:center}.lightbox-content img{max-width:100%;max-height:70vh;object-fit:contain;border-radius:8px;box-shadow:0 10px 50px #00000080}.lightbox-info{margin-top:20px;text-align:center;color:#fff}.lightbox-title{font-size:1.1rem;margin:0 0 10px;max-width:80vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lightbox-counter{font-size:.9rem;color:#fff9;margin:0 0 15px}.lightbox-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.lightbox-buy-btn{display:inline-block;padding:12px 30px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);color:#fff;text-decoration:none;border-radius:30px;font-weight:700;transition:all .3s ease}.lightbox-buy-btn:hover{transform:translateY(-2px);box-shadow:0 5px 20px #c9a96266}@media(max-width:768px){.photo-gallery{padding:40px 0}.photo-gallery h2{font-size:1.4rem}.gallery-carousel-wrapper{padding:0 30px}.gallery-carousel-item{flex:0 0 140px}.gallery-arrow{width:28px;height:28px;font-size:1.2rem}.lightbox-close{top:10px;right:10px;width:40px;height:40px;font-size:1.5rem}.lightbox-nav{width:45px;height:45px;font-size:2rem}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-content img{max-height:60vh}.lightbox-title{font-size:.95rem;padding:0 15px}}.external-search{padding:50px 0;background:linear-gradient(135deg,var(--card-bg) 0%,var(--bg-gradient-end) 100%);text-align:center}.external-search-title{font-size:1.6rem;margin:0 0 10px;color:var(--text-primary)}.external-search-subtitle{font-size:1.1rem;color:var(--accent-color);margin:0 0 30px;font-weight:700}.external-search-buttons{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.external-search-btn{display:flex;align-items:center;gap:10px;padding:14px 28px;background:var(--btn-color);border:none;border-radius:50px;color:#fff;text-decoration:none;font-weight:700;transition:all .3s ease;box-shadow:0 4px 15px #0003}.external-search-btn:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 25px #0006;filter:brightness(1.1)}.external-search-icon{font-size:1.4rem}.external-search-name{font-size:1rem;letter-spacing:.05em}@media(max-width:768px){.external-search{padding:40px 0}.external-search-title{font-size:1.3rem}.external-search-subtitle{font-size:1rem;margin-bottom:25px}.external-search-buttons{gap:10px}.external-search-btn{padding:12px 20px;flex:1 1 calc(50% - 10px);justify-content:center;min-width:140px}.external-search-icon{font-size:1.1rem}.external-search-name{font-size:.9rem}}.detail-sokmil{padding:60px 0;background:linear-gradient(135deg,#1a0a1f,#2d1b3d,#1a0a1f)}.detail-sokmil h2{font-size:1.8rem;color:#fff;text-align:center;margin-bottom:10px;text-shadow:0 2px 10px rgba(0,0,0,.5)}.sokmil-subtitle{text-align:center;color:#f5b041;font-weight:700;margin-bottom:30px;font-size:1rem;text-shadow:0 1px 5px rgba(0,0,0,.3)}.sokmil-loading{text-align:center;padding:40px;color:var(--text-secondary)}.sokmil-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px;max-width:1000px;margin:0 auto}.sokmil-card{background:var(--card-bg);border-radius:12px;overflow:hidden;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 4px 15px #0000004d}.sokmil-card:hover{transform:translateY(-5px);box-shadow:0 8px 25px #e67e224d}.sokmil-card-image{position:relative;aspect-ratio:150 / 213;overflow:hidden}.sokmil-card-image img{width:100%;height:100%;object-fit:cover}.sokmil-volume{position:absolute;bottom:8px;right:8px;background:#000c;color:#fff;font-size:.7rem;padding:4px 8px;border-radius:4px}.sokmil-card-info{padding:12px}.sokmil-card-title{font-size:.85rem;color:var(--text-primary);margin:0 0 8px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sokmil-card-price{font-size:.9rem;color:#e67e22;font-weight:700;margin:0}.sokmil-more{text-align:center;margin-top:25px;color:var(--text-secondary);font-size:.9rem}.sokmil-credit{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.sokmil-credit a{display:inline-block;opacity:.7;transition:opacity .3s ease}.sokmil-credit a:hover{opacity:1}.sokmil-appeal{background:linear-gradient(135deg,#8b294226,#2d1f3d4d);border:1px solid rgba(201,169,98,.2);border-radius:12px;padding:25px 30px;margin:30px auto 0;max-width:800px}.sokmil-appeal h3{color:#f5b041;font-size:1.1rem;font-weight:600;margin-bottom:15px;text-align:center;text-shadow:0 1px 3px rgba(0,0,0,.3)}.sokmil-appeal ul{list-style:none;padding:0;margin:0 0 15px}.sokmil-appeal li{color:#ffffffe6;font-size:.9rem;line-height:1.7;margin-bottom:12px;padding-left:20px;position:relative}.sokmil-appeal li:before{content:"✓";position:absolute;left:0;color:#f5b041;font-weight:700}.sokmil-appeal li strong{color:#fff;font-weight:600}.sokmil-appeal-note{color:#ffffff80;font-size:.8rem;text-align:center;margin-top:15px;font-style:italic}@media(max-width:768px){.detail-sokmil{padding:40px 0}.detail-sokmil h2{font-size:1.4rem}.sokmil-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;padding:0 15px}.sokmil-card-info{padding:10px}.sokmil-card-title{font-size:.75rem}.sokmil-card-price{font-size:.8rem}}.detail-dmm{padding:60px 0;background:linear-gradient(135deg,#1a0a1f,#0a1a2f)}.detail-dmm h2{font-size:1.8rem;margin:0 0 10px;text-align:center;color:#00a0e9}.dmm-subtitle{text-align:center;color:#fff9;margin:0 0 30px;font-size:.95rem}.dmm-loading{text-align:center;color:#ffffff80;padding:40px 0}.dmm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:20px;padding:0 20px}.dmm-card{background:#00a0e914;border-radius:12px;overflow:hidden;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(0,160,233,.2)}.dmm-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #00a0e94d}.dmm-card-image{position:relative;aspect-ratio:3 / 4;overflow:hidden}.dmm-card-image img{width:100%;height:100%;object-fit:cover}.dmm-card-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#00a0e933,#00649633);font-size:3rem}.dmm-type{position:absolute;bottom:8px;right:8px;background:#00a0e9e6;color:#fff;font-size:.7rem;padding:3px 8px;border-radius:4px}.dmm-card-info{padding:12px}.dmm-card-title{color:var(--text-primary);font-size:.85rem;margin:0 0 8px;line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.dmm-card-price{color:#00a0e9;font-weight:700;font-size:.95rem;margin:0}.dmm-more{text-align:center;color:#fff9;margin-top:20px;font-size:.9rem}.dmm-appeal{margin-top:40px;padding:25px;background:#00a0e914;border-radius:12px;border:1px solid rgba(0,160,233,.2)}.dmm-appeal h3{color:#00a0e9;font-size:1.1rem;margin:0 0 20px;text-align:center}.dmm-appeal ul{list-style:none;padding:0;margin:0}.dmm-appeal li{color:#fffc;font-size:.9rem;line-height:1.6;padding:8px 0 8px 24px;position:relative}.dmm-appeal li:before{content:"✓";position:absolute;left:0;color:#00a0e9;font-weight:700}.dmm-appeal li strong{color:#fff;font-weight:600}.dmm-appeal-note{color:#ffffff80;font-size:.8rem;text-align:center;margin-top:15px;font-style:italic}.dmm-credit{text-align:center;margin-top:30px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1)}.dmm-credit a{display:inline-block;opacity:.7;transition:opacity .3s ease}.dmm-credit a:hover{opacity:1}@media(max-width:768px){.detail-dmm{padding:40px 0}.detail-dmm h2{font-size:1.4rem}.dmm-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;padding:0 15px}.dmm-card-info{padding:10px}.dmm-card-title{font-size:.75rem}.dmm-card-price{font-size:.8rem}.dmm-appeal{padding:20px 15px;margin:30px 15px 0}.dmm-appeal h3{font-size:1rem}.dmm-appeal li{font-size:.85rem}}.official-sns{padding:50px 0;background:linear-gradient(135deg,var(--card-bg) 0%,var(--bg-gradient-end) 100%);text-align:center}.official-sns-title{font-size:1.6rem;margin:0 0 25px;color:var(--text-primary)}.official-sns-buttons{display:flex;justify-content:center;gap:15px;flex-wrap:wrap}.official-sns-btn{display:flex;align-items:center;gap:10px;padding:14px 28px;background:var(--btn-color);border:none;border-radius:50px;color:#fff;text-decoration:none;font-weight:700;transition:all .3s ease;box-shadow:0 4px 15px #0003}.official-sns-btn:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 8px 25px #0006;filter:brightness(1.1)}.official-sns-icon{font-size:1.4rem}.official-sns-name{font-size:1rem;letter-spacing:.05em}@media(max-width:768px){.official-sns{padding:40px 0}.official-sns-title{font-size:1.3rem}.official-sns-buttons{gap:10px}.official-sns-btn{padding:12px 20px;flex:1 1 calc(50% - 10px);justify-content:center;min-width:140px}.official-sns-icon{font-size:1.1rem}.official-sns-name{font-size:.9rem}}.rakuten-appeal{background:linear-gradient(135deg,#bf00001a,#1e1e2f80);border:1px solid rgba(191,0,0,.2);border-radius:12px;padding:25px 30px;margin:40px auto 0;max-width:800px}.rakuten-appeal h3{color:#bf0000;font-size:1.1rem;font-weight:600;margin-bottom:15px;text-align:center}body.dark-mode .rakuten-appeal h3{color:#ff6b6b}.rakuten-appeal ul{list-style:none;padding:0;margin:0}.rakuten-appeal li{color:#ffffffe6;font-size:.9rem;line-height:1.7;margin-bottom:12px;padding-left:20px;position:relative}.rakuten-appeal li:before{content:"✓";position:absolute;left:0;color:#bf0000;font-weight:700}body.dark-mode .rakuten-appeal li:before{color:#ff6b6b}.rakuten-appeal li strong{color:#fff;font-weight:600}@media(max-width:768px){.rakuten-appeal,.sokmil-appeal{padding:20px;margin:25px 15px 0}.rakuten-appeal h3,.sokmil-appeal h3{font-size:1rem}.rakuten-appeal li,.sokmil-appeal li{font-size:.85rem;margin-bottom:10px}}.affiliate-disclaimer{margin-top:40px;text-align:center;font-size:.8rem;color:#ffffff80}.photobooks-hero{padding:40px 0;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%)}.photobooks-header{display:flex;align-items:center;gap:24px}.photobooks-thumb{width:120px;height:120px;border-radius:12px;object-fit:cover;border:3px solid var(--accent-color)}.photobooks-thumb-placeholder{width:120px;height:120px;border-radius:12px;background:linear-gradient(135deg,var(--accent-color),var(--sexy-red));display:flex;align-items:center;justify-content:center;font-size:3rem;color:#fff;font-weight:700}.photobooks-info h1{font-size:1.8rem;color:var(--text-primary);margin-bottom:8px}.photobooks-meta{color:var(--text-secondary);font-size:.95rem;margin-bottom:8px}.photobooks-count{color:var(--accent-color);font-size:1rem;font-weight:500}.seo-content{padding:40px 0;background:var(--card-bg)}.seo-content h2{color:var(--accent-color);margin-bottom:20px;font-size:1.3rem}.seo-content p{color:var(--text-secondary);line-height:1.8;margin-bottom:16px}.photobooks-products{padding:40px 0}.photobooks-products h2{color:var(--text-primary);margin-bottom:24px;font-size:1.3rem}.related-links{padding:40px 0;background:var(--card-bg)}.related-links h2{color:var(--text-primary);margin-bottom:20px;font-size:1.2rem}.related-link-buttons{display:flex;gap:16px;flex-wrap:wrap}.related-link-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:var(--bg-secondary);color:var(--text-primary);text-decoration:none;border-radius:8px;transition:all .3s ease}.related-link-btn:hover{background:var(--accent-color);color:#fff;transform:translateY(-2px)}@media(max-width:768px){.photobooks-header{flex-direction:column;text-align:center}.photobooks-info h1{font-size:1.4rem}.related-link-buttons{justify-content:center}}.detail-cta{padding:60px 0;background:var(--card-bg);text-align:center}.detail-cta p{color:var(--text-secondary);margin-bottom:20px}.cta-btn{display:inline-flex;align-items:center;gap:10px;padding:16px 40px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);color:#fff;border:none;border-radius:4px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;letter-spacing:.05em}.cta-btn:hover{transform:translateY(-3px);box-shadow:0 10px 30px var(--glow-color)}@media(max-width:768px){.detail-hero{min-height:auto;flex-direction:column}.detail-hero-bg{position:relative;width:100%;height:40vh}.detail-hero-bg:after{background:linear-gradient(to bottom,transparent 0%,rgba(22,33,62,.3) 60%,var(--bg-gradient-end) 100%)}.detail-hero-initial{width:120px;height:120px}.detail-hero-initial span{font-size:3rem}.detail-hero-thumbnail{width:250px;height:250px;border-radius:16px}.detail-hero-overlay{display:none}.detail-hero-content{padding:20px 20px 40px;background:var(--bg-gradient-end)}.detail-hero-text{max-width:100%}.detail-name{font-size:2.2rem}.detail-kana{font-size:.85rem}.highlight-tag{padding:6px 12px;font-size:.75rem}.detail-container{padding:0 20px}.detail-profile{padding:40px 0}.profile-grid{grid-template-columns:1fr;gap:30px}.profile-appeal h2{font-size:1.2rem}.appeal-text p{font-size:.95rem;line-height:1.8}.detail-products{padding:40px 0}.detail-products h2{font-size:1.3rem}.product-nav{gap:8px;margin-bottom:30px}.product-nav-btn{padding:10px 14px;font-size:.8rem;gap:6px}.product-nav-icon{font-size:1rem}.product-nav-count{padding:2px 6px;font-size:.7rem}.product-type-section{margin-bottom:40px}.product-type-title{font-size:1.1rem;flex-wrap:wrap}.product-type-count{font-size:.8rem}.detail-product-grid{grid-template-columns:1fr;gap:20px}.detail-product-image{height:180px}.detail-product-info{padding:20px}.detail-cta{padding:40px 0}.scroll-to-top-btn{bottom:20px;right:20px;width:50px;height:50px}.scroll-to-top-icon{font-size:1rem}.scroll-to-top-text{font-size:.55rem}}@media(max-width:768px){.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product-image{height:120px}.product-info{padding:12px}.product-title{font-size:.8rem}.product-price{font-size:1rem}.store-link{padding:5px 10px;font-size:.65rem}}@media(max-width:375px){.product-grid{grid-template-columns:1fr}}.ad-container{display:flex;flex-direction:column;align-items:center;padding:20px 0}.ad-container.ad-header{margin-bottom:20px}.ad-container.ad-footer{margin-top:20px}.ad-placeholder{width:100%;background:var(--card-bg);border:2px dashed var(--border-subtle);border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.ad-placeholder-inner{display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-secondary)}.ad-label{padding:4px 12px;background:var(--border-subtle);border-radius:4px;font-size:.7rem;font-weight:600;letter-spacing:.1em;color:var(--text-secondary)}.ad-size{font-size:.8rem;opacity:.6}.ad-notice{margin-top:8px;font-size:.7rem;color:var(--text-secondary);opacity:.6}.ad-card{background:var(--card-bg);border:2px dashed var(--border-subtle);display:flex;align-items:center;justify-content:center;min-height:200px;cursor:default}.ad-card:hover{transform:none;box-shadow:0 4px 25px var(--shadow-color)}.ad-card-inner{display:flex;flex-direction:column;align-items:center;gap:12px;color:var(--text-secondary)}.ad-card-text{font-size:.9rem;opacity:.6}.ad-rectangle{margin:30px auto}@media(max-width:768px){.ad-placeholder{height:100px!important;max-width:100%!important}.ad-container.ad-horizontal .ad-placeholder{height:60px!important}.ad-size{font-size:.7rem}}.no-results{text-align:center;color:#fff;font-size:1.5rem;padding:60px 20px;display:none}footer{text-align:center;color:#fff9;padding:60px 20px;font-size:.85rem;letter-spacing:.1em;font-weight:300}footer a{color:var(--accent-secondary);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .3s ease}footer a:hover{border-bottom-color:var(--accent-secondary)}.card{--stagger-delay: .05s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.grid{transition:opacity .3s ease}.grid.filtering{opacity:.7}.card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,rgba(139,41,66,.02) 100%);opacity:0;transition:opacity .4s ease;pointer-events:none}.card:hover:after{opacity:1}.filter-btn,.compare-btn{position:relative;overflow:hidden}.filter-btn:after,.compare-btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);transform:scale(0);opacity:0;transition:transform .5s ease,opacity .5s ease}.filter-btn:active:after,.compare-btn:active:after{transform:scale(2);opacity:1;transition:transform 0s,opacity 0s}.filter-tag{transition:all .3s cubic-bezier(.4,0,.2,1)}.filter-tag:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.age-group{transition:all .4s cubic-bezier(.4,0,.2,1)}.age-group.active{background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);border-color:var(--accent-color);transform:scale(1.02)}.age-group.active .age-group-title,.age-group.active .age-group-value{color:#fff}.age-item{transition:all .3s cubic-bezier(.4,0,.2,1)}.age-item:hover{transform:translate(5px)}@keyframes modalBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes modalContentIn{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal{animation:modalBackdropIn .3s ease}.modal-content{animation:modalContentIn .4s cubic-bezier(.4,0,.2,1)}.scroll-to-top{transition:all .4s cubic-bezier(.4,0,.2,1)}@keyframes bounceIn{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.scroll-to-top.visible{display:flex;animation:bounceIn .4s ease}@media(max-width:768px){body{padding:15px}h1{font-size:1.8rem;letter-spacing:.1em}.subtitle{font-size:.85rem;letter-spacing:.1em}header{position:relative;padding:15px;margin-bottom:20px;border-radius:0 0 15px 15px}.theme-toggle-container{position:static;justify-content:center;margin-top:15px}.stats{gap:12px;margin-bottom:25px}.stat-card{padding:18px 25px;flex:1;min-width:100px}.stat-number{font-size:1.6rem}.stat-label{font-size:.7rem}.age-stats{padding:15px;margin-bottom:20px}.age-breakdown{gap:10px;margin-bottom:20px}.age-group{padding:18px 25px;min-width:90px;flex:1}.age-group-title{font-size:.7rem}.age-group-value{font-size:1.4rem}.age-detail{grid-template-columns:repeat(2,1fr);gap:8px}.age-item{padding:10px 12px}.filter-group{gap:8px;margin-bottom:15px}.filter-btn{padding:12px 18px;font-size:.8rem;min-height:44px}.controls-row{flex-direction:column;gap:12px}.controls{flex-direction:column;width:100%}.search-container{max-width:100%;width:100%}.search-box,.sort-box,.filter-box{max-width:100%;min-height:48px;font-size:16px}.sort-container{width:100%;flex-direction:column;align-items:stretch}.current-sort{justify-content:center}.sort-box{width:100%}.grid-toggle{width:100%;justify-content:center}.grid-toggle-btn{flex:1;padding:12px 10px;min-height:44px}.active-filters{padding:12px 15px;flex-direction:column;align-items:flex-start;gap:10px}.active-filters-tags{width:100%}.filter-tag{padding:10px 14px;font-size:.75rem}.range-filters{flex-direction:column;gap:12px}.range-filter{max-width:100%;min-width:auto;padding:18px 20px}.grid{grid-template-columns:1fr;gap:15px;margin-bottom:30px}.card{padding:25px 20px;-webkit-tap-highlight-color:transparent}.card-initial{width:55px;height:55px;top:12px;right:12px}.card-initial span{font-size:1.4rem}.card-thumbnail{width:80px;height:80px;top:12px;right:12px;border-radius:10px}.card-number{right:100px;font-size:1.4rem}.card-name{font-size:1.2rem;padding-right:50px;padding-left:40px}.favorite-btn{width:42px;height:42px;top:15px;left:15px}.compare-btn-card{width:40px;height:40px;bottom:15px;right:60px}.note-indicator{width:40px;height:40px;bottom:15px;right:15px}.card-measurements{padding:14px 16px;margin:14px 0}.modal-content{margin:5% 10px;padding:25px 18px;max-height:92vh}.modal-header{flex-direction:column;align-items:center;text-align:center;gap:15px}.modal-initial{width:80px;height:80px}.modal-initial span{font-size:2rem}.modal-thumbnail{width:120px;height:120px;border-radius:12px}.modal-header-info h2{font-size:1.4rem}.specs-grid{grid-template-columns:repeat(2,1fr);gap:8px}.spec-item{padding:10px 12px;flex-direction:column;align-items:flex-start;gap:5px}.spec-value{margin-left:0}.compare-bar{padding:12px 15px}.compare-bar-content{flex-direction:column;gap:12px}.compare-bar-items{width:100%;justify-content:center}.compare-bar-item{padding:8px 12px;font-size:.8rem}.compare-bar-actions{width:100%;justify-content:center}.compare-btn,.compare-clear-btn{flex:1;padding:14px 20px;min-height:48px}.compare-modal .compare-modal-content{padding:20px 12px;margin:0;border-radius:15px 15px 0 0;max-height:95vh}.compare-cards-header{grid-template-columns:1fr;gap:10px}.compare-initial{width:40px;height:40px}.compare-initial span{font-size:1rem}.compare-spec-row{flex-direction:column;gap:10px;padding:12px 0}.compare-spec-label{width:100%;justify-content:center}.compare-spec-values{grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:8px}.scroll-to-top{bottom:20px;right:20px;width:48px;height:48px}.search-hint-popup{right:-10px;min-width:250px}footer{padding:40px 15px;font-size:.8rem}}@media(max-width:375px){h1{font-size:1.5rem}.stat-card{padding:15px 20px}.age-group{padding:15px 18px}.age-group-value{font-size:1.2rem}.card-name{font-size:1.1rem}.specs-grid{grid-template-columns:1fr}}@media(min-width:769px)and (max-width:1024px){.grid,.grid.grid-3{grid-template-columns:repeat(2,1fr)}.compare-spec-values{grid-template-columns:repeat(3,1fr)}}@media(hover:none)and (pointer:coarse){.card:hover{transform:none;box-shadow:0 4px 25px var(--shadow-color)}.card:active{transform:scale(.98);transition:transform .1s ease}.filter-btn:hover{border-color:var(--border-subtle);color:var(--text-secondary)}.filter-btn:active{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.age-group:hover{box-shadow:none}.age-group:active{transform:scale(.98)}.filter-btn,.favorite-btn,.compare-btn-card,.note-indicator,.grid-toggle-btn,.compare-btn,.compare-clear-btn{min-height:44px;min-width:44px}.search-hint-popup{display:none}.search-hint:active .search-hint-popup{display:block;opacity:1;visibility:visible;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.card{animation:none;opacity:1;transform:none}}.legal-page{min-height:100vh;background:linear-gradient(160deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);padding:30px}.legal-container{max-width:800px;margin:0 auto;background:var(--card-bg);border-radius:20px;padding:50px;box-shadow:0 10px 40px #0003}.legal-page .back-btn{background:transparent;border:1px solid var(--border-subtle);color:var(--text-secondary);padding:10px 20px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .3s ease;margin-bottom:30px}.legal-page .back-btn:hover{background:var(--accent-color);border-color:var(--accent-color);color:#fff}.legal-page h1{font-family:"Noto Serif JP",Georgia,serif;font-size:2rem;color:var(--text-primary);margin-bottom:10px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.1em}.legal-updated{color:var(--text-secondary);font-size:.85rem;margin-bottom:40px}.legal-section{margin-bottom:35px}.legal-section h2{color:var(--text-primary);font-size:1.2rem;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--border-subtle)}.legal-section h3{color:var(--text-primary);font-size:1rem;margin:20px 0 10px}.legal-section p{color:var(--text-secondary);line-height:1.8;margin-bottom:15px;font-size:.95rem}.legal-section ul{color:var(--text-secondary);line-height:1.8;margin:15px 0;padding-left:25px}.legal-section li{margin-bottom:8px;font-size:.95rem}.footer-nav{display:flex;justify-content:center;align-items:center;gap:5px}.footer-nav a{color:var(--accent-secondary);text-decoration:none;transition:color .3s ease}.footer-nav a:hover{color:var(--accent-color)}.footer-divider{color:#fff6}.inline-link-btn{background:none;border:none;color:var(--accent-color);text-decoration:underline;cursor:pointer;font-size:inherit;font-family:inherit;padding:0;transition:color .3s ease}.inline-link-btn:hover{color:var(--sexy-red)}.contact-form-section{margin:30px 0}.contact-form-section iframe{border-radius:8px;border:1px solid var(--border-subtle)}.contact-placeholder{margin:40px 0}.contact-placeholder-box{background:var(--card-bg-alt);border:2px dashed var(--border-subtle);border-radius:12px;padding:60px 20px;text-align:center}.contact-placeholder-icon{font-size:3rem;margin-bottom:15px}.contact-placeholder-text{font-size:1.2rem;color:var(--text-primary);font-weight:500;margin-bottom:10px}.contact-placeholder-note{font-size:.9rem;color:var(--text-secondary)}@media(max-width:768px){.legal-page{padding:15px}.legal-container{padding:25px 20px;border-radius:15px}.legal-page h1{font-size:1.5rem}.legal-section h2{font-size:1.1rem}.legal-section p,.legal-section li{font-size:.9rem;line-height:1.7}.contact-placeholder-box{padding:40px 15px}.contact-placeholder-icon{font-size:2.5rem}}.cookie-consent{position:fixed;bottom:0;left:0;right:0;z-index:9999;padding:20px;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);border-top:1px solid var(--border-subtle);box-shadow:0 -4px 20px #0000004d;animation:slideUp .4s ease}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-consent-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.cookie-consent-text{color:#ffffffe6;font-size:.9rem;line-height:1.6;margin:0}.cookie-consent-link{color:var(--accent-color);text-decoration:underline}.cookie-consent-link:hover{color:var(--accent-secondary)}.cookie-consent-btn{flex-shrink:0;padding:12px 30px;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%);border:none;border-radius:4px;color:#fff;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .3s ease}.cookie-consent-btn:hover{transform:translateY(-2px);box-shadow:0 4px 15px var(--glow-color)}@media(max-width:768px){.cookie-consent{padding:15px}.cookie-consent-content{flex-direction:column;text-align:center;gap:15px}.cookie-consent-text{font-size:.85rem}.cookie-consent-btn{width:100%;padding:14px 20px}}.popularity-ranking{background:var(--card-bg);border-radius:15px;padding:25px;margin-bottom:30px;border:1px solid var(--border-subtle)}.ranking-title{display:flex;align-items:center;justify-content:center;gap:10px;font-size:1.4rem;margin:0 0 10px;background:linear-gradient(135deg,var(--accent-color),var(--sexy-red));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.ranking-icon{font-size:1.5rem;-webkit-text-fill-color:initial}.ranking-subtitle{text-align:center;color:var(--text-secondary);margin:0 0 20px;font-size:.9rem}.ranking-list{display:flex;flex-direction:column;gap:10px}.ranking-item{display:flex;align-items:center;gap:15px;padding:12px 15px;background:var(--bg-gradient-start);border-radius:10px;text-decoration:none;color:inherit;transition:all .3s ease;border:1px solid transparent}.ranking-item:hover{transform:translate(5px);border-color:var(--accent-color);box-shadow:0 5px 20px #0003}.ranking-item.rank-1{background:linear-gradient(135deg,#ffd70026,#ffd7000d);border-color:#ffd7004d}.ranking-item.rank-2{background:linear-gradient(135deg,#c0c0c026,#c0c0c00d);border-color:#c0c0c04d}.ranking-item.rank-3{background:linear-gradient(135deg,#cd7f3226,#cd7f320d);border-color:#cd7f324d}.ranking-rank{min-width:35px;display:flex;justify-content:center}.rank-medal{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;font-size:.9rem;font-weight:700;color:#fff}.rank-medal.gold{background:linear-gradient(135deg,gold,orange);box-shadow:0 2px 10px #ffd70066}.rank-medal.silver{background:linear-gradient(135deg,silver,#a0a0a0);box-shadow:0 2px 10px #c0c0c066}.rank-medal.bronze{background:linear-gradient(135deg,#cd7f32,#8b4513);box-shadow:0 2px 10px #cd7f3266}.rank-number{font-size:1.1rem;font-weight:700;color:var(--text-secondary)}.ranking-image{width:50px;height:50px;border-radius:8px;overflow:hidden;flex-shrink:0}.ranking-image img{width:100%;height:100%;object-fit:cover}.ranking-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.ranking-placeholder span{font-size:1.5rem;color:#ffffffe6;font-weight:700}.ranking-info{flex:1;min-width:0}.ranking-name{font-size:1rem;margin:0 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ranking-meta{font-size:.8rem;color:var(--text-secondary);margin:0}.ranking-products{display:flex;flex-direction:column;align-items:center;min-width:50px}.product-count{font-size:1.2rem;font-weight:700;color:var(--accent-color)}.product-label{font-size:.7rem;color:var(--text-secondary)}@media(max-width:768px){.popularity-ranking{padding:20px 15px;margin-bottom:20px}.ranking-title{font-size:1.2rem}.ranking-item{padding:10px 12px;gap:12px}.ranking-image{width:45px;height:45px}.ranking-name{font-size:.9rem}.product-count{font-size:1rem}}.cup-size-page{min-height:100vh;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%)}.cup-header{padding:40px 0 30px;text-align:center}.cup-header h1{font-size:2rem;margin:20px 0 10px;background:linear-gradient(135deg,var(--accent-color),var(--sexy-red));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.cup-description{color:var(--text-secondary);margin:0 0 10px}.cup-count{font-size:1.2rem;color:var(--accent-color);font-weight:700}.cup-nav{background:var(--card-bg);padding:15px 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);overflow-x:auto}.cup-nav-items{display:flex;justify-content:center;gap:8px;flex-wrap:nowrap;min-width:max-content}.cup-nav-item{display:flex;flex-direction:column;align-items:center;padding:10px 15px;background:var(--bg-gradient-start);border-radius:8px;text-decoration:none;color:var(--text-primary);font-weight:700;font-size:1rem;transition:all .3s ease;min-width:50px}.cup-nav-item:hover{background:linear-gradient(135deg,var(--accent-color),var(--sexy-red));transform:translateY(-2px)}.cup-nav-item.active{background:linear-gradient(135deg,var(--accent-color),var(--sexy-red));box-shadow:0 4px 15px var(--glow-color)}.cup-nav-item.disabled{opacity:.3;pointer-events:none}.cup-nav-count{font-size:.7rem;font-weight:400;opacity:.7;margin-top:2px}.cup-controls{padding:20px 0}.cup-sort-select{padding:10px 20px;font-size:.9rem;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);cursor:pointer}.cup-sort-select:focus{outline:none;border-color:var(--accent-color)}.cup-idols-section{padding:30px 0}.cup-idols-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px}.cup-idol-card{background:var(--card-bg);border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:all .3s ease;border:1px solid var(--border-subtle)}.cup-idol-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000004d;border-color:var(--accent-color)}.cup-idol-image{position:relative;width:100%;aspect-ratio:3 / 4;overflow:hidden}.cup-idol-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.cup-idol-card:hover .cup-idol-image img{transform:scale(1.05)}.cup-idol-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.cup-idol-placeholder span{font-size:4rem;color:#fffc;font-weight:700}.cup-idol-info{padding:15px}.cup-idol-info h3{font-size:1.1rem;margin:0 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cup-idol-meta{font-size:.85rem;color:var(--text-secondary);margin:0 0 5px}.cup-idol-cup{font-size:.9rem;color:var(--accent-color);font-weight:700;margin:0}.cup-no-results{text-align:center;padding:60px 20px;color:var(--text-secondary)}.cup-other-sizes{padding:50px 0;background:var(--card-bg)}.cup-other-sizes h2{text-align:center;margin-bottom:30px}.cup-size-links{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.cup-size-link{display:flex;flex-direction:column;align-items:center;padding:20px 30px;background:var(--bg-gradient-start);border-radius:12px;text-decoration:none;color:var(--text-primary);transition:all .3s ease;min-width:120px}.cup-size-link:hover{transform:translateY(-5px);box-shadow:0 10px 30px #c9a9624d;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%)}.cup-link-icon{font-size:2rem;margin-bottom:10px}.cup-link-label{font-weight:700}.cup-footer{padding:40px 0;text-align:center}@media(max-width:768px){.cup-header{padding:30px 0 20px}.cup-header h1{font-size:1.5rem}.cup-nav{padding:10px 0}.cup-nav-items{justify-content:flex-start;padding:0 15px}.cup-nav-item{padding:8px 12px;font-size:.9rem;min-width:45px}.cup-idols-grid{grid-template-columns:repeat(2,1fr);gap:15px}.cup-idol-info{padding:12px}.cup-idol-info h3{font-size:.95rem}.cup-size-links{flex-direction:column;align-items:center}.cup-size-link{width:100%;max-width:280px}}.compare-page{min-height:100vh;background:var(--bg-gradient)}.compare-page-header{padding:30px 0;text-align:center;border-bottom:1px solid var(--border-subtle)}.compare-page-header h1{font-size:1.8rem;margin:15px 0 5px}.compare-page-subtitle{color:var(--text-secondary);margin-bottom:20px}.compare-share-section{margin-top:15px}.compare-share-btn{padding:10px 20px;background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:25px;color:var(--text-primary);cursor:pointer;font-size:.9rem;transition:all .3s ease}.compare-share-btn:hover{border-color:var(--accent-color);color:var(--accent-color)}.compare-page-content{padding:30px 0}.compare-page-cards{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-bottom:40px}.compare-page-card{background:var(--card-bg);border:1px solid var(--border-subtle);border-radius:12px;padding:20px;text-align:center;min-width:180px;max-width:220px;transition:all .3s ease}.compare-page-card.primary{border-color:var(--accent-color);box-shadow:0 0 20px var(--glow-color)}.compare-page-card-image{width:100px;height:100px;margin:0 auto 15px;border-radius:50%;overflow:hidden}.compare-page-card-image img{width:100%;height:100%;object-fit:cover}.compare-page-initial{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:#fff;font-weight:700}.compare-page-card-name{font-size:1.1rem;font-weight:600;color:var(--text-primary);text-decoration:none;display:block;margin-bottom:5px}.compare-page-card-name:hover{color:var(--accent-color)}.compare-page-card-desc{font-size:.8rem;color:var(--text-secondary);margin-bottom:5px}.compare-page-card-age{font-size:.9rem;color:var(--accent-color);font-weight:500}.compare-section{background:var(--card-bg);border-radius:12px;padding:25px;margin-bottom:25px;border:1px solid var(--border-subtle)}.compare-section h2{font-size:1.2rem;margin-bottom:20px;text-align:center}.radar-chart-container{display:flex;flex-direction:column;align-items:center;gap:20px}.radar-legend{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.radar-legend-item{display:flex;align-items:center;gap:8px}.radar-legend-color{width:16px;height:16px;border-radius:4px}.radar-legend-name{font-size:.9rem;color:var(--text-primary)}.compare-specs-table{display:flex;flex-direction:column;gap:12px}.compare-totals-grid{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.compare-total-item{background:var(--card-bg-alt);border-radius:10px;padding:20px;text-align:center;min-width:150px;border:1px solid var(--border-subtle)}.compare-total-item.primary{border-color:var(--accent-color)}.compare-total-item .total-name{font-weight:600;margin-bottom:8px}.compare-total-item .total-bwh{font-size:.9rem;color:var(--text-secondary);margin-bottom:5px}.compare-total-item .total-sum{font-size:1.1rem;color:var(--accent-color);font-weight:600}.compare-products-note{text-align:center;font-size:.8rem;color:var(--text-secondary);margin-bottom:20px}.compare-products-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px}.compare-products-column h3{font-size:1rem;margin-bottom:15px;text-align:center;color:var(--text-primary)}.compare-products-list{display:flex;flex-direction:column;gap:10px}.compare-product-card{display:flex;gap:12px;padding:12px;background:var(--card-bg-alt);border-radius:8px;text-decoration:none;transition:all .3s ease;border:1px solid transparent}.compare-product-card:hover{border-color:var(--accent-color);transform:translate(5px)}.compare-product-image{width:60px;height:60px;object-fit:cover;border-radius:6px;flex-shrink:0}.compare-product-info{display:flex;flex-direction:column;justify-content:center;gap:5px;overflow:hidden}.compare-product-title{font-size:.8rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compare-product-price{font-size:.9rem;color:var(--accent-color);font-weight:600}.no-products{text-align:center;color:var(--text-secondary);font-size:.9rem;padding:20px}.compare-more-products-link{display:block;text-align:center;margin-top:15px;color:var(--accent-color);text-decoration:none;font-size:.9rem}.compare-more-products-link:hover{text-decoration:underline}@media(max-width:600px){.compare-page-header h1{font-size:1.4rem}.compare-page-cards{flex-direction:column;align-items:center}.compare-page-card{width:100%;max-width:280px}.compare-section{padding:20px 15px}.radar-chart-container svg{max-width:100%;height:auto}.compare-totals-grid{flex-direction:column;align-items:center}.compare-total-item{width:100%;max-width:280px}.compare-products-grid{grid-template-columns:1fr}}.new-releases-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;padding:1rem 0}.new-release-card{background:var(--card-bg);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px var(--shadow-color);transition:transform .2s,box-shadow .2s}.new-release-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--shadow-hover)}.new-release-link{display:flex;gap:1rem;padding:1rem;text-decoration:none;color:inherit}.new-release-image{flex-shrink:0;width:100px;height:100px;border-radius:8px;overflow:hidden;background:var(--card-bg-alt)}.new-release-image img{width:100%;height:100%;object-fit:cover}.new-release-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2rem;background:linear-gradient(135deg,var(--accent-color) 0%,var(--sexy-red) 100%)}.new-release-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.new-release-type{font-size:.75rem;color:var(--accent-color);font-weight:500}.new-release-title{font-size:.9rem;font-weight:500;color:var(--text-primary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.new-release-idol{font-size:.8rem;color:var(--sexy-red);text-decoration:none;font-weight:500}.new-release-idol:hover{text-decoration:underline}.new-release-price{font-size:1rem;font-weight:600;color:var(--sexy-red);margin-top:auto}.load-more-container{display:flex;justify-content:center;padding:2rem 0}@media(max-width:480px){.new-releases-grid{grid-template-columns:1fr}.new-release-image{width:80px;height:80px}.new-release-title{font-size:.85rem}}.products-banner{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--sexy-red) 0%,#a83250 100%);border-radius:12px;text-decoration:none;color:#fff;transition:transform .2s,box-shadow .2s}.products-banner:hover{transform:translateY(-2px);box-shadow:0 4px 16px var(--sexy-glow)}.products-banner-icon{font-size:1.5rem}.products-banner-text{flex:1;font-weight:600;font-size:.95rem}.products-banner-arrow{font-size:1.2rem;opacity:.8}.birthday-day-nav{background:var(--card-bg);padding:1rem 0;border-bottom:1px solid var(--border-subtle)}.birthday-nav-buttons{display:flex;justify-content:center;gap:1rem}.birthday-nav-btn{padding:.5rem 1rem;background:var(--card-bg-alt);border:1px solid var(--border-subtle);border-radius:8px;color:var(--text-primary);text-decoration:none;font-size:.9rem;transition:all .2s}.birthday-nav-btn:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.birthday-nav-btn.calendar{background:var(--sexy-red);color:#fff;border-color:var(--sexy-red)}.birthday-nav-btn.calendar:hover{background:var(--sexy-red-light)}.today-birthday{background:linear-gradient(135deg,var(--sexy-red) 0%,#a83250 100%);padding:1.5rem 0;margin-bottom:1rem}.today-birthday h2{color:#fff;font-size:1.1rem;margin-bottom:.75rem}.today-birthday-names{display:flex;flex-wrap:wrap;gap:.5rem}.today-birthday-name{background:#fff3;padding:.4rem .8rem;border-radius:20px;color:#fff;text-decoration:none;font-weight:500;font-size:.9rem;transition:background .2s}.today-birthday-name:hover{background:#ffffff4d}.calendar-section{padding:1.5rem 0}.calendar-section h2{color:var(--text-primary);margin-bottom:1rem;font-size:1.2rem}.calendar-header{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px}.calendar-header-cell{text-align:center;padding:.5rem;font-weight:600;font-size:.8rem;color:var(--text-secondary)}.calendar-header-cell:first-child{color:#e74c3c}.calendar-header-cell:last-child{color:#3498db}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-day{aspect-ratio:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--card-bg);border-radius:8px;text-decoration:none;color:var(--text-primary);transition:all .2s;border:2px solid transparent}.calendar-day:hover{transform:scale(1.05);box-shadow:0 4px 12px var(--shadow-hover)}.calendar-day.has-idols{background:linear-gradient(135deg,#c9a9621a,#8b29421a);border-color:var(--accent-color)}.calendar-day.is-today{border-color:var(--sexy-red);box-shadow:0 0 12px var(--sexy-glow)}.calendar-day-num{font-weight:600;font-size:1rem}.calendar-day-count{font-size:.65rem;color:var(--sexy-red);font-weight:600}.month-list-link{margin-top:1.5rem;text-align:center}@media(max-width:480px){.calendar-day-num{font-size:.85rem}.calendar-day-count{font-size:.6rem}}.birthday-banner{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#e91e63,#9c27b0);border-radius:12px;text-decoration:none;color:#fff;transition:transform .2s,box-shadow .2s}.birthday-banner:hover{transform:translateY(-2px);box-shadow:0 4px 16px #e91e6366}.birthday-banner-icon{font-size:1.5rem}.birthday-banner-text{flex:1;font-weight:600;font-size:.95rem}.birthday-banner-arrow{font-size:1.2rem;opacity:.8}.blog-banner{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#ff6b9d,#c9284d);border-radius:12px;text-decoration:none;color:#fff;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.blog-banner:before{content:"NEW";position:absolute;top:8px;right:-20px;background:gold;color:#1a1a2e;font-size:.6rem;font-weight:700;padding:2px 24px;transform:rotate(45deg)}.blog-banner:hover{transform:translateY(-2px);box-shadow:0 4px 16px #c9284d66}.blog-banner-icon{font-size:1.5rem}.blog-banner-text{flex:1;font-weight:600;font-size:.95rem}.blog-banner-arrow{font-size:1.2rem;opacity:.8}.blog-section-compact{margin:1rem 0;padding:.75rem 1rem;background:var(--card-bg);border-radius:12px;box-shadow:0 2px 12px var(--shadow-color)}.blog-section-compact-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle)}.blog-section-compact-title{font-size:.9rem;color:var(--text-primary);font-weight:600}.blog-section-compact-more{color:var(--accent-rose);text-decoration:none;font-size:.75rem;font-weight:500;transition:color .2s}.blog-section-compact-more:hover{color:var(--sexy-red)}.blog-section-compact-list{display:flex;flex-direction:column;gap:.25rem}.blog-section-compact-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:8px;text-decoration:none;transition:background .2s}.blog-section-compact-item:hover{background:var(--card-bg-alt)}.blog-section-compact-icon{font-size:1rem;flex-shrink:0}.blog-section-compact-text{flex:1;font-size:.8rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .2s}.blog-section-compact-item:hover .blog-section-compact-text{color:var(--accent-color)}.blog-section-compact-date{font-size:.7rem;color:var(--text-secondary);flex-shrink:0}.calendar-day{min-height:80px;aspect-ratio:auto;padding:.25rem;display:flex;flex-direction:column;align-items:stretch}.calendar-day-idols{display:flex;flex-direction:column;gap:2px;margin-top:2px;overflow:hidden}.calendar-idol-chip{display:flex;align-items:center;gap:4px;padding:2px 4px;background:#8b29421a;border-radius:4px;text-decoration:none;transition:background .2s}.calendar-idol-chip:hover{background:#8b294233}.calendar-idol-thumb{width:20px;height:20px;border-radius:50%;object-fit:cover;flex-shrink:0}.calendar-idol-initial{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.6rem;color:#fff;font-weight:600;flex-shrink:0}.calendar-idol-name{font-size:.8rem;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3;font-weight:600}@media(max-width:768px){.calendar-day{min-height:60px}.calendar-idol-name{display:none}.calendar-idol-chip{padding:2px;justify-content:center}.calendar-day-idols{flex-direction:row;flex-wrap:wrap;justify-content:center}}.birthday-calendar-page .cup-header{padding:20px 0 15px;position:static;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border-radius:0;border-bottom:none;animation:none}.birthday-calendar-page .cup-header h1{font-size:1.5rem;margin:10px 0 5px}.birthday-calendar-page .cup-description{margin:0;font-size:.9rem}.birthday-calendar-page .cup-nav{position:static}.birthday-calendar-page .calendar-header{position:static;background:transparent}.birthday-calendar-page .calendar-section{position:static}.breadcrumbs{padding:10px 0;margin-bottom:10px}.breadcrumbs-list{display:flex;flex-wrap:wrap;align-items:center;gap:0;list-style:none;margin:0;padding:0;font-size:.85rem}.breadcrumbs-item{display:flex;align-items:center}.breadcrumbs-link{color:var(--accent-color);text-decoration:none;transition:color .2s}.breadcrumbs-link:hover{color:var(--sexy-pink);text-decoration:underline}.breadcrumbs-separator{margin:0 8px;color:var(--text-muted)}.breadcrumbs-current{color:var(--text-muted)}.footer-nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:30px;margin-bottom:30px;text-align:left}.footer-nav-section h4{color:var(--text-primary);font-size:.9rem;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-subtle)}.footer-nav-section ul{list-style:none;margin:0;padding:0}.footer-nav-section li{margin-bottom:8px}.footer-nav-section a{color:var(--text-secondary);text-decoration:none;font-size:.85rem;transition:color .2s}.footer-nav-section a:hover{color:var(--accent-color)}.category-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.category-link{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;background:#ffffff1a;border:1px solid var(--border-subtle);border-radius:20px;color:var(--text-secondary);text-decoration:none;font-size:.8rem;transition:all .2s}.category-link:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.category-link-icon{font-size:1rem}.category-nav{margin:20px 0;padding:15px;background:#ffffff0d;border-radius:12px}.category-nav-title{font-size:.85rem;color:var(--text-muted);margin-bottom:10px}.category-nav-links{display:flex;flex-wrap:wrap;gap:8px}.category-nav-link{padding:6px 14px;background:#ffffff14;border:1px solid var(--border-subtle);border-radius:20px;color:var(--text-secondary);text-decoration:none;font-size:.85rem;transition:all .2s}.category-nav-link:hover,.category-nav-link.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}
