/* Styles for Dad-Daughter page with pink-purple theme */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: "Microsoft YaHei", "SimHei", Arial, sans-serif; background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%); color: #2d3436; line-height: 1.8; font-size: 18px; min-height: 100vh; }
.container { max-width: 1200px; margin: 0 auto; padding: 15px; }
header { text-align: center; padding: 30px 20px; background: rgba(255, 255, 255, 0.98); border-radius: 20px; box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15); margin-bottom: 25px; }
header h1 { color: #e91e63; font-size: 2.8em; margin-bottom: 15px; text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1); }
header .subtitle { color: #9c27b0; font-size: 1.4em; margin-bottom: 10px; }
header .description { color: #7f8c8d; font-size: 1.1em; line-height: 1.6; }
.section { background: rgba(255, 255, 255, 0.98); padding: 30px; border-radius: 20px; margin-bottom: 25px; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12); }
.section h2 { color: #e91e63; font-size: 2em; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 3px solid #9c27b0; }
.upload-form { max-width: 600px; margin: 0 auto; }
.form-group { margin-bottom: 20px; }
.form-group label { display: block; color: #2d3436; font-size: 1.1em; margin-bottom: 8px; font-weight: bold; }
.form-group input, .form-group textarea { width: 100%; padding: 12px 15px; border: 2px solid #dfe6e9; border-radius: 10px; font-size: 1em; font-family: inherit; transition: border-color 0.3s ease; }
.form-group input:focus, .form-group textarea:focus { outline: none; border-color: #e91e63; }
.form-group textarea { resize: vertical; }
.submit-btn { width: 100%; padding: 15px; background: linear-gradient(135deg, #e91e63 0%, #c2185b 100%); color: white; border: none; border-radius: 10px; font-size: 1.2em; font-weight: bold; cursor: pointer; transition: transform 0.3s ease, box-shadow 0.3s ease; }
.submit-btn:hover { transform: translateY(-2px); box-shadow: 0 8px 16px rgba(233, 30, 99, 0.4); }
.vote-section { text-align: center; }
.vote-btn { display: inline-block; padding: 15px 40px; background: linear-gradient(135deg, #00b894 0%, #00a080 100%); color: white; text-decoration: none; border-radius: 10px; font-size: 1.3em; font-weight: bold; }
.loading-message { text-align: center; padding: 40px; font-size: 1.2em; color: #7f8c8d; }
.dishes-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 20px; }
.dish-card { background: linear-gradient(135deg, #fff0f5 0%, #ffe6f0 100%); padding: 20px; border-radius: 15px; border: 2px solid #f8bbd0; transition: all 0.3s ease; }
.dish-card h3 { color: #c2185b; font-size: 1.5em; margin-bottom: 10px; }
.dish-card .video-link { display: inline-block; margin: 10px 0; padding: 8px 15px; background: #e91e63; color: white; text-decoration: none; border-radius: 5px; font-size: 0.9em; }
.dish-card .description { color: #555; font-size: 0.95em; line-height: 1.6; margin-top: 10px; }
.dish-card .votes { margin-top: 15px; padding-top: 15px; border-top: 1px solid #ddd; color: #e91e63; font-weight: bold; font-size: 1.1em; }
.back-link { text-align: center; padding: 20px; }
.back-link a { color: white; text-decoration: none; font-size: 1.1em; padding: 10px 20px; background: rgba(0, 0, 0, 0.2); border-radius: 10px; }
@media (max-width: 768px) { body { font-size: 16px; } header h1 { font-size: 2.2em; } .dishes-list { grid-template-columns: 1fr; } }
