@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(360deg)}}:root{--primary:#0f766e;--secondary:#14b8a6;--bg:#f8fafc;--card:#ffffff;--text:#1f2937;--border:#e5e7eb;--wa-color:#25D366;--email-color:#EA4335}*{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text);min-height:100vh}.container{max-width:1100px;margin:0 auto;padding:20px}.header{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;padding:40px 0;text-align:center}.header h1{margin:0;font-size:2.5em}.header h1:last-of-type{font-size:1.8em;opacity:.9;margin-top:5px}.tagline{margin:8px 0 16px;opacity:.9;font-size:1.1em}#searchInput{width:100%;max-width:600px;margin:0 auto;display:block;padding:15px 20px;border-radius:50px;border:0;font-size:16px;outline:0;box-shadow:0 4px 15px rgba(0,0,0,.2);transition:all .3s ease}#searchInput:focus{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.25)}.floating-contact{position:fixed;bottom:30px;right:20px;z-index:1000;display:flex;flex-direction:column;gap:10px}.floating-email,.floating-wa{display:flex;align-items:center;justify-content:center;width:50px;height:50px;border-radius:50%;color:#fff;text-decoration:none;box-shadow:0 4px 15px rgba(0,0,0,.3);transition:all .3s ease;overflow:hidden}.floating-wa{background:var(--wa-color)}.floating-email{background:var(--email-color)}.floating-email:hover,.floating-wa:hover{transform:scale(1.1);width:140px;border-radius:25px;justify-content:flex-start;padding-left:15px;gap:10px}.floating-email:hover .floating-text,.floating-wa:hover .floating-text{display:inline}.floating-text{display:none;font-size:14px;white-space:nowrap}.floating-email i,.floating-wa i{font-size:1.5em}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:25px;margin-top:30px}.category-card{background:var(--card);border-radius:16px;overflow:hidden;border:1px solid var(--border);transition:all .3s ease;height:fit-content;box-shadow:0 2px 8px rgba(0,0,0,.05)}.category-card:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(0,0,0,.1);border-color:var(--secondary)}.card-header{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;padding:15px 20px}.card-title{margin:0 0 8px;font-size:1.3em;font-weight:600}.card-meta{display:flex;justify-content:space-between;align-items:center;font-size:.85em}.category-badge{background:rgba(255,255,255,.2);padding:4px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.5px}.item-count{background:rgba(0,0,0,.2);padding:4px 10px;border-radius:20px}.card-body{padding:20px}.items-container{list-style:none;padding:0;margin:0}.group-item{margin-bottom:15px;padding-bottom:15px;border-bottom:1px dashed var(--border)}.group-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.item-content{display:flex;flex-direction:column}.item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.item-title{font-weight:600;color:var(--primary);font-size:1em}.item-badge{background:var(--secondary);color:#fff;padding:2px 8px;border-radius:12px;font-size:.7em;opacity:.9}.item-description{font-size:.85em;color:var(--text);opacity:.7;margin:0 0 10px;line-height:1.4}.item-btn{align-self:flex-start;text-decoration:none;color:#fff;background:linear-gradient(135deg,var(--primary),var(--secondary));padding:6px 15px;border-radius:20px;font-size:.8em;transition:all .2s ease;display:inline-flex;align-items:center;gap:5px}.item-btn:hover{transform:scale(1.05);box-shadow:0 3px 10px rgba(15,118,110,.3)}.tautan-card{background:var(--card);border-radius:16px;overflow:hidden;border:1px solid var(--border);grid-column:1/-1}.tautan-header{background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;padding:20px}.tautan-header h2{margin:0 0 5px;font-size:1.3em;display:flex;align-items:center;gap:10px}.tautan-header p{margin:0;opacity:.9;font-size:.9em}.tautan-body{padding:20px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.tautan-link{text-decoration:none;color:var(--primary);background:var(--bg);padding:12px 15px;border-radius:10px;border-left:3px solid var(--secondary);transition:all .2s ease;display:flex;align-items:center;gap:8px;font-size:.9em}.tautan-link:hover{background:#e0f2f1;transform:translateX(5px)}.no-results i,.tautan-link i{color:var(--secondary)}.tautan-link i{font-size:.8em}.loading,.no-results{text-align:center;padding:60px 20px;grid-column:1/-1;background:#fff;border-radius:16px;border:2px dashed var(--border)}.loading-spinner{width:50px;height:50px;border:3px solid var(--border);border-top:3px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.no-results i{font-size:3em;margin-bottom:20px}.footer{text-align:center;padding:30px 20px;font-size:.9em;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;margin-top:50px}.footer .contact-info{margin-top:10px}.footer .contact-info a{color:#fff;text-decoration:none;border-bottom:1px dotted rgba(255,255,255,.5);padding-bottom:2px;margin:0 5px}.footer .contact-info a:hover{border-bottom:1px solid #fff}@media (max-width:768px){.header h1{font-size:2em}.header h1:last-of-type{font-size:1.4em}.grid{grid-template-columns:1fr}.floating-contact{bottom:20px;right:15px}.floating-email:hover,.floating-wa:hover{width:50px;border-radius:50%;padding-left:0;justify-content:center}.floating-email:hover .floating-text,.floating-wa:hover .floating-text{display:none}.tautan-body{grid-template-columns:1fr}}