*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f5f5;min-height:100vh;padding:20px}.app{max-width:1200px;margin:0 auto}.review-list{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.review-list-header{background:#fff;border-bottom:1px solid #e5e7eb;padding:24px 30px}.filter-section{background:#fff;border-bottom:1px solid #e5e7eb;padding:0 30px}.review-list-header h1{font-size:1.5rem;margin-bottom:8px;font-weight:600;color:#111827}.header-tabs{display:flex;gap:8px;margin-bottom:12px}.tab-button{padding:8px 16px;border:1px solid #d1d5db;background:#fff;color:#6b7280;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.tab-button:hover{background:#f9fafb;color:#374151;border-color:#9ca3af}.tab-button.active{background:#111827;color:#fff;border-color:#111827}.review-count{font-size:.875rem;color:#6b7280}.reviews-container{padding:24px 30px;display:flex;flex-direction:column;gap:32px}.date-group{display:flex;flex-direction:column;gap:16px}.date-header{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid #e5e7eb;margin-bottom:4px}.date-title{font-size:1.125rem;font-weight:600;color:#111827;margin:0}.date-count{font-size:.875rem;color:#6b7280;font-weight:400}.date-reviews{display:flex;flex-direction:column;gap:16px}.review-item{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:20px;transition:border-color .2s,box-shadow .2s}.review-item:hover{border-color:#d1d5db;box-shadow:0 1px 3px #0000001a}.review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;flex-wrap:wrap;gap:15px}.review-header.compact{margin-bottom:0}.review-app-info{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.app-name{font-size:1.125rem;font-weight:600;color:#111827;margin:0}.store-badge{padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:500;color:#374151;background:#f3f4f6;border:1px solid #e5e7eb}.store-badge.app-store,.store-badge.google-play{background:#f3f4f6;color:#374151}.review-date-value{font-size:.875rem;color:#6b7280;font-weight:400}.review-rating{display:flex;align-items:center}.star-rating{display:flex;gap:4px}.star{font-size:1.25rem;color:#d1d5db;transition:color .2s}.star.filled{color:#f59e0b}.review-content{margin-bottom:15px}.review-title{font-size:.9375rem;font-weight:600;color:#111827;margin-bottom:8px}.review-text{font-size:.9375rem;line-height:1.6;color:#374151;margin-bottom:12px}.review-text.empty-text{color:#9ca3af;font-style:italic}.review-response{background:#f9fafb;border-radius:6px;padding:16px;margin-top:16px;border-left:3px solid #10b981}.review-response.pending{background:#fefce8;border-left:3px solid #eab308}.response-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-wrap:wrap;gap:10px}.response-label{font-weight:600;color:#111827;font-size:.875rem}.response-date{font-size:.8125rem;color:#6b7280;font-weight:500}.review-response.pending .response-date{color:#ca8a04}.response-text{font-size:.875rem;line-height:1.6;color:#374151;margin:0}.reply-section{margin-top:16px;display:flex;justify-content:flex-end}.reply-button{padding:8px 16px;background:#111827;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.reply-button:hover{background:#374151}.reply-form{margin-top:16px;padding:16px;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.reply-input{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:6px;font-size:.9375rem;font-family:inherit;line-height:1.5;color:#374151;background:#fff;resize:vertical;min-height:100px;transition:border-color .2s}.reply-input:focus{outline:none;border-color:#111827;box-shadow:0 0 0 3px #1118271a}.reply-input::placeholder{color:#9ca3af}.reply-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:12px}.reply-cancel-button{padding:8px 16px;background:#fff;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.reply-cancel-button:hover{background:#f9fafb;border-color:#9ca3af}.reply-submit-button{padding:8px 16px;background:#111827;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.reply-submit-button:hover:not(:disabled){background:#374151}.reply-submit-button:disabled{opacity:.5;cursor:not-allowed}.reply-error{margin-top:8px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#991b1b;font-size:.875rem}.reply-input:disabled{background:#f9fafb;cursor:not-allowed}.toast{position:fixed;top:20px;right:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:300px;max-width:500px;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{background:#10b981;color:#fff}.toast-error{background:#ef4444;color:#fff}.toast-message{flex:1;font-size:.9375rem;font-weight:500}.toast-close{background:none;border:none;color:inherit;font-size:1.5rem;line-height:1;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;opacity:.8;transition:opacity .2s}.toast-close:hover{opacity:1}.empty-state,.loading-state{text-align:center;padding:60px 20px;color:#6b7280;font-size:1rem}.error-state{text-align:center;padding:60px 20px;color:#dc2626;font-size:1rem;background:#fef2f2;border-radius:6px;border:1px solid #fecaca}.pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:32px;padding-top:24px;border-top:1px solid #e5e7eb}.pagination-button{padding:8px 16px;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s}.pagination-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-numbers{display:flex;gap:4px;align-items:center}.pagination-number{min-width:40px;height:40px;padding:8px 12px;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s}.pagination-number:hover{background:#f9fafb;border-color:#9ca3af}.pagination-number.active{background:#111827;color:#fff;border-color:#111827}.pagination-ellipsis{padding:8px 4px;color:#6b7280;font-size:.875rem}.app-filter-collapsible{background:#fff}.filter-toggle{width:100%;display:flex;justify-content:space-between;align-items:center;padding:16px 0;background:none;border:none;cursor:pointer;text-align:left;font-size:1rem;font-weight:500;color:#374151;transition:color .2s}.filter-toggle:hover{color:#111827}.filter-toggle-text{display:flex;align-items:center;gap:8px}.filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#111827;color:#fff;border-radius:10px;font-size:.75rem;font-weight:600}.filter-arrow{font-size:.75rem;color:#6b7280;transition:transform .2s}.filter-arrow.open{transform:rotate(180deg)}.filter-content{padding-bottom:20px;animation:slideDown .2s ease-out}.filter-quick-filters{margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.quick-filter-option{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px;border-radius:6px;transition:background .2s}.quick-filter-option:hover{background:#f9fafb}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.filter-header{display:flex;justify-content:flex-end;margin-bottom:12px}.select-all-button{padding:6px 12px;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:6px;cursor:pointer;font-size:.875rem;transition:all .2s}.select-all-button:hover{background:#f9fafb;border-color:#9ca3af}.filter-options{display:flex;flex-direction:column;gap:10px;max-height:400px;overflow-y:auto;padding-right:4px}.filter-option{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px;border-radius:6px;transition:background .2s}.filter-option:hover{background:#f9fafb}.filter-checkbox{width:18px;height:18px;cursor:pointer;accent-color:#111827}.filter-label{flex:1;font-size:.9375rem;color:#374151;-webkit-user-select:none;user-select:none}.filter-count{font-size:.8125rem;color:#6b7280;font-weight:500}.filter-summary{margin-top:16px;padding-top:12px;border-top:1px solid #e5e7eb;font-size:.875rem;color:#6b7280;font-weight:500}@media (max-width: 768px){body{padding:10px}.review-list-header{padding:20px}.review-list-header h1{font-size:1.25rem}.filter-section{padding:0 20px}.reviews-container{padding:16px 20px;gap:24px}.date-group{gap:12px}.date-header{flex-direction:column;align-items:flex-start;gap:4px}.date-title{font-size:1rem}.review-item{padding:16px}.review-header{flex-direction:column}.app-name{font-size:1rem}.filter-options{max-height:300px}}
