:root{--color-primary:#ffbd59;--color-primary-dark:#e5a63d;--color-primary-light:#fff0d4;--color-accent:#09c;--color-accent-dark:#007aa3;--color-bg-page:#f8f9fa;--color-bg-card:#fff;--color-bg-section:#f0f1f3;--color-text-primary:#1a1a1a;--color-text-secondary:#555;--color-text-muted:#888;--color-border:#ddd;--color-border-light:#ebebeb;--color-shadow:#00000014;--color-shadow-hover:#00000024;--radius-sm:6px;--radius-md:10px;--radius-lg:14px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--color-bg-page);min-height:100vh;color:var(--color-text-primary);padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px}.container{max-width:1400px;margin:0 auto;padding:0 20px 20px}header{background:var(--color-primary);margin-bottom:16px;padding:18px 24px;box-shadow:0 2px 12px #0000001a}header h1{color:#333;margin-bottom:5px;font-size:22px;font-weight:700}header p{color:#0009;font-size:13px}.search-box{background:var(--color-bg-card);border-radius:var(--radius-md);box-shadow:0 1px 3px var(--color-shadow);border:1px solid var(--color-border);margin-bottom:16px;padding:16px}.search-row{flex-wrap:wrap;align-items:center;gap:10px;max-width:100%;margin-bottom:12px;display:flex}.search-row>input[type=text]{flex:2;min-width:160px}.search-row>select{flex:1;min-width:130px}.search-row>.date-range{flex:1.5;min-width:260px}.search-row-primary{gap:10px;margin-bottom:12px;display:flex}.search-row-primary #searchName{flex:1;min-width:0}.advanced-filters-toggle{background:var(--color-bg-section);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.advanced-filters-toggle:hover,.advanced-filters-toggle.is-open{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-text-primary)}.advanced-filters-badge{background:var(--color-accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;display:inline-flex}.advanced-filters-caret{font-size:10px;transition:transform .2s}.advanced-filters-toggle.is-open .advanced-filters-caret{transform:rotate(180deg)}.advanced-filters{display:block}@media (width<=768px){.search-row-primary{flex-wrap:wrap}.search-row-primary #searchName,.advanced-filters-toggle{flex:100%}.advanced-filters{display:none}}.date-field{align-items:center;gap:4px;min-width:0;display:inline-flex}.date-range-label{color:var(--color-text-secondary);white-space:nowrap;font-size:11px}.add-conditions-btn{background:var(--color-bg-section);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--color-text-secondary);margin-bottom:12px;padding:8px;font-size:13px;font-weight:600;transition:all .2s}.add-conditions-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.search-conditions{background:var(--color-bg-section);border-radius:var(--radius-sm);border:1px solid var(--color-border);margin-bottom:12px;padding:12px}.conditions-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:center;gap:12px;display:grid}.condition-checkbox{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;user-select:none;align-items:center;gap:8px;padding:8px 12px;font-size:14px;transition:all .15s;display:flex}.condition-checkbox:hover,.condition-checkbox:has(input:checked){background:var(--color-primary-light);border-color:var(--color-primary)}.condition-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--color-primary-dark)}.ribbon-input-wrapper{grid-column:1/-1}.ribbon-input{background:#fff;border:1px solid #ddd;border-radius:6px;flex:1;padding:8px 12px;font-size:14px}.ribbon-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #ffbd5933}.ribbon-filter-area{flex-direction:column;grid-column:1/-1;gap:6px;display:flex}.ribbon-input-row{align-items:center;gap:6px;display:flex}.add-ribbon-btn{background:var(--color-accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:8px 14px;font-size:13px}.add-ribbon-btn:hover{opacity:.85}.ribbon-mode-row{align-items:center;gap:16px;display:flex}.ribbon-mode-label{cursor:pointer;align-items:center;gap:4px;font-size:13px;display:flex}.selected-ribbon-tags{flex-wrap:wrap;gap:6px;display:flex}.ribbon-tag{color:#2e7d32;background:#e8f5e9;border:1px solid #66bb6a;border-radius:12px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;display:inline-flex}.ribbon-tag button{cursor:pointer;color:#666;background:0 0;border:none;padding:0;font-size:13px;line-height:1}.ribbon-tag button:hover{color:#333}.ribbon-buttons-area{flex-direction:column;grid-column:1/-1;gap:8px;display:flex}.ribbon-button-group{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ribbon-group-label{color:var(--color-text-muted);white-space:nowrap;flex-shrink:0;font-size:12px}.ribbon-buttons{flex-wrap:wrap;gap:6px;display:flex}.ribbon-toggle-btn{background:var(--color-bg-card);border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;user-select:none;border-radius:14px;padding:4px 10px;font-size:12px;transition:all .15s}.ribbon-toggle-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.ribbon-toggle-btn.is-active{color:#fff;background:#1976d2;border-color:#1976d2;font-weight:600}.preset-area{flex-wrap:wrap;align-items:center;gap:10px;max-width:1200px;margin:0 auto 12px;padding:0 20px;display:flex}.save-preset-btn{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);white-space:nowrap;flex-shrink:0;padding:6px 10px;font-size:14px;transition:all .2s}.save-preset-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary);color:#333}.preset-buttons{flex-wrap:wrap;gap:6px;display:flex}.preset-btn-wrap{align-items:center;display:inline-flex}.preset-btn{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#fff3e0;border:1px solid #ffb74d;border-radius:4px 0 0 4px;max-width:120px;padding:4px 10px;font-size:13px;overflow:hidden}.preset-btn:hover{background:#ffe0b2}.preset-delete-btn{cursor:pointer;background:#ffccbc;border:1px solid #ff8a65;border-radius:0 4px 4px 0;padding:4px 6px;font-size:13px;line-height:1}.preset-delete-btn:hover{background:#ffab91}.reverse-search-section{border-top:2px solid #e0e0e0;margin-top:15px;padding-top:15px}.reverse-search-title{color:var(--color-accent);margin-bottom:10px;font-size:13px;font-weight:600}.reverse-search-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.search-buttons{gap:10px;display:flex}.search-button{background:var(--color-bg-card);color:var(--color-accent);border:2px solid var(--color-accent);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s}.search-button:hover{background:var(--color-accent);color:#fff}.clear-button{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-secondary);white-space:nowrap;padding:10px 20px;font-size:15px;font-weight:600;transition:all .2s}.clear-button:hover{background:var(--color-bg-section);color:#333;border-color:#b0b0b0}input,select{border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:8px 10px;font-size:16px;transition:border-color .2s}input:focus,select:focus{border-color:var(--color-primary);outline:none}button{background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:none;padding:8px 20px;font-size:13px;font-weight:600;transition:all .2s}button:hover{background:var(--color-accent-dark)}.filter-label{cursor:pointer;display:inline-block;position:relative}.filter-checkbox{opacity:0;width:0;height:0;position:absolute}.filter-icon-box{background:var(--color-bg-section);border:3px solid var(--color-border);border-radius:12px;justify-content:center;align-items:center;width:56px;height:56px;transition:all .2s;display:flex}.filter-icon{user-select:none;font-size:28px;line-height:1}@media (hover:hover){.filter-label:hover .filter-icon-box{background:var(--color-primary-light);border-color:var(--color-primary);transform:translateY(-2px)}}.filter-checkbox:checked+.filter-icon-box{background:var(--color-primary-light);border-color:var(--color-primary-dark);border-width:3px;box-shadow:0 0 0 3px #ffbd5933}.filter-checkbox:checked+.filter-icon-box .filter-icon{transform:scale(1.1)}.stats{background:var(--color-bg-card);border-radius:var(--radius-sm);color:var(--color-text-secondary);border:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;padding:10px 15px;font-size:12px;display:flex}.stats-result-count{color:var(--color-text-secondary);white-space:nowrap;margin-left:auto;font-weight:600}.quick-filters{flex-wrap:wrap;gap:8px;display:flex}.quick-filter-btn{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;user-select:none;color:var(--color-text-primary);align-items:center;gap:4px;padding:6px 12px;transition:all .2s;display:flex}.quick-filter-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.quick-filter-btn.active{background:var(--color-primary);border-color:var(--color-primary-dark);color:#333;font-weight:600}.quick-icon{font-size:16px;line-height:1}.status-icon{object-fit:contain;vertical-align:-.2em;width:1.15em;height:1.15em;display:inline-block}.condition-checkbox .status-icon{width:1em;height:1em}.quick-text{font-size:12px;font-weight:600}.results{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;display:grid}.pokemon-card{background:var(--color-bg-card);border-radius:var(--radius-md);box-shadow:0 1px 3px var(--color-shadow), 0 4px 12px #0000000a;cursor:pointer;border:1px solid var(--color-border);padding:14px;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative}.pokemon-card:hover{box-shadow:0 4px 8px var(--color-shadow-hover), 0 12px 24px #00000014;border-color:var(--color-primary);transform:translateY(-4px)}.card-layout{align-items:flex-start;gap:12px;display:flex}.card-image-container{background:var(--color-bg-section);border-radius:var(--radius-sm);justify-content:center;align-items:center;width:80px;height:80px;display:flex;position:relative;overflow:visible}.card-image-container .pokemon-image{object-fit:contain;width:80px;height:80px}.pokemon-image{object-fit:contain;width:100%;height:100%;transition:transform .2s}.pokemon-card:hover .pokemon-image{transform:scale(1.1)}.card-content{flex:1;min-width:0}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;animation:.3s slideUp;position:relative;overflow-y:auto;box-shadow:0 10px 40px #0000004d}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-close{cursor:pointer;z-index:1;background:0 0;border:none;width:36px;height:36px;padding:0;transition:transform .2s;position:absolute;top:15px;right:15px}.modal-close:hover{transform:scale(1.1)rotate(15deg)}.pokeball-close{background:linear-gradient(#ee1515 0% 50%,#fff 50% 100%);border:3px solid #222;border-radius:50%;width:36px;height:36px;display:block;position:relative;box-shadow:0 2px 8px #0000004d}.pokeball-close:before{content:"";background:#fff;border:3px solid #222;border-radius:50%;width:12px;height:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 1px 3px #0000004d}.pokeball-close:after{content:"";background:#222;height:3px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.modal-body{padding:30px}.modal-header{border-bottom:2px solid #f0f0f0;align-items:flex-start;gap:20px;margin-bottom:25px;padding-bottom:20px;display:flex}.modal-header-image{background:var(--color-bg-section);border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:120px;height:120px;display:flex;overflow:hidden}.modal-pokemon-image{object-fit:contain;width:100%;height:100%}.modal-header-content{flex:1;min-width:0}.modal-header h2{color:#222;align-items:center;gap:8px;margin-bottom:10px;font-size:24px;display:flex}.modal-shiny-indicator{cursor:help;font-size:20px;line-height:1}.modal-badges{margin-bottom:8px}.modal-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-bottom:20px;display:grid}.modal-section{background:var(--color-bg-section);border-radius:var(--radius-sm);padding:15px}.modal-section h3{color:var(--color-text-primary);border-bottom:2px solid var(--color-primary);margin-bottom:12px;padding-bottom:8px;font-size:14px;font-weight:700}.modal-notes-section{grid-column:1/-1}.modal-moves{flex-wrap:wrap;gap:6px;display:flex}.move-item{color:var(--color-text-primary);background:0 0;padding:0;font-size:12px;font-weight:400}.move-item:not(:last-child):after{content:" /";color:var(--color-text-muted)}.modal-ribbons{flex-wrap:wrap;gap:8px;display:flex}.modal-notes{color:#666;font-size:12px;line-height:1.6}.modal-article-banner{background:var(--color-accent);text-align:center;padding:10px 20px}.modal-post-url-link{color:#fff;font-size:14px;font-weight:600;text-decoration:none}.modal-post-url-link:hover{text-decoration:underline}.modal-header-actions{gap:6px;margin-top:8px;display:flex}.modal-header-actions .modal-favorite-btn,.modal-header-actions .modal-owned-btn{cursor:pointer;background:0 0;border:1.5px solid #e0e0e0;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:15px;transition:all .2s;display:flex}.modal-header-actions .modal-favorite-btn:hover,.modal-header-actions .modal-favorite-btn.active{background:#fff3e0;border-color:#ff9800}.modal-header-actions .modal-owned-btn:hover,.modal-header-actions .modal-owned-btn.active{background:#e8f5e9;border-color:#4caf50}@media (width<=768px){.modal-grid{grid-template-columns:1fr}.modal-body{padding:20px}.modal-header{flex-direction:row;align-items:flex-start;gap:12px}.modal-header-image{width:60px;height:60px}.modal-header-content{text-align:left;flex:1}.modal-header h2{justify-content:flex-start;font-size:16px}.modal-dex-number{margin-bottom:4px;font-size:12px}.modal-content{max-height:85vh}}.pokemon-header{border-bottom:2px solid #f5f5f5;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:10px;display:flex}.pokemon-name{color:#222;font-size:18px;font-weight:700}.dex-number{color:var(--color-accent);margin-left:8px;font-size:14px;font-weight:600;display:inline-block}.modal-dex-number{color:var(--color-accent);margin-bottom:8px;font-size:24px;font-weight:700}@media (width<=768px){.pc-only{display:none!important}.mobile-only{display:inline-block!important}}@media (width>=769px){.mobile-only{display:none!important}}.icon-badge{cursor:help;margin-left:5px;font-size:16px;line-height:1;display:inline-block}.text-badge{background:var(--color-primary-light);color:var(--color-primary-dark);border-radius:4px;margin-right:5px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-block}.tera-type-badge{cursor:help;border-radius:4px;align-items:center;gap:3px;margin-left:5px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex}.tera-icon{object-fit:contain;flex-shrink:0;width:1.35em;height:1.35em}.tera-ノーマル{color:#6d6d4e;background:#e8e8e0}.tera-ほのお{color:#c62828;background:#fde8e0}.tera-みず{color:#1565c0;background:#e0effd}.tera-でんき{color:#f57f17;background:#fff9c4}.tera-くさ{color:#2e7d32;background:#e8f5e9}.tera-こおり{color:#00838f;background:#e0f7fa}.tera-かくとう{color:#c62828;background:#fce4ec}.tera-どく{color:#7b1fa2;background:#f3e5f5}.tera-じめん{color:#795548;background:#efebe9}.tera-ひこう{color:#3949ab;background:#e8eaf6}.tera-エスパー{color:#ad1457;background:#fce4ec}.tera-むし{color:#558b2f;background:#f1f8e9}.tera-いわ{color:#6d4c41;background:#efebe9}.tera-ゴースト{color:#4527a0;background:#ede7f6}.tera-ドラゴン{color:#283593;background:#e8eaf6}.tera-あく{color:#3e2723;background:#efebe9}.tera-はがね{color:#546e7a;background:#eceff1}.tera-フェアリー{color:#c2185b;background:#fce4ec}.tera-ランダム{color:#555;background:linear-gradient(135deg,#fce4ec,#e8eaf6,#e8f5e9)}.info-row{margin-bottom:4px;font-size:12px;display:flex}.info-label{color:#555;min-width:90px;font-size:11px;font-weight:600}.info-value{color:#333;flex:1;font-size:12px}.compact-stats .info-label{min-width:0}.stats-inline{flex-wrap:wrap;gap:8px;font-size:11px;display:flex}.stats-inline>span{white-space:nowrap}.generation-badge{color:var(--color-text-primary);background:var(--color-bg-section);border-left:3px solid;border-radius:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.gen-9{border-color:#e53935}.gen-8{border-color:#00897b}.gen-7{border-color:#8e24aa}.gen-6{border-color:#1e88e5}.gen-0{border-color:#b8860b}.game-name-badge{color:var(--color-text-primary);background:var(--color-bg-section);border-left:3px solid var(--color-text-muted);border-radius:4px;margin-left:6px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.game-scarlet{border-color:#e84535}.game-sword{border-color:#00a2e8}.game-bd{border-color:#4169e1}.game-la{border-color:#c5a028}.game-za{border-color:#e91e63}.game-champions{border-color:#b8860b}.game-violet{border-left:none;border-right:3px solid #7b2fb5}.game-shield{border-left:none;border-right:3px solid #e4007c}.game-sp{border-left:none;border-right:3px solid #e891b9}.game-sv{border-color:#e84535 #7b2fb5 #e84535 #e84535;border-right-style:solid;border-right-width:3px}.game-swsh{border-color:#00a2e8 #e4007c #00a2e8 #00a2e8;border-right-style:solid;border-right-width:3px}.game-bdsp{border-color:#4169e1 #e891b9 #4169e1 #4169e1;border-right-style:solid;border-right-width:3px}.game-dp{border-color:#3f6ab0 #d88fb0 #3f6ab0 #3f6ab0;border-right-style:solid;border-right-width:3px}.game-dppt{border-color:#3f6ab0 #7a7a7a #3f6ab0 #3f6ab0;border-right-style:solid;border-right-width:3px}.game-hgss{border-color:#c9a227 #9e9e9e #c9a227 #c9a227;border-right-style:solid;border-right-width:3px}.game-dpthgss{border-color:#3f6ab0 #c9a227 #3f6ab0 #3f6ab0;border-right-style:solid;border-right-width:3px}.game-bw{border-color:#37474f}.game-bw2{border-color:#546e7a}.game-bwbw2{border-color:#263238 #546e7a #263238 #263238;border-right-style:solid;border-right-width:3px}.game-xy{border-color:#1976d2}.game-oras{border-color:#ad1457}.game-xyoras{border-color:#1976d2 #ad1457 #1976d2 #1976d2;border-right-style:solid;border-right-width:3px}.game-sm{border-color:#ef6c00}.game-usum{border-color:#7b1fa2}.game-smusum{border-color:#ef6c00 #7b1fa2 #ef6c00 #ef6c00;border-right-style:solid;border-right-width:3px}.game-pikabuy{color:#6d4c19;background:#fdd835;border-left:none}.moves{flex-wrap:wrap;gap:5px;margin-top:3px;display:flex}.move-tag{color:#2e7d32;background:#e8f5e9;border-radius:4px;padding:3px 8px;font-size:11px}.ribbon-tag{color:#e65100;background:#fff3e0;border-radius:4px;padding:3px 8px;font-size:11px}.ribbon-icon{background:var(--color-bg-card);color:var(--color-text-primary);border:none;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;display:inline-flex}.ribbon-icon img,.ball-icon-img{object-fit:contain;vertical-align:middle;width:20px;height:20px}.modal-password{color:#1565c0;letter-spacing:1px;background:#e3f2fd;border-radius:4px;padding:4px 10px;font-family:Courier New,Courier,monospace;font-size:15px;font-weight:700}.password-copy-btn{cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:6px;padding:2px 4px;font-size:14px}.password-copy-btn:hover{background:#f0f0f0}.ribbons{flex-wrap:wrap;gap:5px;margin-top:3px;display:flex}.item-tag{color:#c2185b;background:#fce4ec;border-radius:4px;padding:3px 8px;font-size:11px}.post-url-link{background:var(--color-accent);color:#fff;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:600;text-decoration:none;transition:background .2s;display:inline-block}.post-url-link:hover{background:var(--color-accent-dark)}.loading{text-align:center;color:var(--color-text-secondary);padding:40px;font-size:16px}.no-results{text-align:center;background:var(--color-bg-card);border-radius:var(--radius-md);color:var(--color-text-secondary);border:1px solid var(--color-border);padding:40px;font-size:15px}.scroll-to-top{background:var(--color-bg-card);width:48px;height:48px;color:var(--color-primary-dark);border:3px solid var(--color-primary);cursor:pointer;z-index:80;border-radius:50%;justify-content:center;align-items:center;font-size:24px;font-weight:700;line-height:1;transition:all .3s;display:none;position:fixed;bottom:80px;right:15px;box-shadow:0 4px 12px #0003}.scroll-to-top:hover{background:var(--color-primary);color:#333;transform:translateY(-3px);box-shadow:0 6px 16px #0000004d}.scroll-to-top.show{display:flex}.status-badge{border-radius:4px;margin-left:5px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-block}.status-active{color:#fff;background:#4caf50}.status-ended{color:#fff;background:#9e9e9e}.modal-bottom-close{background:var(--color-primary);color:#333;border-radius:var(--radius-sm);cursor:pointer;border:none;width:100%;margin-top:20px;padding:12px;font-size:14px;font-weight:600;display:none}.modal-bottom-close:hover{background:var(--color-primary-dark)}@media (width<=768px){body{font-size:14px}.pokemon-card .info-label,.pokemon-card .info-value{font-size:13px}.modal-section .info-label,.modal-section .info-value{font-size:12px}.pokemon-name{font-size:16px}.card-image-container,.card-image-container .pokemon-image{width:75px;height:75px}.card-layout{gap:10px}.modal-bottom-close{display:block}.search-row{flex-direction:column;align-items:stretch}.search-row>input[type=text],.search-row>select,.search-row>.date-range{flex:none;width:100%;min-width:0}.conditions-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.ribbon-input{font-size:16px}.ribbon-toggle-btn{padding:4px 8px;font-size:11px}.search-buttons{flex-wrap:wrap;gap:8px}.search-button{padding:8px 14px}.clear-button{padding:8px}.quick-filters{background:var(--color-bg-card);border-top:1px solid var(--color-border);z-index:50;justify-content:flex-start;width:calc(100% + 40px);margin-left:-20px;margin-right:-20px;padding:10px 15px;position:sticky;bottom:0;box-shadow:0 -4px 16px #00000014}.quick-filter-btn{flex-direction:column;flex:1;justify-content:center;gap:2px;min-width:0;padding:8px 4px}.quick-icon{font-size:18px}.quick-text{text-align:center;font-size:10px}.stats{z-index:90;flex-wrap:wrap;gap:6px;position:sticky;top:0;box-shadow:0 2px 8px #0000001a}.stats-result-count{width:100%;margin-left:0}.scroll-to-top{display:none}.scroll-to-top.show{display:block}.results{grid-template-columns:1fr}.date-range{flex-wrap:wrap;width:100%}.date-range input[type=date]{width:100px;font-size:12px}.dashboard-grid{grid-template-columns:repeat(2,1fr)}}.date-range{flex-wrap:nowrap;align-items:center;gap:4px;display:inline-flex}.date-range input[type=date]{flex:1;width:130px;min-width:0;padding:6px;font-size:13px}.date-separator{color:#666;font-weight:600}.header-content{justify-content:space-between;align-items:center;display:flex}.header-left{flex:1;min-width:0}.header-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.dark-mode-btn{cursor:pointer;background:#0000001a;border:2px solid #00000026;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;transition:all .2s;display:flex}.dark-mode-btn:hover{background:#0003;transform:scale(1.1)}@media (width<=768px){header{padding:12px 16px}.header-content{gap:8px}header h1{margin-bottom:3px;font-size:17px;line-height:1.3}header p{font-size:11px}.header-right{gap:6px}.dark-mode-btn{width:32px;height:32px;font-size:16px}}@media (width<=400px){header h1{font-size:14px}header p{display:none}}.dashboard{background:var(--color-bg-card);border-radius:var(--radius-md);box-shadow:0 1px 3px var(--color-shadow);border:1px solid var(--color-border);margin-bottom:16px;padding:16px}.dashboard-grid{grid-template-columns:repeat(5,1fr);gap:15px;margin-bottom:10px;display:grid}.dashboard-card{text-align:center;background:var(--color-bg-section);border-radius:var(--radius-sm);border:1px solid var(--color-border-light);padding:10px 8px;transition:transform .2s}.dashboard-card:hover{transform:translateY(-2px)}.dashboard-number{color:var(--color-primary-dark);font-size:20px;font-weight:700}.dashboard-label{color:var(--color-text-secondary);margin-top:5px;font-size:12px}.toggle-dashboard-btn,.show-dashboard-btn{background:var(--color-bg-section);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--color-text-secondary);padding:8px;font-size:12px}.show-dashboard-btn{margin-bottom:15px}.stats-actions{gap:8px;margin-top:8px;display:flex}.action-btn{background:var(--color-bg-card);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text-primary);padding:6px 12px;font-size:12px;font-weight:600;transition:all .2s}.action-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.action-btn.active{background:var(--color-primary);border-color:var(--color-primary-dark);color:#333}.card-left{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;display:flex}.card-actions{justify-content:center;align-items:center;gap:4px;display:flex}.favorite-btn{cursor:pointer;background:0 0;border:1.5px solid #e0e0e0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:13px;transition:all .2s;display:inline-flex}.favorite-btn:hover{background:#fff3e0;border-color:#ff9800;transform:scale(1.1)}.favorite-btn.active{color:#ff9800;background:#fff3e0;border-color:#ff9800}.favorite-btn.active:after{content:"⭐"}.favorite-btn:not(.active):after{content:"☆"}.card-image-container{position:relative}.share-buttons{flex-wrap:wrap;gap:10px;display:flex}.share-btn{cursor:pointer;border-radius:6px;align-items:center;gap:5px;padding:8px 16px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.share-twitter{color:#fff;background:#000;border:none}.share-twitter:hover{background:#333}.share-copy{color:#333;background:#fff;border:2px solid #d0d0d0}.share-copy:hover{background:var(--color-primary-light);border-color:var(--color-primary)}.infinite-scroll-loader{color:var(--color-text-secondary);justify-content:center;align-items:center;gap:10px;padding:20px;font-size:14px;display:flex}.loader-spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.gen-1{border-color:#a8a878}.gen-2{border-color:#f8d030}.gen-3{border-color:#78c850}.gen-4{border-color:#98d8d8}.gen-5{border-color:#7038f8}body.dark-mode{--color-bg-page:#121212;--color-bg-card:#1e1e1e;--color-bg-section:#2d2d2d;--color-text-primary:#f0f0f0;--color-text-secondary:#b0b0b0;--color-text-muted:#707070;--color-border:#444;--color-border-light:#333;--color-shadow:#0000004d;--color-shadow-hover:#00000080;--color-primary-light:#3d3526}body.dark-mode header{background:#2a2218}body.dark-mode header h1{color:var(--color-primary)}body.dark-mode header p{color:#b0b0b0}body.dark-mode input,body.dark-mode select{color:#fff;background:#2d2d2d;border-color:#444}body.dark-mode .pokemon-card:hover{border-color:var(--color-primary)}body.dark-mode .pokemon-name{color:#fff}body.dark-mode .modal-content{color:#fff;background:#1e1e1e}body.dark-mode .modal-section h3{color:var(--color-primary);border-color:var(--color-primary-dark)}body.dark-mode .dashboard-number{color:var(--color-primary)}body.dark-mode .dark-mode-btn{background:#2d2d2d;border-color:#444}body.dark-mode .quick-filter-btn:hover,body.dark-mode .action-btn:hover{border-color:var(--color-primary);background:#3d3d3d}body.dark-mode .quick-filter-btn.active,body.dark-mode .action-btn.active{background:var(--color-primary-dark);border-color:var(--color-primary-dark);color:#222}body.dark-mode .ribbon-icon{background:var(--color-bg-section);color:#e0e0e0;border:none}body.dark-mode .modal-password{color:#90caf9;background:#1a3a5c}body.dark-mode .password-copy-btn:hover{background:#333}body.dark-mode .condition-checkbox:hover,body.dark-mode .condition-checkbox:has(input:checked){border-color:var(--color-primary-dark);background:#3d3526}body.dark-mode .ribbon-toggle-btn{color:var(--color-text-primary);background:#2a2a2a;border-color:#444}body.dark-mode .ribbon-toggle-btn:hover{border-color:var(--color-accent);background:#3d3d3d}body.dark-mode .ribbon-toggle-btn.is-active{color:#fff;background:#1976d2;border-color:#1976d2}body.dark-mode .search-button{background:var(--color-bg-card);color:var(--color-accent);border-color:var(--color-accent)}body.dark-mode .search-button:hover{background:var(--color-accent);color:#fff}.location-badge{border:2px solid var(--color-primary-dark);z-index:5;background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;display:flex;position:absolute;top:5px;left:5px;box-shadow:0 2px 4px #0003}.modal-memo-section .memo-content{flex-direction:column;gap:12px;display:flex}.memo-location-select{border:1px solid #ddd;border-radius:4px;width:100%;padding:8px;font-size:14px}.memo-custom-note{resize:vertical;border:1px solid #ddd;border-radius:4px;width:100%;padding:8px;font-family:inherit;font-size:13px}.memo-buttons{gap:10px;margin-top:8px;display:flex}.memo-save-btn,.memo-delete-btn{cursor:pointer;border-radius:6px;flex:1;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s}.memo-save-btn{color:#fff;background:#4caf50;border:none}.memo-save-btn:hover{background:#45a049}.memo-delete-btn{color:#d32f2f;background:#fff;border:2px solid #d32f2f}.memo-delete-btn:hover{background:#ffebee}body.dark-mode .memo-location-select,body.dark-mode .memo-custom-note{color:#fff;background:#2d2d2d;border-color:#444}body.dark-mode .location-badge{background:#1e1e1ef2;border-color:#90caf9}.compare-checkbox{cursor:pointer;z-index:10;width:24px;height:24px;accent-color:var(--color-primary-dark);position:absolute;top:10px;right:10px}.compare-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#ff9800;border:none;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s}.compare-btn:hover{background:#f57c00;transform:translateY(-1px)}.compare-modal-content{width:1400px;max-width:95vw}.compare-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:20px;display:grid}.compare-column{background:var(--color-bg-section);border-radius:var(--radius-sm);border:2px solid var(--color-border);padding:15px}.compare-header{text-align:center;border-bottom:2px solid #e0e0e0;margin-bottom:15px;padding-bottom:15px}.compare-image{object-fit:contain;width:100px;height:100px;margin-bottom:10px}.compare-header h3{color:#222;margin-bottom:5px;font-size:18px}.compare-dex{color:var(--color-accent);font-size:14px;font-weight:600}.compare-details{flex-direction:column;gap:8px;display:flex}.compare-row{background:#fff;border-radius:4px;padding:6px 8px;font-size:13px;line-height:1.5}.compare-row strong{color:var(--color-accent);min-width:80px;display:inline-block}body.dark-mode .compare-header h3{color:#fff}body.dark-mode .compare-row{color:#e0e0e0;background:#1e1e1e}body.dark-mode .compare-row strong{color:var(--color-primary)}@media (width<=768px){.compare-grid{grid-template-columns:1fr}.compare-checkbox{width:20px;height:20px}.stats-actions{flex-wrap:wrap}.compare-btn{width:100%;margin-top:5px}}.owned-btn{cursor:pointer;opacity:.4;background:0 0;border:1.5px solid #e0e0e0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:13px;transition:all .2s;display:inline-flex}.owned-btn.active{opacity:1;background:#e8f5e9;border-color:#4caf50}.owned-btn:hover{opacity:.7}.pokemon-card.is-owned{border-left:4px solid #4caf50}.collection-stats-panel{background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:8px;max-width:700px;margin:0 auto 16px;padding:16px 20px}.toggle-collection-stats-btn{background:var(--color-bg-card);border:1.5px solid var(--color-accent);cursor:pointer;color:var(--color-accent);border-radius:4px;margin:0 auto 16px;padding:6px 16px;font-size:13px;font-weight:600;display:block}.stats-overall{align-items:center;gap:12px;margin-bottom:16px;font-weight:700;display:flex}.stats-groups{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;display:grid}.stats-group-title{color:var(--color-accent);margin-bottom:8px;font-size:13px;font-weight:600}.stats-row{align-items:center;gap:8px;margin-bottom:6px;font-size:12px;display:flex}.stats-row-label{text-align:right;width:80px;color:var(--color-text-secondary);flex-shrink:0}.stats-row-bar-wrap{background:var(--color-border);border-radius:5px;flex:1;height:10px;overflow:hidden}.stats-row-bar{background:#4caf50;border-radius:5px;min-width:2px;height:100%;transition:width .3s}.stats-row-bar--overall{background:#1976d2}.stats-row-count{width:60px;color:var(--color-text-secondary);flex-shrink:0;font-size:11px}.stats-overall-label{text-align:right;flex-shrink:0;width:80px}.stats-overall-count{flex-shrink:0;width:120px;font-size:13px}.pokemon-card .event-name{color:var(--color-text-primary);font-size:14px;font-weight:700;line-height:1.4}.pokemon-card .distribution-period{color:var(--color-text-primary);font-size:13px;font-weight:700}.pokemon-card .distribution-method,.pokemon-card .distribution-location,.pokemon-card .region-value{color:var(--color-text-muted);font-size:11px;font-weight:400}.pokemon-card .ribbons-row .ribbon-icon{opacity:.85}.status-active{background:#16a34a;box-shadow:0 1px 4px #16a34a59}
