:root{--primary:#009973;--primary-light:#d1f5f0;--scene-color:#009973;--scene-light:#00997345;--bg:#f4f7fe;--card-bg:#fff;--border:#009973;--text-main:#111827;--text-sub:#6b7280}.case-section{padding:50px 20px}.filter-panel{align-items:flex-end;background:var(--card-bg);border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.05);display:flex;flex-wrap:wrap;gap:24px;margin-bottom:40px;padding:24px 32px}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{color:var(--text-main);font-size:14px;font-weight:600}.search-wrapper{min-width:280px;position:relative}.search-wrapper input{background:#fff;border:1px solid var(--border);border-radius:10px;box-sizing:border-box;color:var(--text-main);font-size:13px;line-height:normal;padding:10px 16px 10px 42px;transition:border-color .2s,box-shadow .2s;width:100%}.search-wrapper input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(0,153,115,.15);outline:none}.search-wrapper input::placeholder{color:var(--text-sub)}.search-wrapper .case-search-icon{fill:var(--text-sub);height:16px;left:14px;position:absolute;top:50%;transform:translateY(-50%);width:16px}.case-custom-select{min-width:200px;position:relative}.select-trigger{align-items:center;background:#fff;border:1px solid var(--border);border-radius:10px;box-sizing:border-box;color:var(--text-main);cursor:pointer;display:flex;font-size:13px;justify-content:space-between;line-height:normal;padding:10px 20px 10px 16px;transition:border-color .2s,box-shadow .2s;user-select:none;width:100%}.select-trigger.active{border-color:var(--primary);box-shadow:0 0 0 3px rgba(0,153,115,.15)}.select-trigger .arrow{border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--text-sub);height:0;transition:transform .2s;width:0}.select-trigger.active .arrow{transform:rotate(180deg)}.select-dropdown{animation:fadeIn .15s ease;background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.12);display:none;left:0;max-height:260px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 6px);z-index:100}@keyframes fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.select-dropdown.show{display:block}.select-option{align-items:center;cursor:pointer;display:flex;gap:10px;padding:10px 16px;transition:background .15s}.select-option:hover{background:var(--bg)}.select-option.selected{color:var(--primary);font-weight:600}.select-option .checkbox{align-items:center;border:2px solid var(--border);border-radius:3px;display:flex;height:16px;justify-content:center;transition:all .15s;width:16px}.select-option.selected .checkbox{background:var(--primary);border-color:var(--primary)}.select-option.selected .checkbox svg{display:block;fill:#fff;height:10px;width:10px}.select-option .checkbox svg{display:none}.scene-select .select-trigger.active{border-color:var(--scene-color);box-shadow:0 0 0 3px rgba(0,153,115,.15)}.scene-select .select-option.selected{color:var(--scene-color)}.scene-select .select-option.selected .checkbox{background:var(--scene-color);border-color:var(--scene-color)}.case-list{display:grid;gap:28px}.case-card{background:var(--card-bg);border-radius:16px;box-shadow:0 4px 15px rgba(0,0,0,.06);display:flex;overflow:hidden;transition:opacity .35s ease,transform .3s ease,box-shadow .3s ease;transition:opacity .35s ease,transform .35s ease,box-shadow .3s ease}.case-card.showing{opacity:0;transform:scale(.92) translateY(10px)}.case-card.hiding{opacity:0;pointer-events:none;transform:scale(.88)}.case-card.hidden{display:none}.case-card:hover{box-shadow:0 12px 30px rgba(0,0,0,.1);transform:translateY(-5px)}.card-img{flex:1;overflow:hidden}.card-img img{display:block;height:280px;object-fit:cover;transition:transform .4s ease;width:100%}.case-card:hover .card-img img{transform:scale(1.08)}.card-body{padding:22px 24px 24px}.card-body,.card-body-content{display:flex;flex:1;flex-direction:column;overflow:hidden}.card-body-content{cursor:pointer}.card-body h3{color:var(--text-main);font-size:18px;font-weight:600;line-height:1.4;margin:0 0 10px;transition:color .2s ease}.case-card:hover .card-body h3{color:var(--primary)}.card-body p{color:var(--text-sub);display:-webkit-box;flex:1;font-size:13px;-webkit-line-clamp:5;line-height:1.7;margin:0 0 18px;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.meta{flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:14px}.meta,.meta .location{align-items:center;display:flex}.meta .location{color:var(--text-sub);font-size:12px;gap:5px}.meta svg{fill:var(--text-sub);flex-shrink:0;height:13px;width:13px}.card-scenes{display:flex;flex-wrap:wrap;gap:6px}.card-scene-tag{align-items:center;background:var(--scene-light);border-radius:12px;color:var(--scene-color);display:inline-flex;font-size:11px;font-weight:500;gap:4px;padding:3px 10px}.card-scene-tag .dot{background:var(--scene-color);border-radius:50%;height:4px;width:4px}.card-body-footer{border-top:1px solid var(--border);display:flex;justify-content:flex-end;padding-top:14px}.learn-more{align-items:center;color:var(--primary);display:inline-flex;font-size:13px;font-weight:600;gap:6px;text-decoration:none;transition:opacity .2s}.learn-more:hover{opacity:.7}.learn-more svg{fill:currentColor;height:14px;transition:transform .2s;width:14px}.learn-more:hover svg{transform:translateX(3px)}@media (max-width:768px){.filter-panel{align-items:stretch}.case-card,.filter-panel{flex-direction:column}}