*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{color:#1a1a2e;background:#f5f7fa;min-height:100vh;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.centered{flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:60vh;display:flex}.hint{color:#666;font-size:.875rem}.optional{color:#999;font-size:.8rem}.badge{color:#2563eb;text-transform:capitalize;background:#e8f4fd;border-radius:20px;padding:2px 10px;font-size:.78rem;font-weight:600}.location{color:#555;font-size:.9rem}.count{color:#888;font-size:.9rem;font-weight:400}.btn-primary{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 20px;font-size:.95rem;font-weight:600;transition:background .2s}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-outline{color:#2563eb;cursor:pointer;background:0 0;border:1.5px solid #2563eb;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:600;text-decoration:none;transition:background .15s;display:inline-block}.btn-outline:hover{background:#eff6ff}.error-box{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:10px 14px;font-size:.875rem}.info-box{color:#2563eb;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:10px 14px;font-size:.875rem}.auth-page{background:linear-gradient(160deg,#eff6ff 0%,#f5f3ff 50%,#fdf2f8 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:#fff;border-radius:16px;width:100%;max-width:440px;padding:40px;box-shadow:0 4px 24px #00000014}.auth-card h1{margin-bottom:4px;font-size:1.6rem}.auth-card .subtitle{color:#666;margin-bottom:28px}.auth-card form{flex-direction:column;gap:16px;display:flex}.auth-card label{flex-direction:column;gap:6px;font-size:.9rem;font-weight:500;display:flex}.auth-card input,.auth-card select,.auth-card textarea{border:1.5px solid #d1d5db;border-radius:8px;outline:none;padding:10px 12px;font-family:inherit;font-size:.95rem;transition:border-color .2s}.auth-card input:focus,.auth-card select:focus,.auth-card textarea:focus{border-color:#2563eb}.auth-card .hint{color:#999;padding-left:2px;font-size:.78rem;display:block}.auth-link{text-align:center;color:#555;margin-top:20px;font-size:.875rem}.auth-link a{color:#2563eb;font-weight:600;text-decoration:none}.dashboard{flex-direction:column;gap:20px;max-width:860px;margin:0 auto;padding:24px 16px;display:flex}.dash-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.dash-header h1{margin-bottom:6px;font-size:1.5rem}.card{background:#fff;border-radius:14px;padding:24px;box-shadow:0 2px 12px #0000000f}.card h2{margin-bottom:16px;font-size:1.1rem}.review-link-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px;display:flex}.review-link-row code{word-break:break-all;background:#f1f5f9;border-radius:8px;flex:1;padding:8px 12px;font-size:.85rem}.settings-grid{flex-direction:column;gap:16px;display:flex}.setting-row{background:#f8fafc;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.setting-row>div{flex:1}.setting-row strong{margin-bottom:2px;font-size:.95rem;display:block}.setting-row p{color:#666;font-size:.8rem}.setting-row select{border:1.5px solid #d1d5db;border-radius:8px;padding:6px 10px;font-size:.9rem}.settings-footer{justify-content:flex-end;align-items:center;gap:14px;margin-top:16px;display:flex}.save-msg{color:#16a34a;font-size:.875rem;font-weight:500}.toggle{cursor:pointer;flex-shrink:0;width:44px;height:24px;display:inline-block;position:relative}.toggle input{opacity:0;width:0;height:0}.slider{background:#d1d5db;border-radius:24px;transition:all .2s;position:absolute;inset:0}.slider:before{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:all .2s;position:absolute;top:3px;left:3px}.toggle input:checked+.slider{background:#2563eb}.toggle input:checked+.slider:before{transform:translate(20px)}.review-list{flex-direction:column;gap:12px;display:flex}.review-item{background:#f8fafc;border-left:4px solid #e2e8f0;border-radius:10px;padding:14px}.review-item.sentiment-positive{border-left-color:#16a34a}.review-item.sentiment-neutral{border-left-color:#ca8a04}.review-item.sentiment-negative{border-left-color:#dc2626}.review-item p{margin-top:8px;font-size:.9rem;line-height:1.55}.review-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sentiment-badge{text-transform:capitalize;border-radius:20px;padding:2px 8px;font-size:.75rem;font-weight:600}.sentiment-badge.positive{color:#16a34a;background:#dcfce7}.sentiment-badge.neutral{color:#ca8a04;background:#fef9c3}.sentiment-badge.negative{color:#dc2626;background:#fee2e2}.category-tag{color:#4338ca;text-transform:capitalize;background:#e0e7ff;border-radius:20px;padding:2px 8px;font-size:.75rem;font-weight:500}.review-date{color:#999;margin-left:auto;font-size:.75rem}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:20px;display:flex}.pagination button{cursor:pointer;background:#fff;border:1.5px solid #d1d5db;border-radius:8px;padding:8px 16px;font-size:.875rem}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination span{color:#555;font-size:.875rem}.review-page{max-width:640px;margin:0 auto;padding:24px 16px}.vendor-header{align-items:center;gap:16px;margin-bottom:8px;padding:20px 0;display:flex}.vendor-logo{object-fit:cover;border-radius:12px;width:56px;height:56px}.vendor-header h1{margin-bottom:6px;font-size:1.4rem}.review-card{background:#fff;border-radius:16px;flex-direction:column;gap:18px;padding:28px;display:flex;box-shadow:0 2px 16px #00000012}.review-card h2{font-size:1.15rem}.sentiment-tabs{flex-wrap:wrap;gap:10px;display:flex}.sentiment-tab{cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:10px;flex:1;min-width:100px;padding:10px;font-size:.9rem;font-weight:500;transition:all .15s}.sentiment-tab.active.positive{color:#16a34a;background:#f0fdf4;border-color:#16a34a}.sentiment-tab.active.neutral{color:#ca8a04;background:#fefce8;border-color:#ca8a04}.sentiment-tab.active.negative{color:#dc2626;background:#fff5f5;border-color:#dc2626}.sentiment-tab:hover:not(.active){background:#eff6ff;border-color:#93c5fd}.details-label{flex-direction:column;gap:6px;font-size:.9rem;font-weight:500;display:flex}.details-label input{border:1.5px solid #d1d5db;border-radius:8px;outline:none;padding:10px 12px;font-size:.9rem}.details-label input:focus{border-color:#2563eb}.suggestions{flex-direction:column;gap:12px;display:flex}.suggestions h3{color:#444;font-size:.95rem}.suggestion-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;align-items:flex-start;gap:12px;padding:14px;display:flex}.suggestion-item p{flex:1;font-size:.9rem;line-height:1.55}.copy-btn{color:#2563eb;cursor:pointer;background:#fff;border:1.5px solid #2563eb;border-radius:8px;flex-shrink:0;padding:6px 14px;font-size:.8rem;font-weight:600;transition:all .15s}.copy-btn.copied{color:#fff;background:#2563eb}
