.hero[data-v-ac57f118]{background:linear-gradient(135deg,#42b883,#35495e);color:#fff;padding:80px 20px;text-align:center}.hero h1[data-v-ac57f118]{font-size:48px;margin-bottom:16px}.hero p[data-v-ac57f118]{font-size:20px;opacity:.9;margin-bottom:32px}.hero-links[data-v-ac57f118]{display:flex;justify-content:center;gap:16px}.hero-btn[data-v-ac57f118]{display:inline-block;padding:14px 32px;background:#fff;color:#42b883;border-radius:8px;font-weight:600;font-size:16px;transition:transform .2s}.hero-btn[data-v-ac57f118]:hover{transform:translateY(-2px);text-decoration:none}.card h2[data-v-ac57f118]{margin-bottom:12px;color:#666}.card p[data-v-ac57f118]{color:#999}.login-page[data-v-541dfe21]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.login-card[data-v-541dfe21]{background:#fff;padding:40px;border-radius:16px;box-shadow:0 20px 60px #0003;width:100%;max-width:400px}.login-card h1[data-v-541dfe21]{text-align:center;margin-bottom:32px;color:#333}.error[data-v-541dfe21]{color:#e74c3c;font-size:14px;margin-bottom:16px}button[data-v-541dfe21]{width:100%;padding:14px;font-size:16px}button[data-v-541dfe21]:disabled{opacity:.7;cursor:not-allowed}.page-header[data-v-a184c000]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h1[data-v-a184c000]{color:#333}.filters[data-v-a184c000]{display:flex;gap:16px;margin-bottom:24px}.filters input[data-v-a184c000]{flex:1}.filters select[data-v-a184c000]{width:150px}.loading[data-v-a184c000],.empty[data-v-a184c000]{text-align:center;padding:60px;color:#999}.recipe-grid[data-v-a184c000]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.recipe-card[data-v-a184c000]{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #00000014;cursor:pointer;transition:transform .2s,box-shadow .2s}.recipe-card[data-v-a184c000]:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.recipe-image[data-v-a184c000]{height:180px;background:#f5f5f5;overflow:hidden}.recipe-image img[data-v-a184c000]{width:100%;height:100%;object-fit:cover}.no-image[data-v-a184c000]{height:100%;display:flex;align-items:center;justify-content:center;font-size:48px;opacity:.3}.recipe-info[data-v-a184c000]{padding:16px}.category-tag[data-v-a184c000]{display:inline-block;padding:4px 10px;background:#e8f5e9;color:#42b883;border-radius:20px;font-size:12px;margin-bottom:8px}.recipe-info h3[data-v-a184c000]{margin-bottom:8px;color:#333}.recipe-preview[data-v-a184c000]{font-size:14px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-header[data-v-1b599601]{margin-bottom:24px}textarea[data-v-1b599601]{min-height:120px}.image-upload[data-v-1b599601]{margin-top:8px}.image-preview[data-v-1b599601]{position:relative;display:inline-block}.image-preview img[data-v-1b599601]{max-width:300px;max-height:200px;border-radius:8px}.remove-image[data-v-1b599601]{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;background:#e74c3c;color:#fff;font-size:16px;padding:0;line-height:1}.upload-area[data-v-1b599601]{border:2px dashed #ddd;border-radius:8px;padding:40px;text-align:center;cursor:pointer;transition:border-color .2s}.upload-area[data-v-1b599601]:hover{border-color:#42b883}.upload-area span[data-v-1b599601]{color:#999}.upload-status[data-v-1b599601]{margin-top:8px;color:#42b883;font-size:14px}.btn-group[data-v-1b599601]{display:flex;gap:12px}.btn-group a[data-v-1b599601]{text-decoration:none}.loading[data-v-03749bdb]{text-align:center;padding:60px;color:#999}.detail-header[data-v-03749bdb]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.back-link[data-v-03749bdb]{color:#666;font-size:14px}.actions[data-v-03749bdb]{display:flex;gap:12px}.detail-content[data-v-03749bdb]{overflow:hidden}.detail-image[data-v-03749bdb]{height:300px;margin:-24px -24px 24px;overflow:hidden}.detail-image img[data-v-03749bdb]{width:100%;height:100%;object-fit:cover}.category-tag[data-v-03749bdb]{display:inline-block;padding:4px 12px;background:#e8f5e9;color:#42b883;border-radius:20px;font-size:13px;margin-bottom:12px}.detail-info h1[data-v-03749bdb]{font-size:28px;margin-bottom:24px;color:#333}.section[data-v-03749bdb]{margin-bottom:28px}.section h2[data-v-03749bdb]{font-size:18px;color:#42b883;margin-bottom:12px}.section ul[data-v-03749bdb],.section ol[data-v-03749bdb]{padding-left:24px}.section li[data-v-03749bdb]{margin-bottom:8px;color:#555}.notes[data-v-03749bdb]{color:#666;background:#fafafa;padding:16px;border-radius:8px;white-space:pre-wrap}.meta[data-v-03749bdb]{margin-top:32px;padding-top:16px;border-top:1px solid #eee;font-size:13px;color:#999}.navbar[data-v-5847c5dc]{background:#fff;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #0000000f;position:sticky;top:0;z-index:100}.nav-brand a[data-v-5847c5dc]{font-size:18px;font-weight:600;color:#333}.nav-links[data-v-5847c5dc]{display:flex;align-items:center;gap:24px}.nav-links a[data-v-5847c5dc]{color:#666;font-weight:500}.nav-links a[data-v-5847c5dc]:hover,.nav-links a.router-link-active[data-v-5847c5dc]{color:#42b883}.logout-btn[data-v-5847c5dc]{background:none;color:#999;padding:6px 12px;font-size:14px}.logout-btn[data-v-5847c5dc]:hover{color:#e74c3c}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#f5f5f5;color:#333;line-height:1.6}a{color:#42b883;text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;border:none;padding:10px 20px;border-radius:6px;font-size:14px;transition:all .2s}button.primary{background:#42b883;color:#fff}button.primary:hover{background:#379469}button.secondary{background:#e0e0e0;color:#333}button.secondary:hover{background:#d0d0d0}button.danger{background:#e74c3c;color:#fff}button.danger:hover{background:#c0392b}input,textarea,select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}input:focus,textarea:focus,select:focus{outline:none;border-color:#42b883}textarea{resize:vertical;min-height:100px}.container{max-width:1200px;margin:0 auto;padding:20px}.card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:24px;margin-bottom:20px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#555}.btn-group{display:flex;gap:10px;margin-top:20px}
