/
semka5
/
semka
Обзор
Документация
Войти
/
semka5
/
semka
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
fronted/styles.css
1 024 строки
21 KB
semka5
Загрузить файлы в «»
08 дек 2025, 23:38
08 дек 2025, 23:38
d51f041
Код
Авторство
О чём код?
* { margin: 0; padding: 0; box-sizing: border-box; } :root { --primary-pink: #ff85a2; --light-pink: #ffb6c1; --pastel-pink: #ffd1dc; --lilac: #d8bfd8; --light-lilac: #e6e6fa; --lavender: #e6e6ff; --cream: #fffaf0; --soft-white: #fefefe; --text-dark: #5a4a6d; --text-light: #8a7a9b; --shadow: rgba(216, 191, 216, 0.3); --shadow-hover: rgba(216, 191, 216, 0.5); } body { font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; line-height: 1.6; color: var(--text-dark); background: linear-gradient(135deg, var(--cream) 0%, var(--lavender) 50%, var(--pastel-pink) 100%); min-height: 100vh; } .container { max-width: 1200px; margin: 0 auto; padding: 0 20px; } .header { background: linear-gradient(135deg, var(--lilac) 0%, var(--primary-pink) 100%); box-shadow: 0 4px 20px var(--shadow); position: sticky; top: 0; z-index: 1000; backdrop-filter: blur(10px); } .navbar { display: flex; justify-content: space-between; align-items: center; padding: 1rem 0; } .nav-brand h1 { color: var(--soft-white); font-size: 2rem; font-weight: 700; text-shadow: 2px 2px 4px rgba(0,0,0,0.1); } .nav-links { display: flex; align-items: center; gap: 1.5rem; } .nav-link { color: var(--soft-white); text-decoration: none; font-weight: 500; transition: all 0.3s ease; padding: 0.75rem 1.5rem; border-radius: 25px; background: rgba(255, 255, 255, 0.1); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.2); } .nav-link:hover, .nav-link.active { background: rgba(255, 255, 255, 0.2); transform: translateY(-2px); box-shadow: 0 5px 15px rgba(255, 255, 255, 0.2); } .btn-primary { background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); color: var(--soft-white); border: none; padding: 1rem 2rem; border-radius: 25px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 4px 15px var(--shadow); text-transform: uppercase; letter-spacing: 0.5px; } .btn-primary:hover { transform: translateY(-3px); box-shadow: 0 8px 25px var(--shadow-hover); background: linear-gradient(135deg, var(--lilac) 0%, var(--primary-pink) 100%); } .btn-secondary { background: linear-gradient(135deg, var(--light-lilac) 0%, var(--pastel-pink) 100%); color: var(--text-dark); border: none; padding: 0.75rem 1.5rem; border-radius: 20px; font-weight: 600; cursor: pointer; transition: all 0.3s ease; box-shadow: 0 3px 10px var(--shadow); } .btn-secondary:hover { background: linear-gradient(135deg, var(--pastel-pink) 0%, var(--light-lilac) 100%); transform: translateY(-2px); box-shadow: 0 5px 15px var(--shadow-hover); } .hero-section { background: linear-gradient(135deg, rgba(255, 133, 162, 0.9) 0%, rgba(216, 191, 216, 0.9) 100%); color: var(--soft-white); padding: 6rem 0; text-align: center; position: relative; overflow: hidden; } .hero-section::before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><polygon fill="rgba(255,255,255,0.1)" points="0,1000 1000,0 1000,1000"/></svg>'); background-size: cover; } .hero-title { font-size: 3.5rem; margin-bottom: 1.5rem; text-shadow: 2px 2px 4px rgba(0,0,0,0.1); position: relative; animation: slideInFromTop 1s ease-out; } .hero-description { font-size: 1.3rem; opacity: 0.95; margin-bottom: 2.5rem; max-width: 600px; margin-left: auto; margin-right: auto; position: relative; animation: slideInFromBottom 1s ease-out 0.2s both; } .hero-section .btn-primary { position: relative; animation: fadeInUp 1s ease-out 0.4s both; } .features-section { padding: 5rem 0; background: linear-gradient(135deg, var(--cream) 0%, var(--soft-white) 100%); } .features-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 2.5rem; margin-top: 3rem; } .feature-card { background: var(--soft-white); padding: 2.5rem; border-radius: 20px; text-align: center; box-shadow: 0 8px 25px var(--shadow); transition: all 0.3s ease; border: 1px solid var(--light-lilac); position: relative; overflow: hidden; animation: fadeIn 1s ease-out; } .feature-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); } .feature-card:hover { transform: translateY(-10px) scale(1.02); box-shadow: 0 20px 40px var(--shadow-hover); } .feature-icon { font-size: 3.5rem; margin-bottom: 1.5rem; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .feature-card h4 { color: var(--text-dark); margin-bottom: 1rem; font-size: 1.4rem; } .feature-card p { color: var(--text-light); line-height: 1.6; } .products-preview-section { padding: 5rem 0; background: linear-gradient(135deg, var(--lavender) 0%, var(--cream) 100%); } .products-preview-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 2rem; margin-top: 3rem; } .preview-product-card { background: var(--soft-white); padding: 2.5rem; border-radius: 20px; text-align: center; box-shadow: 0 8px 25px var(--shadow); transition: all 0.3s ease; border: 1px solid var(--light-lilac); position: relative; overflow: hidden; } .preview-product-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); } .preview-product-card:hover { transform: translateY(-8px); box-shadow: 0 15px 35px var(--shadow-hover); } .preview-product-icon { font-size: 4rem; margin-bottom: 1.5rem; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .preview-product-card h4 { color: var(--text-dark); margin-bottom: 1rem; font-size: 1.5rem; } .preview-product-card p { color: var(--text-light); line-height: 1.6; } .products-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 2rem; margin-top: 2rem; } .product-card { background: var(--soft-white); border-radius: 20px; overflow: hidden; box-shadow: 0 8px 25px var(--shadow); transition: all 0.3s ease; border: 1px solid var(--light-lilac); animation: slideInFromRight 0.6s ease-out; position: relative; } .product-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); } .product-card:hover { transform: translateY(-8px) scale(1.02); box-shadow: 0 15px 35px var(--shadow-hover); } .product-image { width: 100%; height: 220px; object-fit: cover; transition: transform 0.3s ease; } .product-card:hover .product-image { transform: scale(1.05); } .product-info { padding: 1.8rem; } .product-title { font-size: 1.3rem; font-weight: 600; margin-bottom: 0.8rem; color: var(--text-dark); } .product-price { font-size: 1.8rem; font-weight: bold; color: var(--primary-pink); margin-bottom: 0.8rem; } .product-description { color: var(--text-light); margin-bottom: 1.2rem; line-height: 1.5; display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; } .product-category { background: linear-gradient(135deg, var(--light-lilac) 0%, var(--pastel-pink) 100%); color: var(--text-dark); padding: 0.4rem 1rem; border-radius: 15px; font-size: 0.9rem; display: inline-block; font-weight: 500; } .dashboard-grid { display: grid; gap: 2.5rem; margin-top: 2rem; } .stats-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 1.5rem; } .stat-card { background: var(--soft-white); padding: 2.5rem; border-radius: 20px; text-align: center; box-shadow: 0 8px 25px var(--shadow); transition: all 0.3s ease; border: 1px solid var(--light-lilac); position: relative; overflow: hidden; } .stat-card::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); } .stat-card:hover { transform: translateY(-5px); box-shadow: 0 12px 30px var(--shadow-hover); } .stat-value { font-size: 3rem; font-weight: bold; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin-bottom: 0.5rem; } .stat-label { color: var(--text-light); font-weight: 500; font-size: 1.1rem; } .chart-card { background: var(--soft-white); padding: 2.5rem; border-radius: 20px; box-shadow: 0 8px 25px var(--shadow); border: 1px solid var(--light-lilac); } .reviews-list { display: grid; gap: 1.5rem; } .review-card { background: var(--soft-white); padding: 2rem; border-radius: 15px; box-shadow: 0 5px 20px var(--shadow); transition: all 0.3s ease; border: 1px solid var(--light-lilac); animation: slideInFromRight 0.5s ease-out; position: relative; } .review-card::before { content: ''; position: absolute; top: 0; left: 0; bottom: 0; width: 4px; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); border-radius: 15px 0 0 15px; } .review-card:hover { transform: translateX(8px); box-shadow: 0 8px 25px var(--shadow-hover); } .review-header { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 1rem; } .review-author { font-weight: 600; color: var(--text-dark); font-size: 1.1rem; } .review-stars { color: #ffd700; font-weight: bold; font-size: 1.2rem; } .review-product { color: var(--primary-pink); font-weight: 500; font-size: 1.1rem; } .auth-body { background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 50%, var(--light-lilac) 100%); min-height: 100vh; display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; } .auth-body::before { content: ''; position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle fill="rgba(255,255,255,0.1)" cx="50" cy="50" r="2"/></svg>') repeat; animation: float 20s infinite linear; } @keyframes float { 0% { transform: translate(0, 0) rotate(0deg); } 100% { transform: translate(-50px, -50px) rotate(360deg); } } .auth-container { width: 100%; max-width: 450px; padding: 2rem; position: relative; z-index: 1; } .auth-card { background: rgba(255, 255, 255, 0.95); padding: 3rem; border-radius: 25px; box-shadow: 0 20px 50px rgba(0,0,0,0.1); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.3); animation: slideInFromBottom 0.6s ease-out; } .auth-title { text-align: center; margin-bottom: 2.5rem; color: var(--text-dark); font-size: 2.2rem; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; } .auth-form { display: flex; flex-direction: column; gap: 1.5rem; } .form-group { display: flex; flex-direction: column; } .form-group label { margin-bottom: 0.8rem; font-weight: 600; color: var(--text-dark); font-size: 1.1rem; } .form-group input, .form-group textarea, .form-group select { padding: 1rem 1.2rem; border: 2px solid var(--light-lilac); border-radius: 15px; font-size: 1rem; transition: all 0.3s ease; background: var(--soft-white); color: var(--text-dark); } .form-group input:focus, .form-group textarea:focus, .form-group select:focus { outline: none; border-color: var(--primary-pink); box-shadow: 0 0 0 3px rgba(255, 133, 162, 0.1); transform: translateY(-2px); } .auth-btn { width: 100%; margin-top: 1.5rem; font-size: 1.1rem; padding: 1.2rem; } .auth-switch { text-align: center; margin-top: 2rem; color: var(--text-light); } .auth-switch a { color: var(--primary-pink); text-decoration: none; font-weight: 600; transition: color 0.3s ease; } .auth-switch a:hover { color: var(--lilac); text-decoration: underline; } .auth-message { margin-top: 1.5rem; padding: 1rem; border-radius: 15px; text-align: center; font-weight: 500; font-size: 1.1rem; } .auth-message.success { background: linear-gradient(135deg, #d4ffd4 0%, #e8f5e8 100%); color: #2d5a2d; border: 2px solid #c3e6c3; } .auth-message.error { background: linear-gradient(135deg, #ffd4d4 0%, #f5e8e8 100%); color: #5a2d2d; border: 2px solid #f5c6cb; } .modal { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(90, 74, 109, 0.8); animation: fadeIn 0.3s ease; backdrop-filter: blur(5px); } .modal-content { background: var(--soft-white); margin: 5% auto; padding: 2.5rem; border-radius: 25px; width: 90%; max-width: 500px; position: relative; animation: slideInFromBottom 0.4s ease; box-shadow: 0 20px 50px rgba(0,0,0,0.2); border: 1px solid var(--light-lilac); } .close { position: absolute; right: 1.5rem; top: 1.5rem; font-size: 1.8rem; cursor: pointer; color: var(--text-light); transition: color 0.3s ease; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--light-lilac); } .close:hover { color: var(--primary-pink); background: var(--pastel-pink); } .form-actions { display: flex; gap: 1rem; justify-content: flex-end; margin-top: 2rem; } .loader { border: 4px solid var(--light-lilac); border-top: 4px solid var(--primary-pink); border-radius: 50%; width: 50px; height: 50px; animation: spin 1s linear infinite; margin: 2rem auto; } .page-title { font-size: 2.8rem; text-align: center; margin-bottom: 1rem; background: linear-gradient(135deg, var(--primary-pink) 0%, var(--lilac) 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-shadow: 2px 2px 4px rgba(0,0,0,0.1); } .page-subtitle { text-align: center; color: var(--text-light); font-size: 1.2rem; margin-bottom: 3rem; } .filters-section { display: flex; justify-content: space-between; align-items: center; margin-bottom: 2rem; gap: 1rem; flex-wrap: wrap; } .search-box input { padding: 1rem 1.5rem; border: 2px solid var(--light-lilac); border-radius: 25px; font-size: 1rem; width: 300px; max-width: 100%; transition: all 0.3s ease; background: var(--soft-white); } .search-box input:focus { outline: none; border-color: var(--primary-pink); box-shadow: 0 0 0 3px rgba(255, 133, 162, 0.1); } .sort-options select { padding: 1rem 1.5rem; border: 2px solid var(--light-lilac); border-radius: 25px; font-size: 1rem; background: var(--soft-white); color: var(--text-dark); cursor: pointer; transition: all 0.3s ease; } .sort-options select:focus { outline: none; border-color: var(--primary-pink); box-shadow: 0 0 0 3px rgba(255, 133, 162, 0.1); } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } @keyframes fadeInUp { from { opacity: 0; transform: translateY(30px); } to { opacity: 1; transform: translateY(0); } } @keyframes slideInFromTop { from { opacity: 0; transform: translateY(-50px); } to { opacity: 1; transform: translateY(0); } } @keyframes slideInFromBottom { from { opacity: 0; transform: translateY(50px); } to { opacity: 1; transform: translateY(0); } } @keyframes slideInFromRight { from { opacity: 0; transform: translateX(50px); } to { opacity: 1; transform: translateX(0); } } @keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } } .footer { background: linear-gradient(135deg, var(--lilac) 0%, var(--primary-pink) 100%); color: var(--soft-white); text-align: center; padding: 3rem 0; margin-top: 4rem; } .footer p { font-size: 1.1rem; text-shadow: 1px 1px 2px rgba(0,0,0,0.1); } .decorative-circle { position: absolute; border-radius: 50%; background: radial-gradient(circle, var(--light-pink) 0%, transparent 70%); opacity: 0.3; animation: float 6s ease-in-out infinite; } .decorative-circle:nth-child(1) { width: 100px; height: 100px; top: 10%; left: 5%; animation-delay: 0s; } .decorative-circle:nth-child(2) { width: 150px; height: 150px; top: 60%; right: 10%; animation-delay: 2s; } .decorative-circle:nth-child(3) { width: 80px; height: 80px; bottom: 20%; left: 15%; animation-delay: 4s; } @keyframes float { 0%, 100% { transform: translateY(0px) rotate(0deg); } 50% { transform: translateY(-20px) rotate(180deg); } } @media (max-width: 768px) { .navbar { flex-direction: column; gap: 1.5rem; } .nav-links { flex-wrap: wrap; justify-content: center; gap: 1rem; } .nav-link { padding: 0.6rem 1.2rem; font-size: 0.9rem; } .hero-title { font-size: 2.5rem; } .hero-description { font-size: 1.1rem; } .features-grid { grid-template-columns: 1fr; gap: 2rem; } .products-preview-grid { grid-template-columns: 1fr; } .products-grid { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); } .stats-cards { grid-template-columns: 1fr; } .filters-section { flex-direction: column; align-items: stretch; } .search-box input { width: 100%; } .modal-content { margin: 10% auto; width: 95%; padding: 2rem; } .auth-card { padding: 2rem; } .page-title { font-size: 2.2rem; } } @media (max-width: 480px) { .container { padding: 0 15px; } .hero-section { padding: 4rem 0; } .products-grid { grid-template-columns: 1fr; } .feature-card, .product-card, .stat-card, .review-card, .preview-product-card { padding: 1.5rem; } .auth-container { padding: 1rem; } .btn-primary, .btn-secondary { padding: 0.9rem 1.5rem; font-size: 1rem; } } .password-strength { height: 4px; background: var(--light-lilac); border-radius: 2px; margin-top: 5px; overflow: hidden; } .password-strength-meter { height: 100%; width: 0%; transition: all 0.3s ease; border-radius: 2px; } .password-strength.weak .password-strength-meter { background: #ff6b6b; width: 33%; } .password-strength.medium .password-strength-meter { background: #ffa726; width: 66%; } .password-strength.strong .password-strength-meter { background: #66bb6a; width: 100%; } .password-requirements { font-size: 12px; color: var(--text-light); margin-top: 5px; } .password-requirement { display: flex; align-items: center; gap: 5px; margin: 2px 0; } .requirement-met { color: #66bb6a; } .requirement-not-met { color: #ff6b6b; } @keyframes confetti { 0% { transform: translateY(0) rotate(0deg); opacity: 1; } 100% { transform: translateY(100vh) rotate(360deg); opacity: 0; } } .confetti { position: fixed; width: 10px; height: 20px; background: var(--primary-pink); opacity: 0; animation: confetti 2s ease-out forwards; z-index: 1000; }