/* ═══════════════════════════════════════════════════
   HesapMatik — app.css v2.1.0
   Bootstrap 5.3 üzerine custom stiller
   Step 5+6: CSS Modernizasyonu + Sayfa Stilleri
   ═══════════════════════════════════════════════════ */

/* ─── NAVBAR ─── */
.hm-navbar { position: fixed; top: 0; left: 0; right: 0; height: var(--hm-navbar-height); background: var(--hm-dark); z-index: 1050; display: flex; align-items: center; box-shadow: 0 2px 8px rgba(0,0,0,.15); }

.hm-navbar__brand { display: flex; align-items: center; gap: 8px; color: #fff; text-decoration: none; font-size: 1.2rem; letter-spacing: -.5px; white-space: nowrap; margin-right: 24px; transition: opacity var(--hm-transition); }
.hm-navbar__brand i { font-size: 1.4rem; color: var(--hm-primary); }
.hm-navbar__brand strong { color: var(--hm-primary); }
.hm-navbar__brand:hover { color: #fff; opacity: .9; }

.hm-navbar__search { flex: 0 1 320px; margin-right: auto; }
.hm-search-box { position: relative; }
.hm-search-box i { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: #94a3b8; font-size: .9rem; pointer-events: none; }
.hm-search-input { width: 100%; height: 38px; border: 1px solid #475569; border-radius: 20px; background: #334155; color: #e2e8f0; padding: 0 16px 0 36px; font-size: .88rem; outline: none; transition: var(--hm-transition); }
.hm-search-input:focus { border-color: var(--hm-primary); background: #1e293b; box-shadow: 0 0 0 3px rgba(26,86,219,.25); }
.hm-search-input::placeholder { color: #94a3b8; }

.hm-navbar__nav { display: flex; align-items: center; gap: 4px; margin-left: auto; }

.hm-nav-link { display: flex; align-items: center; gap: 6px; padding: 8px 12px; color: #cbd5e1; background: none; border: none; border-radius: 6px; font-size: .85rem; cursor: pointer; transition: var(--hm-transition); white-space: nowrap; text-decoration: none; }
.hm-nav-link:hover, .hm-nav-link:focus { color: #fff; background: rgba(255,255,255,.08); }
.hm-nav-arrow { font-size: .65rem; transition: transform var(--hm-transition); }

/* Dropdown */
.hm-nav-dropdown { position: relative; }
.hm-nav-dropdown:hover .hm-dropdown-menu,
.hm-nav-dropdown:focus-within .hm-dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.hm-nav-dropdown:hover .hm-nav-arrow { transform: rotate(180deg); }

.hm-dropdown-menu { position: absolute; top: 100%; left: 0; min-width: 240px; background: var(--hm-white); border-radius: var(--hm-radius); box-shadow: var(--hm-shadow-md); border: 1px solid var(--hm-border); padding: 8px 0; opacity: 0; visibility: hidden; transform: translateY(8px); transition: all var(--hm-transition); z-index: 1060; }

.hm-dropdown-header { padding: 10px 16px; font-size: .8rem; font-weight: 600; color: var(--hm-text-light); border-bottom: 1px solid var(--hm-border); display: flex; align-items: center; gap: 8px; }
.hm-dropdown-header i { font-size: 1rem; }

.hm-dropdown-item { display: block; padding: 8px 16px; color: var(--hm-text); font-size: .88rem; text-decoration: none; transition: var(--hm-transition); }
.hm-dropdown-item:hover { background: var(--hm-primary-light); color: var(--hm-primary); padding-left: 20px; }

/* Mobil butonlar */
.hm-mobile-btn { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; color: #cbd5e1; background: none; border: none; border-radius: 6px; font-size: 1.3rem; cursor: pointer; transition: var(--hm-transition); }
.hm-mobile-btn:hover { color: #fff; background: rgba(255,255,255,.1); }

/* ─── MOBİL ARAMA ─── */
.hm-mobile-search { position: fixed; top: var(--hm-navbar-height); left: 0; right: 0; background: var(--hm-dark); padding: 12px 0; transform: translateY(-100%); opacity: 0; transition: all 250ms ease; z-index: 1040; box-shadow: 0 4px 12px rgba(0,0,0,.2); }
.hm-mobile-search.open { transform: translateY(0); opacity: 1; }
.hm-mobile-search form { display: flex; gap: 8px; }
.hm-mobile-search__input { flex: 1; height: 42px; border: 1px solid #475569; border-radius: 8px; background: #334155; color: #e2e8f0; padding: 0 16px; font-size: .95rem; outline: none; }
.hm-mobile-search__input:focus { border-color: var(--hm-primary); }
.hm-mobile-search__btn { width: 42px; height: 42px; border: none; border-radius: 8px; background: var(--hm-primary); color: #fff; font-size: 1.1rem; cursor: pointer; transition: var(--hm-transition); }
.hm-mobile-search__btn:hover { background: var(--hm-primary-hover); }

/* ─── MOBİL OFFCANVAS MENÜ ─── */
.hm-offcanvas { position: fixed; top: 0; right: -300px; width: 300px; height: 100vh; background: var(--hm-white); z-index: 1070; transition: right 300ms ease; overflow-y: auto; box-shadow: -4px 0 20px rgba(0,0,0,.15); }
.hm-offcanvas.open { right: 0; }
.hm-offcanvas__header { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; border-bottom: 1px solid var(--hm-border); }
.hm-offcanvas__title { font-weight: 600; font-size: 1rem; color: var(--hm-dark); }
.hm-offcanvas__close { width: 36px; height: 36px; border: none; background: none; border-radius: 6px; font-size: 1.1rem; color: var(--hm-text-light); cursor: pointer; display: flex; align-items: center; justify-content: center; transition: var(--hm-transition); }
.hm-offcanvas__close:hover { background: var(--hm-bg); color: #ef4444; }
.hm-offcanvas__body { padding: 12px 0; }

.hm-mobile-cat__toggle { display: flex; align-items: center; gap: 10px; width: 100%; padding: 12px 20px; border: none; border-bottom: 1px solid var(--hm-border); background: none; color: var(--hm-text); font-size: .92rem; font-weight: 500; cursor: pointer; text-decoration: none; text-align: left; transition: var(--hm-transition); }
.hm-mobile-cat__toggle:hover { background: var(--hm-bg); }
.hm-mobile-cat__toggle i:first-child { font-size: 1.1rem; width: 24px; text-align: center; }
.hm-mobile-cat__toggle span { flex: 1; }
.hm-mobile-cat__arrow { font-size: .7rem; color: var(--hm-text-light); transition: transform var(--hm-transition); }
.hm-mobile-cat.open .hm-mobile-cat__arrow { transform: rotate(180deg); }

.hm-mobile-cat__items { max-height: 0; overflow: hidden; transition: max-height 300ms ease; background: var(--hm-bg); }
.hm-mobile-cat.open .hm-mobile-cat__items { max-height: 600px; }
.hm-mobile-cat__link { display: block; padding: 8px 20px 8px 54px; color: var(--hm-text); font-size: .88rem; text-decoration: none; transition: var(--hm-transition); }
.hm-mobile-cat__link:hover { color: var(--hm-primary); background: var(--hm-primary-light); }

.hm-offcanvas-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,.4); z-index: 1065; opacity: 0; visibility: hidden; transition: all 300ms ease; }
.hm-offcanvas-backdrop.show { opacity: 1; visibility: visible; }

/* ─── BREADCRUMB ─── */
.hm-breadcrumb-bar { background: var(--hm-white); border-bottom: 1px solid var(--hm-border); padding: 10px 0; }
.hm-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; list-style: none; margin: 0; padding: 0; }
.hm-breadcrumb__item { display: flex; align-items: center; gap: 4px; font-size: .84rem; color: var(--hm-text-light); }
.hm-breadcrumb__item a { color: var(--hm-primary); text-decoration: none; }
.hm-breadcrumb__item a:hover { text-decoration: underline; }
.hm-breadcrumb__item.active { color: var(--hm-text); font-weight: 500; }
.hm-breadcrumb__sep { font-size: .6rem; color: var(--hm-text-light); }

/* ─── SIDEBAR ─── */
.hm-sidebar { position: sticky; top: calc(var(--hm-navbar-height) + 24px); }
.hm-sidebar__section { background: var(--hm-white); border-radius: var(--hm-radius); border: 1px solid var(--hm-border); margin-bottom: 16px; overflow: hidden; }
.hm-sidebar__heading { display: flex; align-items: center; gap: 8px; padding: 14px 16px; margin: 0; font-size: .9rem; font-weight: 600; color: var(--hm-dark); border-bottom: 1px solid var(--hm-border); background: var(--hm-bg); }
.hm-sidebar__heading i { font-size: 1rem; }
.hm-sidebar__list { list-style: none; padding: 6px 0; margin: 0; }
.hm-sidebar__list li a { display: flex; align-items: center; gap: 6px; padding: 7px 16px; color: var(--hm-text); font-size: .85rem; text-decoration: none; transition: var(--hm-transition); border-left: 3px solid transparent; }
.hm-sidebar__list li a:hover,
.hm-sidebar__list li a.active { color: var(--hm-primary); background: var(--hm-primary-light); border-left-color: var(--hm-primary); }
.hm-badge-new { font-size: .65rem; background: #ef4444; color: #fff; padding: 1px 6px; border-radius: 10px; font-weight: 600; margin-left: auto; }

.hm-sidebar__ad { margin-bottom: 16px; }

/* ─── CALCULATOR CARD ─── */
.hm-calc-card { background: var(--hm-white); border-radius: var(--hm-radius-lg); border: 1px solid var(--hm-border); overflow: hidden; box-shadow: var(--hm-shadow); }
.hm-calc-card__header { background: linear-gradient(135deg, var(--hm-primary), #2563eb); color: #fff; padding: 20px 24px; }
.hm-calc-card__header h1 { margin: 0; font-size: 1.35rem; font-weight: 600; }
.hm-calc-card__header p { margin: 6px 0 0; font-size: .88rem; opacity: .85; }
.hm-calc-card__body { padding: 24px; }

/* Form */
.hm-form-group { margin-bottom: 18px; }
.hm-form-label { display: block; margin-bottom: 6px; font-size: .88rem; font-weight: 500; color: var(--hm-dark); }
.hm-form-control { width: 100%; height: 44px; padding: 0 14px; border: 1px solid var(--hm-border); border-radius: var(--hm-radius); font-size: .95rem; color: var(--hm-text); background: var(--hm-white); transition: var(--hm-transition); }
.hm-form-control:focus { border-color: var(--hm-primary); box-shadow: 0 0 0 3px rgba(26,86,219,.15); outline: none; }
.hm-form-select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 14px center; padding-right: 36px; cursor: pointer; }
.hm-form-textarea { height: auto; padding: 12px 14px; resize: vertical; min-height: 120px; line-height: 1.6; }

.hm-input-group { display: flex; }
.hm-input-group .hm-form-control { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.hm-input-group__text { display: flex; align-items: center; padding: 0 14px; background: var(--hm-bg); border: 1px solid var(--hm-border); border-left: none; border-radius: 0 var(--hm-radius) var(--hm-radius) 0; font-size: .88rem; color: var(--hm-text-light); white-space: nowrap; }

.hm-char-count { text-align: right; font-size: .78rem; color: var(--hm-text-light); margin-top: 4px; }

/* Buttons */
.hm-btn-calculate { display: inline-flex; align-items: center; justify-content: center; gap: 8px; width: 100%; max-width: 280px; margin: 24px auto 0; padding: 12px 28px; background: var(--hm-primary); color: #fff; border: none; border-radius: var(--hm-radius); font-size: 1rem; font-weight: 600; cursor: pointer; transition: all var(--hm-transition); }
.hm-btn-calculate:hover { background: var(--hm-primary-hover); transform: translateY(-1px); box-shadow: 0 4px 12px rgba(26,86,219,.3); }
.hm-btn-calculate:active { transform: translateY(0); }
.hm-btn-calculate:disabled { opacity: .6; cursor: not-allowed; transform: none; }

.hm-btn-reset { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; padding: 8px 16px; background: none; border: 1px solid var(--hm-border); border-radius: var(--hm-radius); font-size: .85rem; color: var(--hm-text-light); cursor: pointer; transition: var(--hm-transition); }
.hm-btn-reset:hover { border-color: #ef4444; color: #ef4444; }

/* ─── RESULT CARD ─── */
.hm-result { display: none; margin-top: 24px; padding: 24px; background: linear-gradient(135deg, #f0fdf4, #ecfdf5); border: 1px solid #86efac; border-radius: var(--hm-radius-lg); animation: hmFadeIn 300ms ease; }
.hm-result.show { display: block; }
.hm-result__title { font-size: 1rem; font-weight: 600; color: var(--hm-dark); margin-bottom: 16px; text-align: center; }
.hm-result__value { font-size: 2rem; font-weight: 700; color: #16a34a; text-align: center; margin-bottom: 16px; }
.hm-result__table { width: 100%; }
.hm-result__table td { padding: 8px 0; border-bottom: 1px solid rgba(0,0,0,.06); font-size: .9rem; }
.hm-result__table td:first-child { color: var(--hm-text-light); }
.hm-result__table td:last-child { text-align: right; font-weight: 500; color: var(--hm-dark); }
.hm-result__table tr:last-child td { border-bottom: none; font-weight: 700; font-size: 1rem; }

@keyframes hmFadeIn { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
@keyframes hmSlideUp { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }

/* ─── CONTENT AREA (araç altı SEO içerik) ─── */
.hm-content-area { margin-top: 24px; padding: 24px; background: var(--hm-white); border-radius: var(--hm-radius-lg); border: 1px solid var(--hm-border); }
.hm-content-area h2 { font-size: 1.2rem; font-weight: 600; color: var(--hm-dark); margin: 24px 0 12px; }
.hm-content-area h2:first-child { margin-top: 0; }
.hm-content-area p { font-size: .92rem; line-height: 1.7; color: var(--hm-text); margin-bottom: 12px; }
.hm-content-area a { color: var(--hm-primary); }
.hm-content-area ul, .hm-content-area ol { padding-left: 24px; margin-bottom: 12px; }
.hm-content-area li { margin-bottom: 4px; font-size: .92rem; }

/* ─── HOME PAGE ─── */
.hm-hero { text-align: center; padding: 48px 0 32px; animation: hmFadeIn 400ms ease; }
.hm-hero h1 { font-size: 1.8rem; font-weight: 700; color: var(--hm-dark); margin-bottom: 12px; }
.hm-hero p { font-size: 1.05rem; color: var(--hm-text-light); max-width: 560px; margin: 0 auto 24px; }
.hm-hero__search { max-width: 500px; margin: 0 auto; }
.hm-hero__search .input-group { box-shadow: var(--hm-shadow-md); border-radius: var(--hm-radius-lg); overflow: hidden; }
.hm-hero__search .form-control { height: 50px; border: 2px solid var(--hm-border); font-size: 1rem; }
.hm-hero__search .form-control:focus { border-color: var(--hm-primary); box-shadow: none; }
.hm-hero__search .btn { padding: 0 24px; }

/* Stats Bar */
.hm-stats { display: flex; justify-content: center; gap: 32px; padding: 20px 0 36px; flex-wrap: wrap; animation: hmFadeIn 500ms ease; }
.hm-stats__item { display: flex; align-items: center; gap: 8px; color: var(--hm-text-light); font-size: .9rem; }
.hm-stats__item i { font-size: 1.2rem; color: var(--hm-primary); }
.hm-stats__num { font-weight: 700; color: var(--hm-dark); font-size: 1.05rem; }
.hm-stats__label { font-size: .85rem; }

/* Tool Grid */
.hm-cat-section { margin-bottom: 36px; animation: hmSlideUp 400ms ease both; }
.hm-cat-section:nth-child(2) { animation-delay: 50ms; }
.hm-cat-section:nth-child(3) { animation-delay: 100ms; }
.hm-cat-section:nth-child(4) { animation-delay: 150ms; }
.hm-cat-section:nth-child(5) { animation-delay: 200ms; }

.hm-cat-title { display: flex; align-items: center; gap: 10px; font-size: 1.15rem; font-weight: 600; color: var(--hm-dark); margin-bottom: 16px; padding-bottom: 10px; border-bottom: 2px solid var(--hm-border); }
.hm-cat-title i { font-size: 1.3rem; }
.hm-cat-title__link { margin-left: auto; font-size: .82rem; font-weight: 500; color: var(--hm-primary); text-decoration: none; display: flex; align-items: center; gap: 4px; transition: var(--hm-transition); white-space: nowrap; }
.hm-cat-title__link:hover { gap: 8px; }

.hm-tool-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 12px; }
.hm-tool-grid--lg { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 16px; }

.hm-tool-card { display: flex; align-items: center; gap: 12px; padding: 14px 16px; background: var(--hm-white); border: 1px solid var(--hm-border); border-radius: var(--hm-radius); text-decoration: none; color: var(--hm-text); transition: all var(--hm-transition); }
.hm-tool-card:hover { border-color: var(--hm-primary); box-shadow: var(--hm-shadow-md); color: var(--hm-primary); transform: translateY(-2px); }
.hm-tool-card__icon { width: 40px; height: 40px; border-radius: 8px; display: flex; align-items: center; justify-content: center; font-size: 1.2rem; color: #fff; flex-shrink: 0; transition: transform var(--hm-transition); }
.hm-tool-card:hover .hm-tool-card__icon { transform: scale(1.05); }
.hm-tool-card__info { flex: 1; min-width: 0; }
.hm-tool-card__name { font-size: .9rem; font-weight: 500; line-height: 1.3; display: block; }
.hm-tool-card__desc { font-size: .78rem; color: var(--hm-text-light); display: block; margin-top: 2px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hm-tool-card__meta { font-size: .75rem; color: var(--hm-text-light); display: block; margin-top: 2px; }
.hm-tool-card__arrow { margin-left: auto; color: var(--hm-text-light); font-size: .8rem; opacity: 0; transition: all var(--hm-transition); flex-shrink: 0; }
.hm-tool-card:hover .hm-tool-card__arrow { opacity: 1; transform: translateX(4px); }

.hm-tool-card--lg { padding: 18px 20px; }
.hm-tool-card--lg .hm-tool-card__icon { width: 48px; height: 48px; font-size: 1.3rem; }
.hm-tool-card--lg .hm-tool-card__name { font-size: .95rem; }

/* Popular Section */
.hm-popular-section { margin-bottom: 36px; }

/* SEO Section */
.hm-seo-section { background: var(--hm-white); border-radius: var(--hm-radius-lg); border: 1px solid var(--hm-border); padding: 28px; margin-bottom: 24px; }
.hm-seo-section h2 { font-size: 1.2rem; font-weight: 600; color: var(--hm-dark); margin: 0 0 12px; }
.hm-seo-section p { font-size: .92rem; line-height: 1.7; color: var(--hm-text); margin-bottom: 8px; }
.hm-seo-section p:last-child { margin-bottom: 0; }

/* Empty State */
.hm-empty-state { text-align: center; padding: 60px 20px; }
.hm-empty-state i { font-size: 3rem; color: var(--hm-text-light); margin-bottom: 16px; display: block; }
.hm-empty-state h3 { font-size: 1.2rem; color: var(--hm-dark); margin-bottom: 8px; }
.hm-empty-state p { color: var(--hm-text-light); margin-bottom: 20px; }

/* ─── PAGE HEADER (İletişim, Arama, Kategori) ─── */
.hm-page-header { text-align: center; padding: 32px 0 24px; animation: hmFadeIn 400ms ease; }
.hm-page-header h1 { font-size: 1.6rem; font-weight: 700; color: var(--hm-dark); margin-bottom: 8px; display: flex; align-items: center; justify-content: center; gap: 10px; }
.hm-page-header h1 i { color: var(--hm-primary); }
.hm-page-header p { font-size: .95rem; color: var(--hm-text-light); max-width: 500px; margin: 0 auto; }
.hm-page-header__count { display: inline-block; margin-top: 8px; font-size: .82rem; font-weight: 500; color: var(--hm-white); background: var(--cat-color, var(--hm-primary)); padding: 3px 12px; border-radius: 20px; }
.hm-page-header--cat h1 i { color: var(--cat-color, var(--hm-primary)); }

/* ─── CONTACT PAGE ─── */
.hm-contact-card { background: var(--hm-white); border-radius: var(--hm-radius-lg); border: 1px solid var(--hm-border); overflow: hidden; box-shadow: var(--hm-shadow); animation: hmSlideUp 400ms ease; }
.hm-contact-card__body { padding: 28px; }

.hm-contact-info { margin-top: 24px; animation: hmSlideUp 500ms ease; }
.hm-contact-info__item { display: flex; align-items: center; gap: 10px; padding: 16px; background: var(--hm-white); border-radius: var(--hm-radius); border: 1px solid var(--hm-border); text-align: center; justify-content: center; }
.hm-contact-info__item i { font-size: 1.2rem; color: var(--hm-primary); }
.hm-contact-info__item span { font-size: .9rem; color: var(--hm-text); }

/* ─── SEARCH PAGE ─── */
.hm-search-form-page { margin-bottom: 24px; }
.hm-search-form-page .input-group { box-shadow: var(--hm-shadow-md); border-radius: var(--hm-radius-lg); overflow: hidden; }
.hm-search-form-page .form-control { height: 48px; border: 2px solid var(--hm-border); font-size: 1rem; }
.hm-search-form-page .form-control:focus { border-color: var(--hm-primary); box-shadow: none; }
.hm-search-form-page .btn { padding: 0 20px; }

.hm-search-info { font-size: .92rem; color: var(--hm-text-light); margin-bottom: 16px; }

.hm-search-results { display: flex; flex-direction: column; gap: 10px; }
.hm-search-result-card { display: flex; align-items: center; padding: 16px 20px; background: var(--hm-white); border: 1px solid var(--hm-border); border-radius: var(--hm-radius); text-decoration: none; color: var(--hm-text); transition: all var(--hm-transition); }
.hm-search-result-card:hover { border-color: var(--hm-primary); box-shadow: var(--hm-shadow-md); transform: translateY(-1px); }
.hm-search-result-card__body { flex: 1; min-width: 0; }
.hm-search-result-card__title { font-size: 1rem; font-weight: 600; color: var(--hm-dark); margin: 0 0 4px; }
.hm-search-result-card__cat { font-size: .78rem; color: var(--hm-text-light); display: flex; align-items: center; gap: 4px; }
.hm-search-result-card__desc { font-size: .85rem; color: var(--hm-text-light); margin: 6px 0 0; }
.hm-search-result-card__arrow { color: var(--hm-text-light); font-size: .9rem; opacity: 0; transition: all var(--hm-transition); margin-left: 12px; flex-shrink: 0; }
.hm-search-result-card:hover .hm-search-result-card__arrow { opacity: 1; transform: translateX(4px); }
.hm-search-result-card:hover .hm-search-result-card__title { color: var(--hm-primary); }

/* ─── ALERTS ─── */
.hm-alert { display: flex; align-items: flex-start; gap: 10px; padding: 14px 18px; border-radius: var(--hm-radius); margin-bottom: 20px; font-size: .9rem; animation: hmFadeIn 300ms ease; }
.hm-alert i { font-size: 1.1rem; margin-top: 1px; flex-shrink: 0; }
.hm-alert--success { background: #f0fdf4; border: 1px solid #86efac; color: #166534; }
.hm-alert--success i { color: #16a34a; }
.hm-alert--danger { background: #fef2f2; border: 1px solid #fca5a5; color: #991b1b; }
.hm-alert--danger i { color: #ef4444; }
.hm-alert--warning { background: #fffbeb; border: 1px solid #fcd34d; color: #92400e; }
.hm-alert--warning i { color: #f59e0b; }

/* ─── TOAST NOTIFICATION ─── */
.hm-toast-container { position: fixed; top: calc(var(--hm-navbar-height) + 12px); right: 16px; z-index: 9999; display: flex; flex-direction: column; gap: 8px; pointer-events: none; }
.hm-toast { display: flex; align-items: center; gap: 10px; padding: 12px 18px; border-radius: var(--hm-radius); background: var(--hm-dark); color: #fff; font-size: .88rem; box-shadow: 0 8px 24px rgba(0,0,0,.2); pointer-events: auto; animation: hmToastIn 300ms ease forwards; max-width: 380px; }
.hm-toast i { font-size: 1.1rem; flex-shrink: 0; }
.hm-toast--success { background: #16a34a; }
.hm-toast--error { background: #ef4444; }
.hm-toast--warning { background: #f59e0b; color: #1e293b; }
.hm-toast.removing { animation: hmToastOut 300ms ease forwards; }
@keyframes hmToastIn { from { opacity: 0; transform: translateX(40px); } to { opacity: 1; transform: translateX(0); } }
@keyframes hmToastOut { to { opacity: 0; transform: translateX(40px); } }

/* ─── FOOTER ─── */
.hm-footer { background: var(--hm-dark); color: #94a3b8; padding: 40px 0 20px; margin-top: 40px; }
.hm-footer__brand { display: flex; align-items: center; gap: 8px; font-size: 1.15rem; color: #fff; margin-bottom: 12px; }
.hm-footer__brand i { color: var(--hm-primary); font-size: 1.3rem; }
.hm-footer__brand strong { color: var(--hm-primary); }
.hm-footer__desc { font-size: .88rem; line-height: 1.6; }
.hm-footer__heading { font-size: .95rem; font-weight: 600; color: #e2e8f0; margin-bottom: 12px; }
.hm-footer__links { list-style: none; padding: 0; margin: 0; }
.hm-footer__links li { margin-bottom: 6px; }
.hm-footer__links a { color: #94a3b8; text-decoration: none; font-size: .88rem; transition: var(--hm-transition); }
.hm-footer__links a:hover { color: #fff; padding-left: 4px; }
.hm-footer__bottom { margin-top: 32px; padding-top: 20px; border-top: 1px solid #334155; text-align: center; font-size: .82rem; }
.hm-footer__bottom a { color: var(--hm-primary); text-decoration: none; }

/* ─── ERROR PAGE ─── */
.hm-error-page { padding: 60px 0; }
.hm-error-page__code { font-size: 6rem; font-weight: 800; color: var(--hm-primary); line-height: 1; margin-bottom: 8px; }
.hm-error-page__title { font-size: 1.5rem; font-weight: 600; color: var(--hm-dark); margin-bottom: 12px; }
.hm-error-page__desc { color: var(--hm-text-light); margin-bottom: 24px; }
.hm-error-page__search { max-width: 400px; margin: 0 auto 24px; }
.hm-error-page__links { display: flex; gap: 12px; justify-content: center; }

/* ─── AD CONTAINER ─── */
.hm-ad { margin: 16px 0; min-height: 90px; text-align: center; }
.hm-ad--header { margin-bottom: 20px; }
.hm-ad--content_bottom { margin-top: 24px; }

/* ─── RESPONSIVE ─── */
@media (max-width: 991.98px) {
    .hm-hero h1 { font-size: 1.4rem; }
    .hm-hero p { font-size: .95rem; }
    .hm-tool-grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
    .hm-tool-grid--lg { grid-template-columns: 1fr; }
    .hm-sidebar { position: static; margin-top: 24px; }
    .hm-calc-card__header h1 { font-size: 1.15rem; }
    .hm-calc-card__body { padding: 16px; }
    .hm-result__value { font-size: 1.6rem; }
    .hm-stats { gap: 20px; }
    .hm-page-header h1 { font-size: 1.3rem; }
}

@media (max-width: 575.98px) {
    body { padding-top: var(--hm-navbar-height); }
    .hm-hero { padding: 24px 0 16px; }
    .hm-hero h1 { font-size: 1.2rem; }
    .hm-main { padding: 16px 0; }
    .hm-tool-grid { grid-template-columns: 1fr; }
    .hm-calc-card__body { padding: 12px; }
    .hm-form-control { height: 40px; font-size: .9rem; }
    .hm-btn-calculate { font-size: .9rem; padding: 10px 20px; }
    .hm-result__value { font-size: 1.4rem; }
    .hm-content-area { padding: 16px; }
    .hm-footer { padding: 24px 0 16px; }
    .hm-error-page__code { font-size: 4rem; }
    .hm-stats { gap: 12px; padding: 12px 0 24px; }
    .hm-stats__item { font-size: .8rem; gap: 5px; }
    .hm-stats__num { font-size: .92rem; }
    .hm-contact-card__body { padding: 16px; }
    .hm-page-header { padding: 20px 0 16px; }
    .hm-page-header h1 { font-size: 1.15rem; }
    .hm-cat-title { font-size: 1rem; }
    .hm-cat-title__link { font-size: .76rem; }
}

/* ─── UTILITY ─── */
.hm-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); border: 0; }
.hm-loading { display: inline-block; width: 18px; height: 18px; border: 2px solid rgba(255,255,255,.3); border-radius: 50%; border-top-color: #fff; animation: hmSpin .6s linear infinite; }
@keyframes hmSpin { to { transform: rotate(360deg); } }

/* Focus visible (keyboard accessibility) */
*:focus-visible { outline: 2px solid var(--hm-primary); outline-offset: 2px; border-radius: 2px; }

/* Selection */
::selection { background: var(--hm-primary-light); color: var(--hm-primary); }

/* ─── FORM GROUP TITLE (alan grubu başlığı) ─── */
.hm-form-group-title { font-size: .9rem; font-weight: 600; color: var(--hm-dark); margin: 20px 0 12px; padding-bottom: 8px; border-bottom: 1px solid var(--hm-border); }
.hm-form-group-title:first-child { margin-top: 0; }

/* Form Help */
.hm-form-help { font-size: .78rem; color: var(--hm-text-light); margin-top: 4px; }

/* Input group prefix */
.hm-input-group__prefix { border-right: none; border-left: 1px solid var(--hm-border); border-radius: var(--hm-radius) 0 0 var(--hm-radius); }
.hm-input-group__prefix + .hm-form-control { border-top-left-radius: 0; border-bottom-left-radius: 0; border-top-right-radius: var(--hm-radius); border-bottom-right-radius: var(--hm-radius); }

/* ─── RADIO GROUP ─── */
.hm-radio-group { display: flex; flex-wrap: wrap; gap: 8px; }
.hm-radio-item { display: flex; align-items: center; gap: 6px; padding: 8px 16px; border: 1px solid var(--hm-border); border-radius: var(--hm-radius); cursor: pointer; font-size: .88rem; transition: var(--hm-transition); }
.hm-radio-item:hover { border-color: var(--hm-primary); }
.hm-radio-item input[type="radio"] { accent-color: var(--hm-primary); }
.hm-radio-item:has(input:checked) { border-color: var(--hm-primary); background: var(--hm-primary-light); color: var(--hm-primary); font-weight: 500; }

/* ─── FAQ ACCORDION ─── */
.hm-faq__item { border-bottom: 1px solid var(--hm-border); }
.hm-faq__item:last-child { border-bottom: none; }
.hm-faq__question { display: flex; align-items: center; gap: 8px; width: 100%; padding: 14px 0; border: none; background: none; text-align: left; font-size: .92rem; font-weight: 500; color: var(--hm-dark); cursor: pointer; transition: var(--hm-transition); }
.hm-faq__question span { flex: 1; }
.hm-faq__question i { font-size: .7rem; color: var(--hm-text-light); transition: transform var(--hm-transition); }
.hm-faq__item.open .hm-faq__question i { transform: rotate(180deg); }
.hm-faq__question:hover { color: var(--hm-primary); }
.hm-faq__answer { max-height: 0; overflow: hidden; transition: max-height 300ms ease; }
.hm-faq__item.open .hm-faq__answer { max-height: 500px; }
.hm-faq__answer p { font-size: .88rem; color: var(--hm-text); line-height: 1.7; padding-bottom: 14px; margin: 0; }

/* Smooth scroll */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: 0.01ms; transition-duration: 0.01ms; }
}
