body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f1f5f9;color:#1e293b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}.App{min-height:100vh}.nav{background:linear-gradient(135deg,#0891b2,#06b6d4);box-shadow:0 4px 12px #0891b226;margin:-40px -20px 0;padding:24px 0;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.nav-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 32px}.logo{color:#fff;font-size:22px;font-weight:700;letter-spacing:-.5px;text-shadow:0 2px 4px #0000001a}.nav-actions{align-items:center;display:flex;gap:16px}.nav-btn{background:#ffffff26;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s ease}.nav-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px)}.nav-btn.primary{background:#1e40af;border-color:#1e40af;display:none}.nav-btn.primary:hover{background:#1e3a8a;border-color:#1e3a8a}.recipe-list{margin:0 auto;max-width:1200px;padding:48px 32px;position:relative}.section-header{margin-bottom:32px}.section-title{color:#1e293b;font-size:28px;font-weight:600;letter-spacing:-.5px;margin-bottom:8px}.section-subtitle{color:#64748b;font-size:15px;font-weight:400}.search-bar-container{margin-bottom:40px}.search-bar{background:#fff;border:2px solid #cbd5e1;border-radius:10px;color:#1e293b;font-size:15px;max-width:600px;padding:14px 20px;transition:all .2s ease;width:100%}.search-bar:focus{border-color:#0891b2;box-shadow:0 0 0 3px #0891b21a;outline:none}.search-bar::placeholder{color:#94a3b8}.search-input{background:#0000;border:none;color:#1e293b;flex:1 1;font-size:15px;outline:none}.search-input::placeholder{color:#94a3b8}.clear-search-btn{align-items:center;background:#e2e8f0;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:24px;justify-content:center;line-height:1;margin-left:8px;padding:0;transition:all .2s ease;width:24px}.clear-search-btn:hover{background:#cbd5e1;color:#1e293b;transform:scale(1.1)}.floating-tools-btn{align-items:center;background:linear-gradient(135deg,#0891b2,#06b6d4);border:none;border-radius:50%;bottom:30px;box-shadow:0 4px 12px #0891b24d;color:#fff;cursor:pointer;display:flex;height:56px;justify-content:center;position:fixed;right:100px;transition:all .3s ease;width:56px;z-index:50}.floating-tools-btn:hover{box-shadow:0 6px 20px #0891b266;transform:scale(1.1)}.floating-tools-btn svg{stroke:#fff;height:28px;width:28px}.floating-add-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:50%;bottom:30px;box-shadow:0 4px 12px #2563eb4d;color:#fff;cursor:pointer;display:flex;font-size:32px;font-weight:300;height:56px;justify-content:center;position:fixed;right:30px;transition:all .3s ease;width:56px;z-index:50}.floating-add-btn:hover{box-shadow:0 6px 20px #2563eb66;transform:scale(1.1)}.notification-badge{align-items:center;background:#ef4444;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:600;height:24px;justify-content:center;position:absolute;right:-8px;top:-8px;width:24px}.add-recipe-menu{animation:slideUp .3s cubic-bezier(.68,-.55,.265,1.55);background:#fff;border-radius:16px;bottom:110px;box-shadow:0 8px 30px #00000026;min-width:220px;padding:8px;position:fixed;right:30px;z-index:99}.menu-option{align-items:center;background:#0000;border:none;border-radius:12px;color:#2d3748;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:12px;padding:14px 16px;position:relative;text-align:left;transition:all .2s ease;width:100%}.menu-option:hover{background:linear-gradient(135deg,#0891b2,#06b6d4);color:#fff;transform:translateX(-2px)}.menu-option:hover svg{fill:#fff}.menu-option svg{fill:#0891b2;flex-shrink:0;height:20px;transition:fill .2s ease;width:20px}.menu-option span{flex:1 1}.menu-option-disabled{cursor:not-allowed;opacity:.6}.menu-option-disabled:hover{background:#f7fafc;color:#1e293b;transform:none}.menu-option-disabled:hover svg{fill:#0891b2}.menu-option-shared{border-top:1px solid #e2e8f0;margin-top:4px;padding-top:14px}.menu-option-shared:hover{background:linear-gradient(135deg,#48bb78,#38a169)}.menu-option-shared svg{fill:#48bb78}.menu-option-shared:hover svg{fill:#fff}.coming-soon-badge{background:#fed7d7;border-radius:4px;color:#c53030;flex:0 0 auto;font-size:10px;font-weight:600;padding:2px 6px}.error,.loading,.no-recipes{background:#fff;border-radius:16px;box-shadow:0 2px 8px #00000014;color:#718096;font-size:18px;padding:60px;text-align:center}.error{background:#fff5f5;border:2px solid #fed7d7}.recipes-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));margin-bottom:80px}.recipe-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0000000d;cursor:pointer;overflow:hidden;transition:all .3s ease}.recipe-card:hover{border-color:#0891b2;box-shadow:0 12px 24px #0891b226;transform:translateY(-4px)}.recipe-image{align-items:center;background:linear-gradient(135deg,#f3f4f6,#e5e7eb);color:#64748b;display:flex;font-size:14px;height:120px;justify-content:center;width:100%}.recipe-image img{height:100%;object-fit:cover;width:100%}.recipe-info{padding:20px}.recipe-title{color:#1e293b;font-size:18px;font-weight:600;letter-spacing:-.3px;margin-bottom:12px}.recipe-meta{color:#94a3b8;display:flex;font-size:13px;gap:12px}.recipe-meta-item{align-items:center;display:flex;gap:4px}.top-bar{display:none}.confirm-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.confirm-dialog{animation:slideUp .3s cubic-bezier(.68,-.55,.265,1.55);background:#fff;border-radius:20px;box-shadow:0 25px 70px #0003;max-width:500px;overflow:hidden;width:90%}.confirm-header{background:linear-gradient(135deg,#ef4444,#dc2626);border-bottom:none;padding:32px 32px 24px}.confirm-header h3{color:#fff;font-size:24px;font-weight:700;margin:0}.confirm-body{background:#fff;padding:32px}.confirm-body p{color:#334155;font-size:16px;line-height:1.8;margin:0}.confirm-actions{background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;gap:16px;justify-content:flex-end;padding:24px 32px}.confirm-cancel-btn{background:#fff;border:2px solid #e5e7eb;border-radius:12px;color:#6b7280;cursor:pointer;font-size:15px;font-weight:600;padding:12px 28px;transition:all .3s ease}.confirm-cancel-btn:hover{background:#f3f4f6;border-color:#d1d5db;color:#1f2937;transform:translateY(-2px)}.confirm-delete-btn{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;border-radius:12px;box-shadow:0 4px 15px #ef44444d;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 28px;transition:all .3s ease}.confirm-delete-btn:hover{box-shadow:0 6px 20px #ef444466;transform:translateY(-2px)}.confirm-delete-btn:active{transform:translateY(0)}.conversion-calculator-overlay{align-items:center;background:#0009;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.conversion-calculator{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:700px;width:100%}.calculator-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:20px 24px}.calculator-header h2{color:#1f2937;font-size:24px;margin:0}.close-btn{color:#6b7280;font-size:32px;transition:color .2s}.close-btn:hover{color:#1f2937}.calculator-tabs{background:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:10px;overflow-x:auto;overflow-y:visible;padding:16px 24px 20px}.tab-btn{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:8px;box-shadow:0 1px 3px #0000000d;color:#4b5563;display:flex;font-size:15px;font-weight:600;justify-content:center;line-height:1.4;min-height:48px;transition:all .2s}.tab-btn:hover{background:#f9fafb;border-color:#2563eb;box-shadow:0 2px 6px #2563eb26;color:#1f2937;transform:translateY(-1px)}.tab-btn.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#2563eb;box-shadow:0 4px 12px #2563eb4d;color:#fff}.calculator-content{flex:1 1;overflow-y:auto;padding:24px}.eggs-tab,.ingredients-tab,.pans-tab,.special-tab{animation:fadeIn .2s}.search-box{margin-bottom:20px}.search-box input{border:1px solid #d1d5db;border-radius:8px;font-size:14px;padding:12px 16px;transition:border-color .2s;width:100%}.search-box input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.conversion-table{display:flex;flex-direction:column;gap:12px}.conversion-row{background:#f9fafb;border-radius:8px;padding:16px;transition:background .2s}.conversion-row:hover{background:#f3f4f6}.conversion-row.special{background:#eff6ff}.conversion-row.special:hover{background:#dbeafe}.ingredient-name{color:#1f2937;font-size:16px;font-weight:700;margin-bottom:12px}.conversions{display:flex;flex-wrap:wrap;gap:10px}.conversion-item{align-items:center;background:#fff;border:2px solid #dbeafe;border-radius:8px;box-shadow:0 1px 3px #0000000f;color:#1f2937;display:inline-flex;font-size:15px;gap:6px;padding:8px 14px;transition:all .2s}.conversion-item:hover{border-color:#93c5fd;box-shadow:0 2px 6px #2563eb26;transform:translateY(-1px)}.conversion-item strong{color:#2563eb;font-size:14px;font-weight:700}.pan-calculator{margin:0 auto;max-width:500px}.pan-calculator h3{color:#1f2937;font-size:20px;margin:0 0 8px}.pan-description{color:#6b7280;font-size:14px;margin:0 0 24px}.pan-inputs{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;margin-bottom:32px}.pan-input-group{flex:1 1;min-width:140px}.pan-input-group label{color:#4b5563;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.pan-input-group select{background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;font-size:16px;padding:10px 12px;transition:border-color .2s;width:100%}.pan-input-group select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.arrow{color:#2563eb;flex-shrink:0;font-size:28px;font-weight:700}.pan-result{background:#eff6ff;border-radius:12px;padding:24px;text-align:center}.multiplier{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:16px}.multiplier .label{color:#4b5563;font-size:16px;font-weight:500}.multiplier .value{color:#2563eb;font-size:36px;font-weight:700}.pan-tip{color:#6b7280;font-size:14px;line-height:1.5;margin:0}@media (max-width:640px){.conversion-calculator{margin:10px;max-height:95vh}.calculator-header{padding:16px 20px}.calculator-header h2{font-size:20px}.calculator-tabs{padding:12px 16px}.tab-btn{font-size:14px;padding:10px 16px}.calculator-content{padding:16px}.conversion-row{padding:12px}.conversions{gap:8px}.conversion-item{font-size:13px;padding:4px 10px}.pan-inputs{flex-direction:column;gap:12px}.pan-input-group{width:100%}.arrow{font-size:24px;transform:rotate(90deg)}.multiplier .value{font-size:28px}}.shared-recipes-dialog-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.shared-recipes-dialog{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-height:85vh;max-width:700px;overflow-y:auto;padding:24px;width:90%}.shared-recipes-dialog .dialog-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.shared-recipes-dialog .dialog-header h2{color:#333;font-size:26px;margin:0}.shared-recipes-dialog .close-btn{align-items:center;background:none;border:none;border-radius:8px;color:#666;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;transition:all .2s;width:40px}.shared-recipes-dialog .close-btn:hover{background:#f0f0f0;color:#333}.shared-recipes-dialog .loading{color:#666;font-size:16px;padding:40px;text-align:center}.shared-recipes-dialog .no-recipes{color:#999;font-size:16px;font-style:italic;padding:60px 20px;text-align:center}.shared-recipes-dialog .recipes-list{display:flex;flex-direction:column;gap:20px}.shared-recipes-dialog .recipe-card{background:#fafafa;border:1px solid #e0e0e0;border-radius:12px;padding:20px;transition:all .2s}.shared-recipes-dialog .recipe-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.shared-recipes-dialog .recipe-header{margin-bottom:12px}.shared-recipes-dialog .recipe-header h3{color:#333;font-size:20px;margin:0 0 4px}.shared-recipes-dialog .recipe-author{color:#666;font-size:14px;font-style:italic;margin:0}.shared-recipes-dialog .recipe-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.shared-recipes-dialog .meta-item{background:#fff;border:1px solid #e0e0e0;border-radius:6px;color:#666;font-size:14px;padding:4px 10px}.shared-recipes-dialog .category-badge{border-radius:8px;color:#fff;font-size:12px;font-weight:600;padding:4px 12px}.shared-recipes-dialog .recipe-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.shared-recipes-dialog .tag-badge{border-radius:6px;color:#fff;font-size:11px;font-weight:500;padding:3px 10px}.shared-recipes-dialog .sender-info{border-top:1px solid #e0e0e0;color:#666;font-size:13px;margin-bottom:16px;padding-top:12px}.shared-recipes-dialog .sender-info strong{color:#333}.shared-recipes-dialog .recipe-actions{display:flex;gap:10px;justify-content:flex-end}.shared-recipes-dialog .recipe-actions button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 24px;transition:all .2s}.shared-recipes-dialog .recipe-actions button:disabled{cursor:not-allowed;opacity:.5}.shared-recipes-dialog .btn-reject{background-color:#f0f0f0;color:#333}.shared-recipes-dialog .btn-reject:hover:not(:disabled){background-color:#e0e0e0}.shared-recipes-dialog .btn-accept{background-color:#48bb78;color:#fff}.shared-recipes-dialog .btn-accept:hover:not(:disabled){background-color:#38a169}.shared-recipes-dialog .message{border-radius:8px;font-size:14px;margin-top:16px;padding:12px;text-align:center}.shared-recipes-dialog .message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.shared-recipes-dialog .message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}@media (max-width:768px){.shared-recipes-dialog{padding:16px;width:95%}.shared-recipes-dialog .recipe-card{padding:16px}.shared-recipes-dialog .recipe-actions{flex-direction:column}.shared-recipes-dialog .recipe-actions button{width:100%}}.admin-console-overlay{align-items:center;animation:fadeIn .2s ease-in-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.admin-console-container{animation:slideUp .3s ease-out;background-color:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;display:flex;flex-direction:column;max-height:85vh;max-width:1200px;overflow:hidden;width:90%}.admin-console-header{align-items:center;background:#fff;border-bottom:1px solid #e8e8e8;display:flex;flex-shrink:0;justify-content:space-between;padding:24px}.admin-console-header h2{color:#1a1a1a;font-size:24px;font-weight:700;letter-spacing:-.5px;margin:0}.admin-console-header .close-btn{align-items:center;background:none;border:none;border-radius:8px;color:#999;cursor:pointer;display:flex;font-size:28px;height:40px;justify-content:center;padding:0;transition:all .2s ease;width:40px}.admin-console-header .close-btn:hover{background-color:#f0f0f0;color:#333}.admin-console-tabs{background-color:#fff;border-bottom:2px solid #e8e8e8;display:flex;flex-shrink:0;gap:0;padding:0 24px}.tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#999;cursor:pointer;font-size:14px;font-weight:500;padding:14px 24px;position:relative;transition:all .2s ease;white-space:nowrap}.tab-btn:hover{color:#555}.tab-btn.active{border-bottom-color:#4a90e2;color:#1a1a1a;font-weight:600}.admin-console-content{direction:ltr;flex:1 1;overflow-y:auto;padding:32px}.users-section h3{color:#1a1a1a;direction:ltr;font-size:18px;font-weight:700;margin:0 0 24px;text-align:left}.users-table-container{border:1px solid #e8e8e8;border-radius:8px;direction:ltr;overflow-x:auto}.users-table{background-color:#fff;border-collapse:collapse;direction:ltr;font-size:13px;width:100%}.users-table thead{background-color:#f5f5f5;border-bottom:1px solid #e8e8e8}.users-table th{color:#333;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.users-table td,.users-table th{direction:ltr;padding:14px 16px;text-align:left}.users-table td{border-bottom:1px solid #f0f0f0;color:#555}.users-table tbody tr{transition:background-color .15s ease}.users-table tbody tr:hover{background-color:#fafafa}.status{border-radius:20px;direction:ltr;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.3px;padding:4px 12px;text-align:center;text-transform:uppercase}.status.active{background-color:#e8f5e9;color:#2e7d32}.status.inactive{background-color:#ffebee;color:#c62828}.admin-badge{border-radius:20px;direction:ltr;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.3px;padding:4px 12px;text-align:center;text-transform:uppercase}.admin-badge.admin{background-color:#e3f2fd;color:#1565c0}.admin-badge.user{background-color:#f3e5f5;color:#6a1b9a}.actions{direction:ltr;display:flex;flex-wrap:wrap;gap:8px;text-align:left}.delete-btn,.reset-password-btn,.toggle-admin-btn,.verify-email-btn{border:none;border-radius:6px;cursor:pointer;font-size:11px;font-weight:600;letter-spacing:.3px;padding:6px 12px;text-transform:uppercase;transition:all .2s ease}.toggle-admin-btn{background-color:#fff9e6;border:1px solid #ffe69c;color:#856404}.toggle-admin-btn:hover{background-color:#ffe69c;border-color:#ffd966;box-shadow:0 2px 8px #85640426}.reset-password-btn{background-color:#f0f0f0;border:1px solid #d3d6db;color:#383d41}.reset-password-btn:hover{background-color:#e8e8e8;border-color:#adb5bd;box-shadow:0 2px 8px #383d4126}.verify-email-btn{background-color:#e8f5e9;border:1px solid #81c784;color:#2e7d32}.verify-email-btn:hover{background-color:#c8e6c9;border-color:#66bb6a;box-shadow:0 2px 8px #2e7d3226}.delete-btn{background-color:#ffebee;border:1px solid #ef5350;color:#c62828}.delete-btn:hover{background-color:#ffcdd2;border-color:#ef5350;box-shadow:0 2px 8px #c6282826}.loading,.no-data{color:#999;font-size:14px;padding:40px 20px;text-align:center}.message{align-items:center;animation:slideDown .3s ease-out;border-radius:8px;display:flex;font-size:13px;gap:10px;padding:14px 16px}.message.success{background-color:#e8f5e9;border-left:4px solid #2e7d32;color:#2e7d32}.error,.message.error{background-color:#ffebee;border-left:4px solid #c62828;color:#c62828}.error{border-radius:8px;padding:14px 16px}@media (max-width:768px){.admin-console-container{max-height:95vh;width:95%}.admin-console-header{padding:20px}.admin-console-header h2{font-size:18px}.admin-console-content{padding:20px}.users-section h3{font-size:16px;margin-bottom:16px}.users-table{font-size:12px}.users-table td,.users-table th{padding:10px 12px}.delete-btn,.reset-password-btn,.toggle-admin-btn,.verify-email-btn{font-size:10px;padding:4px 10px}.actions{flex-direction:column;gap:4px}}.category-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));padding:20px}.category-box{background-position:0 0,0 0;background-repeat:no-repeat,no-repeat;background-size:100% 100%,100% 100%;border:2px solid #fff3;border-radius:16px;box-shadow:0 4px 12px #0000001a;cursor:pointer;height:180px;overflow:hidden;position:relative;transition:all .3s ease}.category-box:hover{border-color:#fff6;box-shadow:0 8px 24px #0003;transform:translateY(-8px) scale(1.02)}.category-box-content{background:linear-gradient(#0000,#0000004d);bottom:0;color:#fff;left:0;padding:24px;position:absolute;right:0}.category-box-name{font-size:26px;font-weight:700;letter-spacing:.5px;margin:0 0 10px;text-shadow:2px 2px 8px #000000b3}.category-box-count{font-size:15px;font-weight:500;margin-bottom:10px;opacity:.95;text-shadow:1px 1px 3px #00000080}.category-box-tags{display:flex;flex-wrap:wrap;gap:5px}.category-tag-badge{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background-color:#fff3}.category-tag-badge,.category-tag-more{border-radius:12px;color:#fff;font-size:12px;padding:4px 8px}.category-tag-more{background-color:#ffffff4d}.no-categories-message{color:#666;grid-column:1/-1;padding:60px 20px;text-align:center}.no-categories-message p{font-size:16px;margin:10px 0}.no-categories-message p:first-child{font-size:18px;font-weight:600}.category-recipe-view{padding:0}.category-header{background:linear-gradient(135deg,#f5f5f5,#e8e8e8);border-radius:0 0 12px 12px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;height:auto;margin-bottom:30px;min-height:120px;padding:30px;position:relative}.category-header .back-btn{background:#64646426;border:1px solid #64646433;border-radius:8px;color:#333;cursor:pointer;font-size:16px;font-weight:500;margin-bottom:auto;padding:10px 18px;transition:all .2s ease;width:-webkit-fit-content;width:fit-content}.category-header .back-btn:hover{background:#64646440;border-color:#6464644d;transform:translateX(-2px)}.category-header-content{color:#333;margin-top:auto}.category-header-content h1{font-size:36px;font-weight:700;letter-spacing:.5px;margin:0 0 10px}.category-recipe-count{font-size:16px;font-weight:500;opacity:.85}.category-recipe-view .loading,.category-recipe-view .no-recipes{color:#666;font-size:18px;padding:60px 20px;text-align:center}.category-recipe-view .recipes-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));padding:0 30px 30px}.category-recipe-view .recipe-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;cursor:pointer;overflow:hidden;transition:transform .2s,box-shadow .2s}.category-recipe-view .recipe-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-4px)}.category-recipe-view .recipe-card-content{padding:20px}.category-recipe-view .recipe-card-text h3{color:#333;font-size:18px;margin:0 0 10px}.category-recipe-view .category-badge,.category-recipe-view .tag-badge{border-radius:12px;color:#fff;display:inline-block;font-size:12px;margin-bottom:5px;margin-right:5px;padding:4px 12px}.category-recipe-view .recipe-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.recipe-form-container{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.recipe-form-inner{padding:30px}.recipe-form-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.recipe-form-header h2{color:#1e293b;font-size:28px;font-weight:700;margin:0}.error-message{border-radius:4px;color:#c00;margin-bottom:20px;padding:12px}.recipe-form{gap:30px}.form-section,.recipe-form{display:flex;flex-direction:column}.form-section{gap:15px}.form-section label{color:#4299e1;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:8px}.form-section input,.form-section select,.form-section textarea{background:#fafafa;border:2px solid #e2e8f0;border-radius:10px;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s ease}.form-section input:focus,.form-section select:focus,.form-section textarea:focus{background:#fff;border-color:#4299e1;box-shadow:0 0 0 4px #4299e11a;outline:none}.form-row{grid-gap:15px;display:grid;gap:15px;grid-template-columns:1fr 1fr}.section-header{margin-bottom:10px}.section-header h3{color:#4299e1;font-size:18px;font-weight:700;margin:0}.add-btn{background:#4299e1;border:none;border-radius:10px;box-shadow:0 2px 8px #4299e14d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:10px 18px;transition:all .3s ease}.add-btn:hover{background:#3182ce;box-shadow:0 4px 12px #4299e180;transform:translateY(-2px)}.ingredient-row-wrapper{margin-bottom:10px}.ingredient-row{grid-gap:10px;align-items:start;display:grid;gap:10px;grid-template-columns:3fr .8fr 1fr auto}.ingredient-field{display:flex;flex-direction:column;gap:4px}.input-error{background-color:#fff5f5!important;border-color:#e53e3e!important}.field-error{color:#e53e3e;font-size:12px;font-weight:600;margin-top:2px}.instruction-row{grid-gap:10px;align-items:start;display:grid;gap:10px;grid-template-columns:auto 1fr auto}.step-number{color:#4299e1;font-size:16px;font-weight:700;padding-top:10px}.remove-btn{background:#e53e3e;border:none;border-radius:8px;box-shadow:0 2px 8px #e53e3e4d;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:8px 14px;transition:all .3s ease;white-space:nowrap}.remove-btn:hover{background:#c53030;box-shadow:0 4px 12px #e53e3e80;transform:translateY(-2px)}.tags-autocomplete-section{display:flex;flex-direction:column;gap:10px}.tag-input-wrapper{position:relative}.tag-input-container{align-items:center;background:#fafafa;border:2px solid #e2e8f0;border-radius:10px;display:flex;flex-wrap:wrap;gap:8px;min-height:48px;padding:8px 12px;transition:all .3s ease}.tag-input-container:focus-within{background:#fff;border-color:#4299e1;box-shadow:0 0 0 4px #4299e11a}.selected-tag{align-items:center;border-radius:16px;color:#fff;display:inline-flex;flex-shrink:0;font-size:13px;font-weight:500;gap:6px;padding:6px 10px}.remove-tag-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:18px;font-weight:700;line-height:1;margin-left:4px;opacity:.8;padding:0;transition:opacity .2s}.remove-tag-btn:hover{opacity:1}.tag-input{background:#0000;border:none;flex:1 1;font-family:inherit;font-size:14px;min-width:150px;padding:4px 8px}.tag-input:focus{outline:none}.tag-suggestions{background:#fff;border:2px solid #e2e8f0;border-radius:10px;box-shadow:0 4px 12px #0000001a;left:0;margin-top:4px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:100}.tag-suggestion{align-items:center;cursor:pointer;display:flex;gap:10px;padding:10px 16px;transition:background-color .2s}.tag-suggestion:hover{background-color:#f7fafc}.tag-suggestion.create-new{border-top:1px solid #e2e8f0;color:#4299e1;font-weight:600}.tag-color-dot{border-radius:50%;height:12px;width:12px}.form-actions{border-top:1px solid #e9ecef}.cancel-btn{background:#95a5a61a;border:2px solid #95a5a64d;border-radius:12px;color:#95a5a6;cursor:pointer;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.cancel-btn:hover{background:#95a5a6;color:#fff;transform:translateY(-2px)}.submit-btn{background:#4299e1;border:none;border-radius:12px;box-shadow:0 4px 15px #4299e166;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 32px;transition:all .3s ease}.submit-btn:hover{background:#3182ce;box-shadow:0 6px 20px #4299e199;transform:translateY(-2px)}.cancel-btn:disabled,.submit-btn:disabled{cursor:not-allowed;opacity:.6}.loading{color:#7f8c8d;padding:40px}.link-section{display:flex;flex-direction:column;gap:10px}.link-input-container{align-items:stretch;display:flex;gap:10px}.link-input-container input{flex:1 1}.add-link-btn{align-self:flex-start;background:#48bb78;border:none;border-radius:10px;box-shadow:0 2px 8px #48bb784d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 18px;transition:all .3s ease}.add-link-btn:hover{background:#38a169;box-shadow:0 4px 12px #48bb7880;transform:translateY(-2px)}.remove-link-btn{background:#e53e3e;border:none;border-radius:10px;box-shadow:0 2px 8px #e53e3e4d;color:#fff;cursor:pointer;font-size:18px;font-weight:700;line-height:1;padding:12px 18px;transition:all .3s ease}.remove-link-btn:hover{background:#c53030;box-shadow:0 4px 12px #e53e3e80;transform:translateY(-2px)}.modal-overlay{animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;padding:20px}.recipe-detail-container{animation:slideUp .3s ease-out;background:#fff;border:none;border-radius:20px;box-shadow:0 20px 60px #00000026;max-height:90vh;max-width:1000px;overflow:hidden;overflow-y:auto;width:100%}.recipe-detail-header{align-items:center;background:linear-gradient(135deg,#0891b2,#06b6d4);border-bottom:none;display:flex;gap:20px;justify-content:space-between;padding:20px 48px;position:relative}.close-btn{background:#0000000d;border-radius:10px;flex-shrink:0;height:40px;position:static;transition:all .3s ease;width:40px}.close-btn:hover{background:#0000001a;transform:rotate(90deg)}.modal-recipe-title{color:#1e293b;flex:1 1;font-size:20px;font-weight:700;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-detail-title{color:#1e293b;font-size:36px;font-weight:600;letter-spacing:-1px;margin-bottom:12px}.recipe-detail-meta{color:#64748b;display:flex;font-size:14px;gap:24px}.recipe-detail-content{background:#fff;display:block;padding:48px}.recipe-title-section{align-items:stretch;display:flex;gap:20px;justify-content:space-between;margin-bottom:25px}.recipe-header-info{display:flex;flex:1 1;flex-direction:column;justify-content:center}.recipe-detail-content h1{word-wrap:break-word;color:#fff;font-size:36px;font-weight:700;line-height:1.2;margin:0 0 8px}.recipe-author{color:#fffffff2;font-size:16px;font-weight:500;line-height:1.4;margin-bottom:0}.author-label{color:#ffffffd9;font-weight:600;margin-right:4px}.recipe-source-link{align-items:center;background:#ffffff26;border:2px solid #ffffff40;border-radius:8px;color:#fffffff2;cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:600;gap:8px;padding:10px 16px;text-decoration:none;transition:all .3s ease;white-space:nowrap}.recipe-source-link:hover{background:#ffffff40;border-color:#fff6;box-shadow:0 4px 12px #00000026;color:#fff;transform:translateY(-2px)}.recipe-source-link svg{height:18px;transition:transform .3s ease;width:18px}.recipe-source-link:hover svg{transform:scale(1.15)}.recipe-detail-description{color:#7f8c8d;font-size:16px;line-height:1.6;margin-bottom:25px}.recipe-info-card{grid-gap:15px;background:#0000;border:none;border-radius:0;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:40px;padding:0}.info-item{align-items:center;background:#f5f7fa;border-radius:12px;display:flex;flex:1 1;gap:12px;min-width:140px;padding:16px;transition:all .2s ease}.info-item:hover{background:#e8f3f7;transform:translateY(-2px)}.info-icon{font-size:24px}.info-content{display:flex;flex-direction:column;gap:2px}.info-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.info-value{color:#1e293b;font-size:16px;font-weight:700}.category-badge{border-radius:12px;color:#fff;font-size:13px;font-weight:600;padding:5px 14px}.recipe-tags-section{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;gap:15px;margin-bottom:35px;padding-bottom:30px}.recipe-tags-section strong{color:#4299e1;font-size:16px;font-weight:700}.recipe-tags{display:flex;flex-wrap:wrap;gap:8px}.tag-badge{border-radius:10px;color:#fff;font-size:12px;font-weight:500;padding:4px 12px}.ingredients-section h3,.instructions-section h3{border-bottom:2px solid #e5e7eb;color:#1e293b;font-size:20px;font-weight:600;letter-spacing:-.3px;margin-bottom:20px;padding-bottom:12px}.ingredients-list{list-style:none;margin:0;padding:0}.ingredients-list li{border-bottom:1px solid #f1f5f9;color:#334155;font-size:15px;padding:12px 0 12px 24px;position:relative}.ingredients-list li:before{color:#0891b2;content:"•";font-size:20px;font-weight:700;left:0;position:absolute}.ingredients-list li:last-child{border-bottom:none}.instructions-list{counter-reset:step;list-style:none;margin:0;padding:0}.instructions-list li{color:#334155;counter-increment:step;font-size:15px;line-height:1.6;padding:16px 0 16px 40px;position:relative}.instructions-list li:before{align-items:center;background:linear-gradient(135deg,#0891b2,#06b6d4);border-radius:50%;box-shadow:0 2px 8px #0891b24d;color:#fff;content:counter(step);display:flex;font-size:13px;font-weight:600;height:28px;justify-content:center;left:0;position:absolute;top:16px;width:28px}.instructions-list li:not(:last-child){margin-bottom:12px}.recipe-two-column-layout{grid-gap:40px;border-radius:0;display:grid;gap:40px;grid-template-columns:1fr 1fr;margin-bottom:40px;overflow:visible}.column-header{border-bottom:none;color:#1e293b;font-size:22px;font-weight:700;margin:0 0 25px;padding-bottom:0}.ingredients-column{border-right:none}.ingredients-column,.instructions-column{background:#0000;padding:0}.ingredient-item{align-items:flex-start;background:#f8f9fa;border-radius:10px;cursor:pointer;display:flex;gap:12px;margin-bottom:10px;padding:14px 16px;transition:all .2s ease}.ingredient-item:hover{background:#e8f3f7}.ingredient-checkbox{cursor:pointer;flex-shrink:0;height:18px;margin-top:3px;width:18px}.ingredient-text{color:#1e293b;font-size:15px;line-height:1.5}.instruction-step{align-items:flex-start;display:flex;gap:15px}.step-number{align-items:center;background:linear-gradient(135deg,#0891b2,#06b6d4);border-radius:50%;box-shadow:0 2px 8px #0891b24d;color:#fff;display:flex;flex-shrink:0;font-size:13px;font-weight:600;height:28px;justify-content:center;margin-top:2px;width:28px}.step-text{color:#334155;font-size:15px;line-height:1.6;margin:0}.recipe-section{margin-bottom:40px}.recipe-section h2{border-bottom:3px solid #e2e8f0;color:#4299e1;font-size:28px;font-weight:700;margin:0 0 25px;padding-bottom:15px;position:relative}.recipe-section h2:after{background:#4299e1;border-radius:2px;bottom:-3px;content:"";height:3px;left:0;position:absolute;width:80px}.comments-list{display:flex;flex-direction:column;gap:15px}.comment-item{background:#f7fafc;border-left:4px solid #4299e1;border-radius:12px;color:#333;font-size:15px;line-height:1.7;padding:20px;transition:all .2s ease}.comment-item:hover{background:#edf2f7;transform:translateX(4px)}.empty-message{background:#f7fafc;border-radius:10px;color:#999;font-style:italic;padding:30px;text-align:center}.loading{color:#666;font-size:18px}.error-container,.loading{background:#fff;border-radius:20px;box-shadow:0 4px 20px #0000001a;padding:60px;text-align:center}.error{color:#e53e3e;font-size:18px;font-weight:600;margin-bottom:20px}.recipe-detail-actions{border-top:2px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:16px;justify-content:center;margin-top:40px;padding-top:40px}.link-recipe-btn{background:#48bb78;border:none;border-radius:12px;box-shadow:0 4px 15px #48bb784d;color:#fff;cursor:pointer;font-size:20px;line-height:1;padding:14px 20px;transition:all .3s ease}.link-recipe-btn:hover{background:#38a169;box-shadow:0 6px 20px #48bb7880;transform:translateY(-2px)}.edit-recipe-btn{background:#4299e1;border:none;border-radius:12px;box-shadow:0 4px 15px #4299e14d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .3s ease}.edit-recipe-btn:hover{background:#3182ce;box-shadow:0 6px 20px #4299e180;transform:translateY(-2px)}.share-recipe-btn{background:#48bb78;border:none;border-radius:12px;box-shadow:0 4px 15px #48bb784d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .3s ease}.share-recipe-btn:hover{background:#38a169;box-shadow:0 6px 20px #48bb7880;transform:translateY(-2px)}.delete-recipe-btn{background:#ef4444;border:none;border-radius:12px;box-shadow:0 4px 15px #ef44444d;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px 32px;transition:all .3s ease}.delete-recipe-btn:hover{background:#dc2626;box-shadow:0 6px 20px #ef444480;transform:translateY(-2px)}.back-btn{background:#f5f5f5;color:#666;font-size:14px;padding:10px 20px}.back-btn:hover{background:#e0e0e0}@media (max-width:768px){.recipe-two-column-layout{gap:30px;grid-template-columns:1fr}.ingredients-column{border-bottom:none;border-right:none}.recipe-info-card{gap:12px;grid-template-columns:repeat(2,1fr)}.info-item{min-width:100%}.recipe-detail-container{border-radius:0;max-width:100%}.recipe-detail-content,.recipe-detail-header{padding:24px}.recipe-detail-content h1{font-size:28px}.recipe-title-section{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:20px}.recipe-source-link{font-size:13px;justify-content:center;padding:9px 14px;white-space:normal;width:100%}.recipe-author{font-size:15px}}.share-recipe-dialog-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.share-recipe-dialog{background:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-height:80vh;max-width:500px;overflow-y:auto;padding:24px;width:90%}.share-recipe-dialog h2{color:#333;font-size:24px;margin:0 0 12px}.share-recipe-dialog .recipe-name{color:#666;font-size:16px;font-weight:500;margin:0 0 20px}.share-recipe-dialog .instructions{color:#666;font-size:14px;margin:0 0 12px}.share-recipe-dialog .loading{color:#666;padding:20px;text-align:center}.share-recipe-dialog .no-friends{color:#999;font-style:italic;padding:20px;text-align:center}.share-recipe-dialog .friends-list{border:1px solid #ddd;border-radius:4px;margin-bottom:16px;max-height:300px;overflow-y:auto}.share-recipe-dialog .friend-item{align-items:center;border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;padding:12px;transition:background-color .2s}.share-recipe-dialog .friend-item:last-child{border-bottom:none}.share-recipe-dialog .friend-item:hover{background-color:#f9f9f9}.share-recipe-dialog .friend-item input[type=checkbox]{cursor:pointer;height:18px;margin-right:12px;width:18px}.share-recipe-dialog .friend-item input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.share-recipe-dialog .friend-name{color:#333;flex-shrink:0;font-weight:500;margin-right:8px}.share-recipe-dialog .friend-email{color:#666;flex-grow:1;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-recipe-dialog .message{border-radius:4px;font-size:14px;margin-bottom:16px;padding:10px}.share-recipe-dialog .message.success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.share-recipe-dialog .message.error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.share-recipe-dialog .dialog-actions{display:flex;gap:12px;justify-content:flex-end}.share-recipe-dialog .dialog-actions button{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:all .2s}.share-recipe-dialog .dialog-actions button:disabled{cursor:not-allowed;opacity:.5}.share-recipe-dialog .btn-cancel{background-color:#f0f0f0;color:#333}.share-recipe-dialog .btn-cancel:hover:not(:disabled){background-color:#e0e0e0}.share-recipe-dialog .btn-share{background-color:#007bff;color:#fff}.share-recipe-dialog .btn-share:hover:not(:disabled){background-color:#0056b3}.settings-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1500}.settings-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:600px;max-width:500px;width:90%}.settings-modal-header{align-items:center;border-bottom:2px solid #e2e8f0;display:flex;justify-content:space-between;padding:24px}.settings-modal-header h2{color:#1e293b;font-size:24px;font-weight:700;margin:0}.close-settings-btn{background:#0000000d;border:none;border-radius:10px;color:#666;cursor:pointer;font-size:28px;height:40px;line-height:1;padding:0;transition:all .3s ease;width:40px}.close-settings-btn:hover{background:#0000001a;color:#333;transform:rotate(90deg)}.settings-modal-content{flex:1 1;overflow-y:auto;padding:24px}.settings-categories{display:flex;flex-direction:column;gap:12px}.settings-category-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:12px;color:#1e293b;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:16px;padding:18px 20px;text-align:left;transition:all .3s ease}.settings-category-btn:hover:not(.disabled){background:#f7fafc;border-color:#4299e1;transform:translateX(4px)}.settings-category-btn.disabled{background:#f7fafc;cursor:not-allowed;opacity:.5}.category-icon{flex-shrink:0;font-size:24px}.category-name{flex:1 1}.category-arrow{color:#64748b;font-size:24px;font-weight:300}.category-status{background:#edf2f7;border-radius:6px;color:#64748b;font-size:12px;font-weight:500;padding:4px 10px}.settings-detail{display:flex;flex-direction:column;gap:20px}.back-btn{align-self:flex-start;background:#edf2f7;border:none;border-radius:8px;color:#4a5568;cursor:pointer;font-size:15px;font-weight:600;padding:10px 16px;transition:all .3s ease}.back-btn:hover{background:#e2e8f0;color:#1e293b}.setting-section{margin-bottom:30px}.setting-section h3{color:#4299e1;font-size:16px;font-weight:600;margin:0 0 15px}.setting-options{display:flex;flex-direction:column;gap:10px}.setting-option{background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#1e293b;cursor:pointer;font-size:14px;font-weight:500;padding:12px 16px;text-align:left;transition:all .3s ease}.setting-option:hover{background:#f7fafc;border-color:#4299e1}.setting-option.active{background:#4299e1;border-color:#4299e1;color:#fff;font-weight:600}.tag-create-section{display:flex;gap:10px;margin-bottom:20px}.tag-name-input{background:#fafafa;border:2px solid #e2e8f0;border-radius:10px;flex:1 1;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s ease}.tag-name-input:focus{background:#fff;border-color:#4299e1;box-shadow:0 0 0 4px #4299e11a;outline:none}.create-tag-btn{background:#48bb78;border:none;border-radius:10px;box-shadow:0 2px 8px #48bb784d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.create-tag-btn:hover:not(:disabled){background:#38a169;box-shadow:0 4px 12px #48bb7880;transform:translateY(-2px)}.create-tag-btn:disabled{cursor:not-allowed;opacity:.5}.tags-list-section{display:flex;flex-direction:column;gap:10px}.tag-item{align-items:center;background:#f7fafc;border-radius:10px;display:flex;gap:12px;padding:12px 16px;transition:background .2s}.tag-item:hover{background:#edf2f7}.tag-color{border-radius:4px;flex-shrink:0;height:20px;width:20px}.tag-name{color:#333;flex:1 1;font-size:14px;font-weight:500}.delete-tag-btn{background:#e53e3e;border:none;border-radius:8px;box-shadow:0 2px 8px #e53e3e4d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease}.delete-tag-btn:hover{background:#c53030;box-shadow:0 4px 12px #e53e3e80;transform:translateY(-2px)}.no-tags{background:#f7fafc;border-radius:10px;color:#999;font-style:italic;padding:40px;text-align:center}.import-export-section{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;margin-bottom:30px;padding:20px}.import-export-section h3{color:#1e293b;margin-top:0}.section-description{color:#4a5568;font-size:14px;line-height:1.5;margin-bottom:20px}.export-btn,.import-btn{background:#4299e1;border:none;border-radius:10px;box-shadow:0 2px 8px #4299e14d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.export-btn:hover:not(:disabled),.import-btn:hover:not(:disabled){background:#3182ce;box-shadow:0 4px 12px #4299e180;transform:translateY(-2px)}.export-btn:disabled,.import-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.import-mode-selection{margin-bottom:20px}.import-mode-label{color:#1e293b;display:block;font-size:14px;font-weight:600;margin-bottom:12px}.import-mode-options{display:flex;flex-direction:column;gap:12px}.radio-option{align-items:flex-start;background:#fff;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;gap:12px;padding:12px;transition:all .3s ease}.radio-option:hover{background:#f7fafc;border-color:#4299e1}.radio-option input[type=radio]{cursor:pointer;flex-shrink:0;margin-top:2px}.radio-label{display:flex;flex-direction:column;gap:4px}.radio-label strong{color:#1e293b;font-size:14px}.radio-label small{color:#64748b;font-size:12px}.file-upload-section{align-items:center;display:flex;gap:10px}.file-input{display:none}.file-input-label{background:#fff;border:2px dashed #cbd5e0;border-radius:10px;color:#64748b;cursor:pointer;flex:1 1;font-size:14px;font-weight:500;padding:12px 16px;text-align:center;transition:all .3s ease}.file-input-label:hover{background:#f7fafc;border-color:#4299e1;color:#4299e1}.message{border-radius:10px;font-size:14px;font-weight:500;margin-bottom:20px;padding:12px 16px}.message.success{background:#c6f6d5;border:2px solid #9ae6b4;color:#22543d}.message.error{background:#fed7d7;border:2px solid #fc8181;color:#742a2a}.friends-container{display:flex;flex-direction:column;gap:24px}.friends-message{animation:slideDown .3s ease-out;border-radius:10px;font-size:14px;font-weight:500;padding:12px 16px}.friends-message.success{background:#c6f6d5;border:2px solid #9ae6b4;color:#22543d}.friends-message.error{background:#fed7d7;border:2px solid #fc8181;color:#742a2a}.friends-section{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:20px}.friends-section h3{color:#4299e1;font-size:16px;font-weight:600;margin:0 0 16px}.add-friend-form{display:flex;gap:10px}.friend-email-input{background:#fff;border:2px solid #e2e8f0;border-radius:10px;flex:1 1;font-family:inherit;font-size:14px;padding:12px 16px;transition:all .3s ease}.friend-email-input:focus{border-color:#4299e1;box-shadow:0 0 0 4px #4299e11a;outline:none}.friend-email-input:disabled{background:#f7fafc;cursor:not-allowed;opacity:.6}.send-request-btn{background:#4299e1;border:none;border-radius:10px;box-shadow:0 2px 8px #4299e14d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease;white-space:nowrap}.send-request-btn:hover:not(:disabled){background:#3182ce;box-shadow:0 4px 12px #4299e180;transform:translateY(-2px)}.send-request-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.friend-requests-list,.friends-list{display:flex;flex-direction:column;gap:10px}.friend-item,.friend-request-item{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;display:flex;gap:12px;justify-content:space-between;padding:14px 16px;transition:all .3s ease}.friend-item:hover,.friend-request-item:hover{background:#f7fafc;border-color:#4299e1;transform:translateX(4px)}.friend-request-item.incoming{border-left:4px solid #48bb78}.friend-request-item.outgoing{border-left:4px solid #ed8936}.friend-info{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.friend-name{color:#1e293b;font-size:15px;font-weight:600}.friend-email,.friend-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friend-email{color:#64748b;font-size:13px}.remove-friend-btn{background:#e53e3e;border:none;border-radius:8px;box-shadow:0 2px 8px #e53e3e4d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.remove-friend-btn:hover{background:#c53030;box-shadow:0 4px 12px #e53e3e80;transform:translateY(-2px)}.accept-request-btn{background:#48bb78;border:none;border-radius:8px;box-shadow:0 2px 8px #48bb784d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.accept-request-btn:hover{background:#38a169;box-shadow:0 4px 12px #48bb7880;transform:translateY(-2px)}.request-actions{align-items:center;display:flex;gap:10px}.status-badge{border-radius:6px;font-size:12px;font-weight:600;padding:6px 12px;white-space:nowrap}.status-badge.pending{background:#fed7aa;color:#7c2d12}.resend-email-btn{background:#805ad5;border-radius:8px;box-shadow:0 2px 8px #805ad54d;font-size:13px;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.resend-email-btn:hover:not(:disabled){background:#6b46c1;box-shadow:0 4px 12px #805ad580;transform:translateY(-2px)}.resend-email-btn:disabled{opacity:.5;transform:none}.empty-state,.no-friends{background:#fff;border-radius:10px;color:#999;font-style:italic;padding:40px;text-align:center}.empty-state p{color:#64748b;font-size:15px;margin:0}@media (max-width:600px){.add-friend-form{flex-direction:column}.send-request-btn{width:100%}.friend-item,.friend-request-item{align-items:flex-start;flex-direction:column}.accept-request-btn,.remove-friend-btn,.status-badge{text-align:center;width:100%}.request-actions{flex-direction:column;width:100%}.friend-info,.resend-email-btn{width:100%}}.layout-settings{padding:20px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.add-category-btn{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.add-category-btn:hover{background-color:#45a049}.no-categories{color:#666;font-style:italic;padding:40px 20px;text-align:center}.categories-list{display:flex;flex-direction:column;gap:15px}.category-item{align-items:center;background:linear-gradient(135deg,#fff,#f9f9f9);border:2px solid #e8e8e8;border-radius:12px;box-shadow:0 2px 8px #0000000d;display:flex;justify-content:space-between;padding:20px;transition:all .3s ease}.category-item:hover{border-color:#2196f3;box-shadow:0 4px 16px #2196f326;transform:translateY(-2px)}.category-info{align-items:center;display:flex;flex:1 1;gap:20px}.category-image-preview{background-color:#fff;border:2px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 6px #0000001a;flex-shrink:0;height:80px;overflow:hidden;width:80px}.category-image-preview img{height:100%;object-fit:contain;padding:8px;width:100%}.category-details{display:flex;flex-direction:column;gap:5px}.category-name{font-size:16px;font-weight:600}.category-count{color:#666;font-size:14px}.category-tags{display:flex;flex-wrap:wrap;gap:5px}.category-pattern{color:#888;font-size:12px;font-style:italic}.category-actions{display:flex;gap:10px}.category-actions .delete-btn,.category-actions .edit-btn{border:none;border-radius:6px;box-shadow:0 2px 4px #0000001a;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:all .2s ease}.category-actions .edit-btn{background-color:#2196f3;color:#fff}.category-actions .edit-btn:hover{background-color:#0b7dda;box-shadow:0 4px 8px #2196f34d;transform:translateY(-2px)}.category-actions .delete-btn{background-color:#f44336;color:#fff}.category-actions .delete-btn:hover{background-color:#da190b;box-shadow:0 4px 8px #f443364d;transform:translateY(-2px)}.category-form-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.category-form-modal{background:#fff;border-radius:12px;box-shadow:0 4px 6px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}.category-form-header{align-items:center;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px}.category-form-header h2{font-size:24px;margin:0}.close-btn{font-size:28px}.category-form-content{padding:20px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px}.form-group input[type=text]{border:1px solid #ddd;border-radius:4px;font-size:14px;padding:10px;width:100%}.form-group small{color:#666;display:block;font-size:12px;margin-top:5px}.tags-selector{display:flex;flex-wrap:wrap;gap:10px}.tag-checkbox{align-items:center;display:flex;gap:5px}.tag-checkbox,.tag-checkbox input[type=checkbox]{cursor:pointer}.radio-group{display:flex;flex-direction:column;gap:10px}.radio-group label{align-items:center;cursor:pointer;display:flex;gap:8px}.form-actions{border-top:1px solid #e0e0e0;display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:20px}.cancel-btn,.save-btn{border:none;border-radius:4px;cursor:pointer;font-size:14px;padding:10px 20px}.cancel-btn{background-color:#f0f0f0}.cancel-btn:hover{background-color:#e0e0e0}.save-btn{background-color:#4caf50;color:#fff}.save-btn:hover{background-color:#45a049}.save-btn:disabled{background-color:#ccc;cursor:not-allowed}.image-selector{margin-top:20px}.image-selector h4{margin-bottom:15px}.image-options{display:flex;flex-direction:column;gap:20px}.predefined-icons h5,.upload-section h5{color:#666;font-size:14px;margin-bottom:10px}.icons-grid{grid-gap:12px;background-color:#fafafa;border:1px solid #e0e0e0;border-radius:8px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));max-height:300px;overflow-y:auto;padding:10px}.icon-option{aspect-ratio:1;background-color:#fff;border:3px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 4px #0000000d;cursor:pointer;overflow:hidden;transition:all .3s ease;width:100%}.icon-option:hover{border-color:#2196f3;box-shadow:0 4px 8px #0000001a;transform:scale(1.05)}.icon-option.selected{border-color:#4caf50;box-shadow:0 4px 12px #4caf504d;transform:scale(1.05)}.icon-option img{height:100%;object-fit:contain;padding:8px;width:100%}.upload-section{display:flex;flex-direction:column;gap:10px}.upload-btn{background-color:#2196f3;border-radius:4px;color:#fff;cursor:pointer;display:inline-block;max-width:200px;padding:10px 20px;text-align:center}.upload-btn:hover{background-color:#0b7dda}.uploaded-preview{border-radius:8px;height:100px;margin-top:10px;overflow:hidden;width:100px}.uploaded-preview img{height:100%;object-fit:cover;width:100%}.auth-overlay{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background-color:#0891b226;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.auth-modal{animation:slideIn .3s ease;background:#fff;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 12px 40px #0891b240;max-height:90vh;max-width:450px;overflow-y:auto;padding:2rem 2.5rem;position:relative;width:90%}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.language-selector{align-items:center;background:#fffffff2;border-radius:8px;box-shadow:0 2px 8px #00000026;display:flex;gap:.5rem;padding:.5rem .75rem;position:fixed;right:1.25rem;top:1.25rem;z-index:1010}.language-selector:hover{box-shadow:0 4px 12px #0003;transform:translateY(-1px)}.language-icon{fill:#0891b2;flex-shrink:0;height:20px;width:20px}.language-dropdown{background:#0000;border:none;border-radius:4px;color:#1e293b;cursor:pointer;font-size:.9rem;font-weight:600;padding:.25rem .5rem;transition:all .2s ease}.language-dropdown:hover{background:#0891b21a}.language-dropdown:focus{background:#0891b226;outline:none}.language-dropdown option{background:#fff;color:#1e293b;padding:.5rem}.auth-modal h2{background:linear-gradient(135deg,#0891b2,#06b6d4);border-radius:16px 16px 0 0;color:#fff;font-size:28px;font-weight:700;letter-spacing:-.5px;margin:-2.5rem -2.5rem 1.5rem;padding:1.5rem 2.5rem;position:relative;text-align:center;text-shadow:0 2px 4px #0000001a}.auth-form{display:flex;flex-direction:column;gap:.6rem}.btn-primary{background:linear-gradient(135deg,#0891b2,#06b6d4);border:none;border-radius:8px;box-shadow:0 4px 12px #0891b24d;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:.25rem;padding:.75rem 1.5rem;transition:all .3s cubic-bezier(.68,-.55,.265,1.55)}.btn-primary:hover{background:linear-gradient(135deg,#06b6d4,#0891b2);box-shadow:0 6px 20px #0891b266;transform:translateY(-2px)}.btn-primary:active{box-shadow:0 2px 8px #0891b24d;transform:translateY(0)}.btn-primary:disabled{background:linear-gradient(135deg,#a0aec0,#718096);box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.form-group{display:flex;flex-direction:column;gap:.3rem}.form-group label{color:#1e293b;font-size:.9rem;font-weight:600}.form-group input{background:#fff;border:2px solid #cbd5e1;border-radius:8px;color:#1e293b;font-size:1rem;padding:.875rem 1rem;transition:all .2s ease}.form-group input:focus{background:#fff;border-color:#0891b2;box-shadow:0 0 0 3px #0891b21a;outline:none}.form-group input:disabled{background-color:#edf2f7;cursor:not-allowed;opacity:.6}.auth-error{background-color:#fff5f5;border:2px solid #fed7d7;border-radius:8px;color:#e53e3e;font-size:.9rem;font-weight:500;margin-bottom:1rem;padding:.875rem 1rem}.auth-divider{align-items:center;color:#718096;display:flex;margin:.8rem 0;text-align:center}.auth-divider:after,.auth-divider:before{border-bottom:2px solid #e2e8f0;content:"";flex:1 1}.auth-divider span{font-size:.9rem;font-weight:500;padding:0 1rem}.google-login-wrapper{align-items:center;display:flex;flex-direction:column;margin-bottom:.5rem;width:100%}.custom-google-button{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;box-shadow:0 2px 8px #00000014;color:#1e293b;cursor:pointer;display:flex;font-size:1.05rem;font-weight:600;gap:1rem;justify-content:center;padding:1rem 1.5rem;transition:all .3s ease;width:100%}.custom-google-button:hover{background:#fff;border-color:#0891b2;box-shadow:0 4px 12px #0891b226;transform:translateY(-1px)}.custom-google-button:active{box-shadow:0 2px 6px #00000014;transform:translateY(0)}.google-icon{flex-shrink:0;height:24px;width:24px}.google-button-text{flex:0 0 auto;white-space:nowrap}.google-login-container{display:flex;justify-content:center;margin-bottom:1rem}[dir=rtl] .custom-google-button{flex-direction:row-reverse}.auth-switch{border-top:2px solid #e2e8f0;margin-top:.6rem;padding-top:.6rem;text-align:center}.auth-switch p{color:#718096;font-size:.9rem;font-weight:500;margin:0}.link-button{background:none;border:none;color:#0891b2;cursor:pointer;font-size:.9rem;font-weight:600;padding:0;text-decoration:none;transition:all .2s ease}.link-button:hover{color:#06b6d4;text-decoration:underline}.link-button:disabled{cursor:not-allowed;opacity:.5}.resend-email-btn{background-color:#48bb78;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:.9rem;font-weight:600;margin-top:12px;padding:.75rem 1.5rem;text-align:center;transition:all .2s ease;width:100%}.resend-email-btn:hover:not(:disabled){background-color:#38a169;box-shadow:0 2px 8px #48bb784d;transform:translateY(-1px)}.resend-email-btn:active:not(:disabled){box-shadow:0 1px 4px #48bb7833;transform:translateY(0)}.resend-email-btn:disabled{background-color:#a0aec0;cursor:not-allowed;opacity:.6}[dir=rtl] .auth-modal{text-align:right}[dir=rtl] .auth-switch p{text-align:center}[dir=rtl] .language-selector{left:1.25rem;right:auto}.verification-pending{padding:2rem 0;text-align:center}.verification-icon{animation:slideDown .5s ease;font-size:4rem;margin-bottom:1rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.verification-message{color:#1e293b;font-size:1.1rem;font-weight:600;margin-bottom:1rem}.verification-instructions{color:#718096;font-size:.95rem;line-height:1.6;margin-bottom:2rem}.verification-pending .btn-primary{margin-bottom:1rem;width:100%}.verification-pending .link-button{display:block;font-size:.95rem;margin-top:1rem}.auth-footer{border-top:1px solid #e2e8f0;margin-top:1.5rem;padding-top:1rem;text-align:center}.auth-footer p{color:#718096;font-size:.85rem;margin:0}.footer-link{color:#0891b2;font-weight:500;text-decoration:none;transition:all .2s ease}.footer-link:hover{color:#06b6d4;text-decoration:underline}.footer-link:active{color:#0891b2}[dir=rtl] .auth-footer{text-align:center}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.import-url-modal{background:#fff;border:2px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 16px #00000014;max-width:500px;padding:0;width:90%}.modal-header{align-items:center;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:2px solid #e2e8f0;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h2{color:#1e293b;font-size:1.5rem;font-weight:600;letter-spacing:-.3px;margin:0}.close-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:2rem;height:32px;justify-content:center;line-height:1;padding:0;width:32px}.close-btn:hover{color:#333}.import-url-form{padding:24px}.form-group{margin-bottom:24px}.input-label{color:#1e293b;display:block;font-size:.95rem;font-weight:600;margin-bottom:8px}.url-input{border:2px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#1e293b;font-size:1rem;padding:12px 16px;transition:all .2s ease;width:100%}.url-input:focus{border-color:#0891b2;box-shadow:0 0 0 3px #0891b21a;outline:none}.url-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.error-message{background-color:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;margin:16px 24px;padding:12px 16px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:16px}.cancel-btn,.import-btn{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;min-width:100px;padding:12px 28px;transition:all .2s}.cancel-btn{background-color:#f5f5f5;color:#333}.cancel-btn:hover:not(:disabled){background-color:#e0e0e0}.import-btn{background:linear-gradient(135deg,#0891b2,#06b6d4);box-shadow:0 4px 12px #0891b24d;color:#fff!important;line-height:1.5;text-align:center}.import-btn:hover:not(:disabled){background:linear-gradient(135deg,#06b6d4,#0891b2);box-shadow:0 6px 16px #0891b266;transform:translateY(-2px)}.cancel-btn:disabled,.import-btn:disabled{cursor:not-allowed;opacity:.6}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.loading-content{align-items:center;display:flex;flex-direction:column;gap:20px}.spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#4caf50;height:60px;width:60px}@keyframes spin{to{transform:rotate(1turn)}}.loading-message{color:#fff;font-size:18px;font-weight:500;margin:0;text-align:center}[dir=rtl] .loading-overlay{direction:rtl}.legal-documents-overlay{align-items:center;animation:fadeIn .3s ease-in-out;background-color:#0009;bottom:0;display:flex;justify-content:center;left:0;overflow:auto;position:fixed;right:0;top:0;z-index:999}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.legal-documents-container{animation:slideUp .3s ease-out;background-color:#fff;border-radius:12px;box-shadow:0 10px 50px #0003;margin:40px 0;max-height:90vh;max-width:900px;overflow-y:auto;position:relative;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.close-legal-btn{background:none;border:none;color:#999;cursor:pointer;float:right;font-size:32px;margin-top:12px;padding:12px;position:-webkit-sticky;position:sticky;right:20px;top:0;transition:all .2s ease;z-index:10}.close-legal-btn:hover{color:#333;transform:scale(1.2)}.legal-content{color:#333;line-height:1.8;padding:20px 40px 40px}.legal-content h1{border-bottom:3px solid #0891b2;color:#1a1a1a;font-size:32px;font-weight:700;margin-bottom:8px;padding-bottom:12px}.legal-content h2{color:#1a1a1a;font-size:20px;font-weight:700;margin-bottom:12px;margin-top:24px}.legal-content h3{color:#333;font-size:16px;font-weight:600;margin-bottom:8px;margin-top:16px}.legal-content p{font-size:14px;margin-bottom:12px}.legal-content ul{font-size:14px;margin:12px 0 12px 20px}.legal-content ul li{margin-bottom:8px}.last-updated,.legal-content section{margin-bottom:24px}.last-updated{color:#999;font-size:13px;font-style:italic}@media (max-width:768px){.legal-documents-container{max-height:95vh;width:95%}.legal-content{padding:12px 24px 24px}.legal-content h1{font-size:24px;margin-bottom:6px}.legal-content h2{font-size:18px;margin-bottom:8px;margin-top:16px}.legal-content h3{font-size:14px;margin-bottom:6px;margin-top:12px}.legal-content p{font-size:13px;margin-bottom:8px}.legal-content ul{font-size:13px;margin:8px 0 8px 16px}.legal-content ul li{margin-bottom:6px}.close-legal-btn{margin-top:8px;right:12px}}[dir=rtl] .legal-content{direction:rtl;text-align:right}[dir=rtl] .legal-content h1,[dir=rtl] .legal-content h2,[dir=rtl] .legal-content h3{text-align:right}[dir=rtl] .legal-content ul{margin-left:0;margin-right:20px}[dir=rtl] .close-legal-btn{float:left;left:20px;right:auto}
/*# sourceMappingURL=main.90a5ac00.css.map*/