body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f5f5;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app{min-height:100vh;padding-bottom:20px}.navigation{background-color:#2c3e50;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:center;padding:0}.navigation button{background:none;border:none;color:#fff;cursor:pointer;font-size:16px;opacity:.8;padding:15px 30px;position:relative;transition:all .3s}.navigation button:hover{background-color:#34495e;opacity:1}.navigation button.active{background-color:#3498db;font-weight:600;opacity:1}.navigation button.active:after{background:#fff;bottom:0;content:"";height:3px;left:0;position:absolute;right:0}.main-page{margin:0 auto;max-width:1400px;padding:20px}.main-page h1{color:#2c3e50;margin-bottom:20px;text-align:center}.week-navigation{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;display:flex;gap:20px;justify-content:center;margin-bottom:30px;padding:20px}.week-nav-btn{background:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background .3s}.week-nav-btn:hover:not(:disabled){background:#2980b9}.week-nav-btn:disabled{background:#95a5a6;cursor:not-allowed;opacity:.6}.week-display{min-width:250px;text-align:center}.week-display.clickable{border-radius:8px;cursor:pointer;padding:10px;transition:background .3s}.week-display.clickable:hover{background:#f0f0f0}.week-title{color:#2c3e50;font-size:20px;font-weight:700;margin-bottom:5px}.week-dates{color:#7f8c8d;font-size:14px;margin-bottom:5px}.week-stats{color:#3498db;font-size:13px;font-weight:500}.week-picker-modal{background:#fff;border-radius:12px;max-height:500px;max-width:400px;overflow-y:auto;padding:20px;width:90%}.week-picker-modal.mobile{max-width:none;width:95%}.week-picker-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.week-picker-header h3{color:#2c3e50;margin:0}.week-picker-list{display:flex;flex-direction:column;gap:10px}.week-picker-item{align-items:center;background:#f8f9fa;border:2px solid #0000;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:15px;transition:all .3s}.week-picker-item.selected,.week-picker-item:hover{background:#e3f2fd;border-color:#3498db}.current-badge{background:#27ae60;border-radius:4px;color:#fff;font-size:11px;font-weight:700;padding:4px 8px}.check-mark{color:#3498db;font-size:20px;font-weight:700}.week-actions{display:flex;gap:10px;justify-content:center;margin-bottom:20px}.week-action-btn{background:#fff;border:2px solid #3498db;border-radius:5px;color:#2c3e50;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .3s}.week-action-btn:hover{background:#3498db;color:#fff}.week-action-btn:disabled{cursor:not-allowed;opacity:.5}.day-actions{display:flex;gap:5px;justify-content:center;margin-bottom:10px}.day-action-btn{background:#ecf0f1;border:1px solid #bdc3c7;border-radius:3px;cursor:pointer;font-size:12px;padding:4px 8px;transition:all .3s}.day-action-btn:hover{background:#3498db;border-color:#3498db}.day-action-btn:disabled{cursor:not-allowed;opacity:.5}.dish-icon{font-size:14px;margin-right:5px}.dish-item[draggable=true]{cursor:move;transition:opacity .3s}.dish-item[draggable=true]:hover{background:#2980b9;transform:scale(1.02)}.dish-item[draggable=true]:active{cursor:grabbing}.meal-slot{transition:all .3s}.meal-slot.drag-over{background:#e8f6ff;border:2px dashed #3498db;transform:scale(1.02)}.meal-slot.drag-over .meal-header{color:#3498db;font-weight:700}.print-view{background:#fff;margin:0 auto;max-width:1000px;padding:20px}.print-header{margin-bottom:30px;text-align:center}.print-header h1{color:#2c3e50;margin-bottom:10px}.print-header p{color:#7f8c8d;font-size:16px}.print-table{border-collapse:collapse;margin-bottom:30px;width:100%}.print-table td,.print-table th{border:1px solid #ddd;padding:12px;text-align:left}.print-table th{color:#2c3e50}.print-table .day-name,.print-table th{background:#f8f9fa;font-weight:700}.print-actions{display:flex;gap:20px;justify-content:center}.print-actions button{background:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;padding:10px 20px}.print-actions button:hover{background:#2980b9}@media print{.add-btn,.day-actions,.main-actions,.navigation,.no-print,.remove-btn,.week-actions,.week-navigation{display:none!important}.print-view{padding:0}.print-table{page-break-inside:avoid}.dish-item{background:none!important;color:#000!important;padding:2px!important}body{print-color-adjust:exact;-webkit-print-color-adjust:exact}}.calendar-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(7,1fr);margin-bottom:30px}.day-column{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:10px}.day-column h3{color:#2c3e50;font-size:14px;margin-bottom:10px;text-align:center}.meal-slot{background:#f8f9fa;border-radius:5px;margin-bottom:15px;padding:10px}.meal-header{color:#7f8c8d;font-size:12px;font-weight:700;margin-bottom:8px}.dishes-list{margin-bottom:8px;min-height:40px}.dish-item{align-items:center;background:#3498db;border-radius:3px;color:#fff;display:flex;font-size:13px;justify-content:space-between;margin-bottom:5px;padding:5px 8px}.remove-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:18px;margin-left:5px;padding:0}.add-btn{background:#ecf0f1;border:1px dashed #bdc3c7;border-radius:3px;color:#7f8c8d;cursor:pointer;font-size:13px;padding:8px;transition:all .3s;width:100%}.add-btn:hover{background:#3498db;border-color:#3498db;color:#fff}.generate-list-btn{background:#27ae60;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:18px;padding:15px 40px;transition:background .3s}.generate-list-btn:hover{background:#229954}.main-actions{display:flex;gap:20px;justify-content:center;margin-top:30px}.clear-week-btn{background:#95a5a6;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:18px;padding:15px 40px;transition:background .3s}.clear-week-btn:hover{background:#7f8c8d}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:#fff;border-radius:10px;max-height:85vh;max-width:900px;overflow-y:auto;padding:20px;width:90%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.modal-header h2{color:#2c3e50}.close-btn{background:none;border:none;color:#7f8c8d;cursor:pointer;font-size:30px}.modal-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.search-input{flex:1 1;min-width:200px}.filter-select,.search-input{border:1px solid #ddd;border-radius:5px;font-size:16px;padding:10px}.filter-select{background:#fff;cursor:pointer}.dish-count{color:#7f8c8d;font-size:14px;margin-bottom:15px}.dishes-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.dish-card{background:#f8f9fa;border:2px solid #0000;border-radius:8px;cursor:pointer;padding:15px;position:relative;transition:all .3s}.dish-card:hover:not(.dish-disabled){border-color:#3498db;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.dish-card.dish-disabled{background:#e9ecef;cursor:not-allowed;opacity:.5}.dish-card.dish-disabled:hover{border-color:#0000;box-shadow:none;transform:none}.dish-added-badge{background:#27ae60;border-radius:4px;color:#fff;font-size:11px;font-weight:700;padding:4px 8px;position:absolute;right:10px;top:10px}.dish-card h3{color:#2c3e50;font-size:16px;margin-bottom:8px}.dish-category{color:#3498db;margin-bottom:4px}.dish-category,.dish-cuisine{font-size:13px;text-transform:capitalize}.dish-cuisine{color:#7f8c8d}.dish-ingredients{color:#95a5a6;font-size:12px;margin-top:5px}.no-dishes{color:#7f8c8d;grid-column:1/-1;padding:40px;text-align:center}.no-dishes p{margin:10px 0}.dishes-page{margin:0 auto;max-width:1000px;padding:20px}.dishes-page h1{color:#2c3e50;margin-bottom:30px;text-align:center}.add-dish-section{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px;padding:25px}.add-dish-section h2{color:#2c3e50;margin-bottom:20px}.add-dish-section input[type=text],.add-dish-section select{border:1px solid #ddd;border-radius:5px;font-size:16px;margin-bottom:15px;padding:10px;width:100%}.ingredients-section{margin-top:20px}.ingredients-section h3{color:#2c3e50;margin-bottom:15px}.ingredient-input{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr auto;margin-bottom:15px}.ingredient-input button{background:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 20px}.ingredients-list{list-style:none;padding:0}.ingredients-list li{background:#ecf0f1;border-radius:3px;margin-bottom:5px;padding:8px 12px}.save-dish-btn{background:#27ae60;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:16px;margin-top:20px;padding:12px;width:100%}.save-dish-btn:hover{background:#229954}.existing-dishes{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;padding:25px}.existing-dishes h2{color:#2c3e50;margin-bottom:20px}.dish-item-full{align-items:center;background:#f8f9fa;border-radius:5px;display:flex;justify-content:space-between;margin-bottom:10px;padding:15px}.dish-info h3{color:#2c3e50;margin-bottom:5px}.dish-info p{color:#7f8c8d;font-size:14px}.delete-btn{background:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:8px 16px}.delete-btn:hover{background:#c0392b}.grocery-page{margin:0 auto;max-width:800px;padding:20px}.grocery-page h1{color:#2c3e50;margin-bottom:20px;text-align:center}.grocery-actions{display:flex;gap:15px;justify-content:center;margin-bottom:25px}.generate-btn,.history-btn{border:none;border-radius:5px;cursor:pointer;font-size:16px;padding:10px 20px;transition:all .3s}.generate-btn{background:#3498db;color:#fff}.generate-btn:hover{background:#2980b9}.history-btn{background:#95a5a6;color:#fff}.history-btn:hover{background:#7f8c8d}.no-list{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;padding:50px;text-align:center}.no-list p{color:#7f8c8d;margin:10px 0}.list-header{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.list-info h3{color:#2c3e50;margin-bottom:5px}.list-info p{color:#7f8c8d;font-size:14px}.list-progress{margin-top:15px}.progress-text{color:#2c3e50;font-size:14px;margin-bottom:8px}.progress-bar{background:#ecf0f1;border-radius:10px;height:20px;overflow:hidden;width:100%}.progress-fill{border-radius:10px;height:100%;transition:width .3s ease}.store-section{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.store-section h2{border-bottom:2px solid #ecf0f1;color:#2c3e50;margin-bottom:15px;padding-bottom:10px}.items-list{list-style:none;padding:0}.grocery-item{align-items:center;border-bottom:1px solid #ecf0f1;display:flex;padding:10px}.grocery-item:last-child{border-bottom:none}.grocery-item input[type=checkbox]{cursor:pointer;height:18px;margin-right:12px;width:18px}.grocery-item span{color:#2c3e50;font-size:16px}.grocery-item span.checked{color:#95a5a6;text-decoration:line-through}.complete-shopping-btn{background:#27ae60;border:none;border-radius:5px;color:#fff;cursor:pointer;display:block;font-size:18px;font-weight:700;margin:30px auto;max-width:400px;padding:15px;transition:background .3s;width:100%}.complete-shopping-btn:hover{background:#229954}.view-toggle{margin-bottom:20px;text-align:center}.toggle-btn{background:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;padding:10px 20px}.no-history{background:#fff;border-radius:10px;color:#7f8c8d;padding:50px;text-align:center}.history-list{display:flex;flex-direction:column;gap:15px}.history-card{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;padding:20px}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.history-header h3{color:#2c3e50}.delete-history-btn{background:none;border:none;cursor:pointer;font-size:20px;opacity:.6;transition:opacity .3s}.delete-history-btn:hover{opacity:1}.history-info{margin-bottom:15px}.history-info p{color:#7f8c8d;font-size:14px;margin:5px 0}.history-stats{background:#f8f9fa;border-radius:5px;display:flex;gap:20px;margin-bottom:15px;padding:15px}.stat-item{flex:1 1;text-align:center}.stat-label{color:#7f8c8d;display:block;font-size:12px;margin-bottom:5px}.stat-value{color:#2c3e50;display:block;font-size:18px;font-weight:700}.history-details{margin-top:15px}.history-details summary{background:#f8f9fa;border-radius:5px;color:#3498db;cursor:pointer;font-size:14px;padding:10px}.history-details summary:hover{background:#ecf0f1}.history-items{background:#f8f9fa;border-radius:5px;margin-top:15px;padding:15px}.history-store{margin-bottom:15px}.history-store h4{color:#2c3e50;font-size:14px;margin-bottom:10px}.history-store ul{list-style:none;padding-left:15px}.history-store li{color:#2c3e50;font-size:13px;margin:5px 0}.history-store li.checked{color:#95a5a6;text-decoration:line-through}.settings-page{margin:0 auto;max-width:600px;padding:20px}.settings-page h1{color:#2c3e50;margin-bottom:30px;text-align:center}.settings-section{background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.settings-section h2{color:#2c3e50;font-size:18px;margin-bottom:10px}.settings-section p{color:#7f8c8d;font-size:14px;margin-bottom:15px}.storage-info{margin-top:10px}.storage-bar{background:#ecf0f1;border-radius:10px;height:20px;margin-bottom:10px;overflow:hidden;width:100%}.storage-used{background:linear-gradient(90deg,#3498db,#2980b9);height:100%;transition:width .3s ease}.action-btn,.clear-btn,.export-btn,.import-btn{border:none;border-radius:5px;cursor:pointer;display:inline-block;font-size:16px;margin-bottom:10px;margin-right:10px;padding:12px 24px;transition:all .3s}.action-btn,.export-btn{background:#3498db;color:#fff}.action-btn:hover,.export-btn:hover{background:#2980b9}.import-btn{background:#27ae60;color:#fff}.import-btn:hover{background:#229954}.clear-btn{background:#e74c3c;color:#fff}.clear-btn:hover{background:#c0392b}.quick-actions{display:flex;flex-wrap:wrap;gap:10px}.danger-zone{background:#fff5f5;border:2px solid #e74c3c}.danger-zone h2{color:#e74c3c}.status-message{border-radius:5px;font-weight:500;margin:20px auto;max-width:600px;padding:12px;text-align:center}.status-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.app.mobile{padding-bottom:60px}.app-content{min-height:calc(100vh - 60px)}.mobile-navigation{background:#fff;border-top:1px solid #e0e0e0;bottom:0;box-shadow:0 -2px 10px #0000001a;display:flex;height:65px;justify-content:space-around;left:0;padding:8px 0;position:fixed;right:0;z-index:100}.mobile-navigation button{align-items:center;background:none;border:none;color:#95a5a6;display:flex;flex:1 1;flex-direction:column;gap:2px;justify-content:center;padding:5px;position:relative;transition:all .3s}.mobile-navigation button.active{color:#3498db}.mobile-navigation button.active:before{transform:translateX(-50%) scale(1)}.mobile-navigation .nav-icon{font-size:24px;transition:all .3s}.mobile-navigation button.active .nav-icon{font-size:22px}.mobile-navigation .nav-label{font-size:11px;font-weight:600;height:0;opacity:0;transition:all .3s}.mobile-navigation button.active .nav-label{height:auto;opacity:1}.app.mobile{padding-bottom:65px}.app-content{min-height:calc(100vh - 65px)}.mobile-fixed-actions{bottom:65px}.mobile-main-page{background:#f5f5f5;min-height:calc(100vh - 65px);padding:0 0 120px;position:relative}.mobile-header{background:#2c3e50;color:#fff;padding:15px;position:-webkit-sticky;position:sticky;top:0;z-index:50}.week-nav-mobile{align-items:center;display:flex;justify-content:space-between}.week-nav-mobile button{background:none;border:none;color:#fff;cursor:pointer;font-size:24px;padding:5px 10px}.week-nav-mobile button:disabled{cursor:not-allowed;opacity:.4}.week-display-mobile{flex:1 1;text-align:center}.week-display-mobile.clickable{border-radius:5px;cursor:pointer;padding:5px;transition:background .3s}.week-display-mobile.clickable:active{background:#ffffff1a}.week-title-mobile{font-size:18px;font-weight:500}.day-selector{background:#fff;border-bottom:1px solid #e0e0e0;display:flex;gap:8px;overflow-x:auto;padding:15px}.day-pill{background:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;min-width:45px;padding:8px;position:relative;text-align:center;transition:all .3s}.day-pill.selected{background:#3498db;border-color:#3498db;color:#fff}.day-check{align-items:center;background:#27ae60;border-radius:50%;color:#fff;display:flex;font-size:12px;font-weight:700;height:20px;justify-content:center;left:-8px;position:absolute;top:-8px;width:20px}.day-name{font-size:14px;font-weight:600;margin-bottom:2px}.day-date{font-size:16px;font-weight:500}.day-badge{background:#e74c3c;border-radius:10px;color:#fff;font-size:10px;font-weight:700;padding:2px 6px;position:absolute;right:-5px;top:-5px}.mobile-days-content{flex:1 1;overflow-y:auto;padding:15px 15px 80px}.no-days-selected{color:#7f8c8d;padding:50px 20px;text-align:center}.mobile-day-card{background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000001a;margin-bottom:15px;padding:15px}.mobile-day-header{color:#2c3e50;font-size:16px;font-weight:600}.mobile-day-header,.mobile-day-header-row{border-bottom:2px solid #f0f0f0;margin-bottom:15px;padding-bottom:10px}.mobile-day-header-row{align-items:center;display:flex;justify-content:space-between}.mobile-day-title{color:#2c3e50;font-size:16px;font-weight:600;margin:0}.collapse-btn{align-items:center;background:#ecf0f1;border:none;border-radius:50%;color:#7f8c8d;cursor:pointer;display:flex;font-size:14px;height:30px;justify-content:center;transition:all .3s;width:30px}.collapse-btn:hover{background:#3498db;color:#fff}.mobile-meals-container{animation:fadeIn .3s ease-in}.mobile-meal-slot{margin-bottom:20px}.mobile-meal-header{color:#7f8c8d;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.mobile-dishes-container{display:flex;flex-direction:column;gap:8px}.mobile-dish-item{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;display:flex;font-size:14px;justify-content:space-between;padding:12px}.mobile-dish-item:nth-child(odd){background:linear-gradient(135deg,#f093fb,#f5576c)}.mobile-dish-item:nth-child(2n){background:linear-gradient(135deg,#4facfe,#00f2fe)}.mobile-remove-btn{align-items:center;background:#ffffff4d;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:18px;height:24px;justify-content:center;width:24px}.mobile-add-btn{background:#f0f0f0;border:2px dashed #d0d0d0;border-radius:8px;color:#7f8c8d;cursor:pointer;font-size:20px;padding:12px;transition:all .3s;width:100%}.mobile-add-btn:hover{background:#e0e0e0;border-color:#3498db;color:#3498db}.mobile-fixed-actions{box-shadow:0 -2px 10px #0000000d;left:0;padding:10px 15px;position:fixed;right:0;z-index:99}.mobile-bottom-actions,.mobile-fixed-actions{background:#fff;border-top:1px solid #e0e0e0;bottom:60px;display:flex;gap:10px}.mobile-bottom-actions{padding:15px;position:-webkit-sticky;position:sticky}.mobile-action-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px;transition:all .3s}.mobile-action-btn.generate{background:#27ae60;color:#fff}.mobile-action-btn.clear{background:#95a5a6;color:#fff}@media (max-width:768px){.desktop,.navigation{display:none}.dishes-page,.grocery-page,.settings-page{padding:15px 15px 140px}.dishes-page h1,.grocery-page h1,.settings-page h1{font-size:24px;margin-bottom:20px}.ingredient-input{gap:10px}.dishes-grid,.ingredient-input{grid-template-columns:1fr}.modal-content{max-height:90vh;padding:15px;width:95%}.modal-filters{flex-direction:column}.filter-select,.search-input{width:100%}}@media (min-width:769px){.mobile-main-page,.mobile-navigation{display:none}}@media (max-width:1200px){.calendar-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:768px){.calendar-grid{grid-template-columns:repeat(2,1fr)}.navigation{flex-direction:column}.navigation button{border-bottom:1px solid #34495e;width:100%}.dishes-grid,.ingredient-input{grid-template-columns:1fr}}@media (max-width:480px){.calendar-grid{grid-template-columns:1fr}}.alert-overlay{align-items:center;animation:fadeIn .2s ease-in;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}.alert-overlay.closing{animation:fadeOut .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.alert-box{animation:slideUp .3s cubic-bezier(.34,1.56,.64,1);background:#fff;border-left:5px solid;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-height:85vh;max-width:420px;overflow-y:auto;padding:28px;position:relative;text-align:center;width:100%}.alert-box.closing{animation:slideDown .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideDown{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(30px) scale(.95)}}.alert-close-btn{align-items:center;background:none;border:none;border-radius:50%;color:#95a5a6;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;line-height:1;padding:0;position:absolute;right:12px;top:12px;transition:all .3s;width:32px}.alert-close-btn:hover{background:#f0f0f0;color:#2c3e50;transform:rotate(90deg)}.alert-icon{animation:iconBounce .5s cubic-bezier(.34,1.56,.64,1);font-size:56px;line-height:1;margin-bottom:18px}@keyframes iconBounce{0%{transform:scale(0) rotate(-180deg)}50%{transform:scale(1.15) rotate(10deg)}to{transform:scale(1) rotate(0)}}.alert-title{color:#2c3e50;font-size:22px;font-weight:700;letter-spacing:-.3px;margin:0 0 12px}.alert-message{color:#5a6c7d;font-size:15px;line-height:1.6;margin:0 0 24px;white-space:pre-wrap}.alert-progress{background:#f0f0f0;border-radius:0 0 16px 16px;bottom:0;height:3px;left:0;overflow:hidden;position:absolute;right:0}.alert-progress-bar{animation:progressBar linear forwards;height:100%}@keyframes progressBar{0%{width:100%}to{width:0}}.alert-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.alert-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;letter-spacing:.3px;min-width:100px;overflow:hidden;padding:11px 28px;position:relative;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.alert-btn:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.alert-btn:active:before{height:300px;width:300px}.alert-btn-icon{font-size:18px}.alert-btn-primary{background:#3498db;box-shadow:0 4px 14px #3498db4d;color:#fff}.alert-btn-primary:hover{box-shadow:0 6px 20px #3498db66;transform:translateY(-2px)}.alert-btn-primary:active{transform:translateY(0)}.alert-btn-secondary{background:#ecf0f1;box-shadow:0 2px 8px #00000014;color:#2c3e50}.alert-btn-secondary:hover{background:#d5dbdd;box-shadow:0 4px 12px #0000001f;transform:translateY(-1px)}.alert-btn-danger{background:#e74c3c!important;box-shadow:0 4px 14px #e74c3c4d}.alert-btn-danger:hover{background:#c0392b!important;box-shadow:0 6px 20px #e74c3c66}.alert-success{border-left-color:#27ae60}.alert-error{border-left-color:#e74c3c}.alert-warning{border-left-color:#f39c12}.alert-info{border-left-color:#3498db}.alert-confirm{border-left-color:#9b59b6}.alert-box:focus{outline:2px solid #3498db;outline-offset:2px}.alert-btn:focus-visible{outline:2px solid #2c3e50;outline-offset:2px}@media (max-width:480px){.alert-overlay{padding:15px}.alert-box{border-radius:12px;max-width:100%;padding:20px}.alert-icon{font-size:42px;margin-bottom:14px}.alert-title{font-size:18px;margin-bottom:10px}.alert-message{font-size:14px;margin-bottom:20px}.alert-actions{flex-direction:column;width:100%}.alert-btn{font-size:14px;padding:12px;width:100%}.alert-close-btn{font-size:24px;height:28px;right:8px;top:8px;width:28px}}@media (prefers-color-scheme:dark){.alert-box{background:#2c3e50;color:#fff}.alert-title{color:#fff}.alert-message{color:#bdc3c7}.alert-btn-secondary{background:#34495e;color:#fff}.alert-btn-secondary:hover{background:#2c3e50}.alert-close-btn{color:#bdc3c7}.alert-close-btn:hover{background:#34495e;color:#fff}}
/*# sourceMappingURL=main.8e9d7a18.css.map*/