.ncf-container{font-family:'Hiragino Sans','Yu Gothic',sans-serif;line-height:1.6;max-width:1200px;margin:0 auto;padding:20px}.ncf-filters-wrapper{margin-bottom:20px;box-shadow:none;border:none;padding:0;background:0 0}.ncf-search-toggle{display:flex;align-items:center;background:#fff;border:1px solid #2c3e50;border-radius:8px;padding:15px 20px;cursor:pointer;transition:all .3s ease;margin-bottom:20px}.ncf-search-toggle:hover{background:#f8f9fa}.ncf-toggle-icon{margin-right:15px;font-size:18px}.ncf-toggle-text{flex:1;font-weight:500;color:#2c3e50;font-size:16px}.ncf-toggle-arrow{color:#2c3e50;font-size:12px;transition:transform .3s ease}.ncf-search-toggle.active .ncf-toggle-arrow{transform:rotate(180deg)}.ncf-filters-content{background:#fff;border:1px solid #e0e0e0;border-radius:0;padding:25px;margin-top:-25px;padding-top:25px;border-top:none;position:relative;z-index:1;display:none}.ncf-filters-wrapper.open .ncf-search-toggle{border-radius:0;border-bottom:1px solid #e0e0e0;margin-bottom:0}.ncf-filters-wrapper.open .ncf-filters-content{display:block;border:1px solid #2c3e50;border-top:none;border-radius:0}.ncf-filter-grid{display:grid;grid-template-columns:1fr;gap:30px;margin-bottom:30px}.ncf-filter-group{display:flex;flex-direction:column}.ncf-filter-group label{font-weight:600;margin-bottom:12px;color:#2c3e50;font-size:15px}.ncf-filter-buttons{display:flex;flex-wrap:wrap;gap:10px}.ncf-filter-btn{padding:8px 16px;border:1px solid #ddd;border-radius:20px;background:#fff;color:#666;font-size:14px;cursor:pointer;transition:all .2s ease}.ncf-filter-btn:hover{border-color:#2c3e50;background:#fff;color:#2c3e50}.ncf-filter-btn.active{background:#2c3e50;color:#fff;border-color:#2c3e50}.ncf-filter-btn:focus,.ncf-filter-btn:active{outline:none;box-shadow:none;background:#2c3e50;color:#fff;border-color:#2c3e50}.ncf-filter-actions{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.ncf-btn{padding:14px 28px;border:none;border-radius:0;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;text-decoration:none;display:inline-block;text-align:center;min-width:140px}.ncf-btn-primary{background:#2c3e50;color:#fff;box-shadow:0 3px 8px rgba(44,62,80,.2)}.ncf-btn-primary:hover{background:#1a252f;transform:translateY(-2px);box-shadow:0 5px 15px rgba(44,62,80,.4);color:#fff;text-decoration:none}.ncf-btn-primary:active,.ncf-btn-primary:focus{background:#2c3e50 !important;border-color:#2c3e50 !important;color:#fff !important;transform:translateY(0);box-shadow:0 2px 5px rgba(44,62,80,.3) !important;outline:none}.ncf-btn-secondary{background:#fff;color:#2c3e50;border:1px solid #ddd}.ncf-btn-secondary:hover{background:#f0f0f0;color:#2c3e50;transform:translateY(-1px);text-decoration:none}.ncf-btn:disabled{opacity:.6;cursor:not-allowed;transform:none !important}.ncf-results-count{margin:20px 0 15px;font-weight:600;color:#333;text-align:center;font-size:16px}.ncf-courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px;margin:30px 0}.ncf-course-card{background:#fff;border-radius:0;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.08);transition:all .3s ease;border:1px solid #f0f0f0;position:relative;display:flex;flex-direction:column;display:flex;flex-direction:column;height:auto}.ncf-course-card:hover{transform:translateY(-5px);box-shadow:0 12px 25px rgba(44,62,80,.15);border-color:#2c3e50}.ncf-course-image{width:100%;height:200px;background:#2c3e50;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.ncf-image-container{width:100%;height:100%;position:relative}.ncf-image-container img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.ncf-placeholder-image{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:16px;background:#2c3e50}.ncf-course-image:after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(44,62,80,.05);z-index:1}.ncf-course-tags{position:absolute;top:15px;left:15px;z-index:2;display:flex;flex-direction:column;gap:8px;align-items:flex-start}.ncf-course-info{padding:20px;display:flex;flex-direction:column;flex:1}.ncf-course-title{font-size:18px;font-weight:700;margin-bottom:12px;color:#2c3e50;line-height:1.4;min-height:50px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ncf-course-title a{color:#2c3e50;text-decoration:none;transition:color .3s ease}.ncf-course-title a:hover{color:#2c3e50;text-decoration:underline}.ncf-course-excerpt{font-size:14px;color:#6c757d;margin-bottom:5px;line-height:1.5;min-height:60px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ncf-course-meta{margin-bottom:20px;flex:1}.ncf-course-price{font-size:.9em;font-weight:600;color:#2c3e50;margin-bottom:12px}.ncf-course-details{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px}.ncf-tag{padding:4px 8px;border-radius:0;font-size:11px;font-weight:500;letter-spacing:.5px;white-space:nowrap;display:inline-block;color:#2c3e50;background:#ecf0f1}.ncf-tag-level.ncf-tag-beginner{background:#d5dbdb;color:#2c3e50}.ncf-tag-level.ncf-tag-intermediate{background:#bdc3c7;color:#2c3e50}.ncf-tag-level.ncf-tag-advanced{background:#95a5a6;color:#fff}.ncf-tag-subject{background:#34495e;color:#fff}.ncf-sessions,.ncf-format{font-size:12px;padding:6px 12px;background:#f8f9fa;color:#495057;border-radius:0;font-weight:500;display:inline-block;white-space:nowrap;border:1px solid #eee}.ncf-course-actions{padding:0;margin-top:auto}.ncf-course-actions .ncf-btn{display:block;width:100%;padding:12px 20px;font-size:14px;min-width:auto;margin:0}.ncf-error{background:#f8d7da;color:#721c24;padding:20px;border-radius:0;margin:20px 0;text-align:center;border:1px solid #f5c6cb}.ncf-no-results{text-align:center;padding:60px 20px;color:#6c757d;grid-column:1/-1}.ncf-no-results h3{font-size:20px;margin-bottom:10px;color:#495057}.ncf-loading{text-align:center;padding:40px;color:#6c757d;grid-column:1/-1}.ncf-spinner{display:inline-block;width:20px;height:20px;border:2px solid #2c3e50;border-radius:50%;border-top-color:transparent;animation:spin 1s linear infinite;margin-bottom:10px}@keyframes spin{to{transform:rotate(360deg)}}.ncf-loading.active{display:block}@media (max-width:768px){.ncf-container{padding:15px}.ncf-filters-wrapper{padding:20px 15px;margin-bottom:20px}.ncf-filter-grid{grid-template-columns:1fr;gap:15px}.ncf-filter-actions{flex-direction:column;gap:10px}.ncf-btn{padding:12px 20px;font-size:14px;min-width:auto;width:100%}.ncf-courses-grid{grid-template-columns:1fr;gap:20px;margin:20px 0}.ncf-course-card{margin:0 auto;max-width:400px}.ncf-course-image{height:180px}.ncf-course-info{padding:15px}.ncf-course-title{font-size:16px;min-height:40px}.ncf-course-excerpt{min-height:50px}.ncf-course-meta{gap:6px}.ncf-tag{font-size:10px;padding:4px 8px}}@media (max-width:480px){body .ncf-container{padding:10px !important}body .ncf-filters-wrapper{padding:15px 10px !important;border-radius:0 !important}body .ncf-courses-grid{grid-template-columns:1fr !important;gap:15px !important;padding:0 5px !important;display:grid !important}body .ncf-course-card{width:100% !important;max-width:none !important;margin:0 !important;min-height:480px !important;display:flex !important;flex-direction:column !important;box-sizing:border-box !important}body .ncf-course-image{height:auto !important;aspect-ratio:auto !important}body .ncf-image-container{height:auto !important;position:static !important}body .ncf-image-container img{height:auto !important;position:static !important;object-fit:cover !important}body .ncf-course-info{padding:12px !important;flex:1 !important;display:flex !important;flex-direction:column !important}body .ncf-course-title{font-size:15px !important;margin-bottom:8px !important;min-height:55px !important;line-height:1.3 !important}body .ncf-course-tags{margin-bottom:8px !important;min-height:28px !important;display:flex !important;align-items:flex-start !important}body .ncf-course-excerpt{min-height:55px !important;font-size:12px !important;flex:1 !important}body .ncf-course-price{font-size:18px !important}body .ncf-course-meta{margin-top:auto !important;padding-top:8px !important}body .ncf-tag{font-size:9px !important;padding:2px 5px !important}body .ncf-course-actions{margin-top:12px !important}}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ncf-course-card{animation:fadeIn .5s ease-out}.ncf-filter-buttons button:focus,.ncf-btn:focus{outline:2px solid #2c3e50;outline-offset:2px}@media (prefers-reduced-motion:reduce){.ncf-course-card{animation:none}.ncf-course-card:hover{transform:none}.ncf-btn:hover{transform:none}.ncf-spinner{animation:none}}@media print{.ncf-filters-wrapper,.ncf-filter-actions{display:none}.ncf-course-card{break-inside:avoid;box-shadow:none;border:1px solid #ddd}.ncf-course-card:hover{transform:none}}