/* ============================================================
   HUNTA — MODERN DESIGN SYSTEM V2
   app-modern.css

   DESIGN PHILOSOPHY
   ------------------------------------------------------------
   Remarkable
   Usable
   Fast
   Trustworthy

   Motion is used to communicate:
   - hierarchy
   - feedback
   - state
   - spatial relationships

   Motion is NOT used merely for decoration.
   ============================================================ */


/* ============================================================
   DESIGN TOKENS
   ============================================================ */

:root {

    /* --------------------------------------------------------
       COLOR SYSTEM
       -------------------------------------------------------- */

    --hunta-bg: #f7f8fc;
    --hunta-surface: #ffffff;
    --hunta-surface-soft: #f1f3f8;

    --hunta-text: #111318;
    --hunta-text-soft: #5d6472;
    --hunta-text-muted: #858c99;

    --hunta-border: rgba(17, 19, 24, 0.08);
    --hunta-border-strong: rgba(17, 19, 24, 0.14);

    --hunta-primary: #111318;
    --hunta-primary-hover: #292d35;

    /*
     * Accent remains part of the brand system.
     *
     * Purple Cow does NOT mean "use purple everywhere".
     * Accent should remain scarce so that interaction,
     * important states and CTAs feel meaningful.
     */
    --hunta-accent: #6c5ce7;
    --hunta-accent-hover: #5b4bd6;
--hunta-title: #5b4bd6;
--hunta-title-hover: #3f32a4;
    --hunta-success: #16835b;
    --hunta-warning: #b7791f;
    --hunta-danger: #dc3545;


    /* --------------------------------------------------------
       LAYOUT
       -------------------------------------------------------- */

    --hunta-container: 1440px;
    --hunta-content-width: 1180px;

    --hunta-gutter: clamp(1rem, 2vw, 2rem);


    /* --------------------------------------------------------
       RADIUS
       -------------------------------------------------------- */

    --hunta-radius-xs: 8px;
    --hunta-radius-sm: 12px;
    --hunta-radius-md: 18px;
    --hunta-radius-lg: 24px;
    --hunta-radius-xl: 32px;


    /* --------------------------------------------------------
       SHADOWS
       -------------------------------------------------------- */

    --hunta-shadow-sm:
        0 2px 8px rgba(17, 19, 24, 0.04);

    --hunta-shadow-md:
        0 12px 32px rgba(17, 19, 24, 0.075);

    --hunta-shadow-lg:
        0 24px 70px rgba(17, 19, 24, 0.10);

    --hunta-shadow-floating:
        0 18px 55px rgba(17, 19, 24, 0.12);


    /* --------------------------------------------------------
       MOTION
       -------------------------------------------------------- */

    --hunta-ease:
        cubic-bezier(.22, 1, .36, 1);

    --hunta-ease-standard:
        cubic-bezier(.2, .8, .2, 1);

    --hunta-duration-instant: 120ms;
    --hunta-duration-fast: 180ms;
    --hunta-duration: 280ms;
    --hunta-duration-slow: 560ms;


    /* --------------------------------------------------------
       MOTION DISTANCES
       -------------------------------------------------------- */

    --hunta-lift-xs: -1px;
    --hunta-lift-sm: -2px;
    --hunta-lift-md: -4px;


    /* --------------------------------------------------------
       TYPOGRAPHY
       -------------------------------------------------------- */

    --hunta-font:
        Inter,
        ui-sans-serif,
        -apple-system,
        BlinkMacSystemFont,
        "Segoe UI",
        Roboto,
        Helvetica,
        Arial,
        sans-serif;

    --hunta-line-height: 1.55;


    /* --------------------------------------------------------
       INTERACTION
       -------------------------------------------------------- */

    --hunta-focus-ring:
        0 0 0 3px rgba(108, 92, 231, 0.22);

    --hunta-interactive-scale: 1.01;
}


/* ============================================================
   DARK THEME
   ============================================================ */

/* html[data-theme="dark"] {

    --hunta-bg: #0c0d10;
    --hunta-surface: #14161b;
    --hunta-surface-soft: #1b1e25;

    --hunta-text: #f5f6f8;
    --hunta-text-soft: #a7adb9;
    --hunta-text-muted: #737a87;

    --hunta-border: rgba(255, 255, 255, 0.08);
    --hunta-border-strong: rgba(255, 255, 255, 0.14);

    --hunta-primary: #ffffff;
    --hunta-primary-hover: #e9e9ed;

    --hunta-shadow-sm:
        0 2px 8px rgba(0, 0, 0, 0.20);

    --hunta-shadow-md:
        0 12px 35px rgba(0, 0, 0, 0.25);

    --hunta-shadow-lg:
        0 25px 80px rgba(0, 0, 0, 0.35);

    --hunta-shadow-floating:
        0 25px 75px rgba(0, 0, 0, 0.40);
} */


/* ============================================================
   BASE
   ============================================================ */

html {

    min-height: 100%;

    scroll-behavior: smooth;

    background: var(--hunta-bg);

    color-scheme: light;
}

html[data-theme="dark"] {

    color-scheme: dark;
}


body.hunta-body {

    margin: 0;

    min-height: 100vh;

    background:
        radial-gradient(
            circle at 50% -20%,
            rgba(108, 92, 231, 0.055),
            transparent 38%
        ),
        var(--hunta-bg);

    color: var(--hunta-text);

    font-family: var(--hunta-font);

    font-size: 16px;

    line-height: var(--hunta-line-height);

    -webkit-font-smoothing: antialiased;

    text-rendering: optimizeLegibility;

    /*
     * Prevent accidental horizontal movement caused by
     * animated interactive elements.
     */
    overflow-x: hidden;
}


/* ============================================================
   GLOBAL BOX SIZING
   ============================================================ */

.hunta-app *,
.hunta-app *::before,
.hunta-app *::after {

    box-sizing: border-box;
}

@media (min-width: 1500px) {

   :root {
       --hunta-container: 1500px;
   }
}


/* ============================================================
   LINKS
   ============================================================ */

.hunta-body a {

    color: inherit;
}

.hunta-body a:not(.btn):not(.hunta-btn) {

    text-decoration-thickness: 1px;

    text-underline-offset: 3px;

    transition:
        color var(--hunta-duration-fast) ease;
}


/* ============================================================
   ACCESSIBILITY
   ============================================================ */

.hunta-skip-link {

    position: fixed;

    top: 12px;
    left: 12px;

    z-index: 99999;

    padding: 10px 16px;

    border-radius: var(--hunta-radius-sm);

    background: var(--hunta-primary);

    color: var(--hunta-bg);

    font-weight: 700;

    transform: translateY(-150%);

    transition:
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-skip-link:focus {

    transform: translateY(0);
}


/* ============================================================
   HEADER
   ============================================================ */

.hunta-header {

    position: relative;

    z-index: 1000;

    width: 100%;
}


/* ============================================================
   MAIN
   ============================================================ */

.hunta-main {

    position: relative;

    min-height: 60vh;
}


/* ============================================================
   PAGE SHELL
   ============================================================ */

.hunta-container,
.hunta-page-shell {

   width: min(
       calc(100% - (var(--hunta-gutter) * 2)),
       var(--hunta-container)
   );

   margin-inline: auto;
}


/* ============================================================
   HERO
   ============================================================ */

.hunta-hero {

    position: relative;

    width: 100%;

    isolation: isolate;
}


/* ============================================================
   MAIN GRID
   ============================================================ */

.hunta-layout {

    display: grid;

    grid-template-columns:
        minmax(0, 1fr);

    gap: clamp(1.25rem, 2vw, 2rem);

    align-items: start;

    width: 100%;
}

.hunta-layout:not(:has(.hunta-sidebar-left)):not(:has(.hunta-sidebar-right)) {

   display: block;
}

.hunta-layout:not(:has(.hunta-sidebar-left)):not(:has(.hunta-sidebar-right)) > .hunta-content {

   width: 100%;
}


/* ============================================================
   CONTENT
   ============================================================ */

.hunta-content {

    min-width: 0;

    width: 100%;
}

.hunta-content-inner {

    width: 100%;

    min-width: 0;
}


/* ============================================================
   SIDEBARS
   ============================================================ */

.hunta-sidebar {

    min-width: 0;

    position: relative;
}


/* ============================================================
   DESKTOP THREE-COLUMN
   ============================================================ */

@media (min-width: 1200px) {

    .hunta-layout {

        grid-template-columns:
            minmax(190px, 240px)
            minmax(0, 1fr)
            minmax(190px, 240px);
    }
}


/* ============================================================
   TABLET TWO-COLUMN
   ============================================================ */

@media (min-width: 992px) and (max-width: 1199.98px) {

    .hunta-layout {

        grid-template-columns:
            minmax(180px, 220px)
            minmax(0, 1fr);
    }

    .hunta-sidebar-right {

        display: none;
    }
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 991.98px) {

    .hunta-page-shell {

        width: min(
            calc(100% - 2rem),
            var(--hunta-container)
        );
    }

    .hunta-layout {

        display: block;
    }

    .hunta-sidebar {

        width: 100%;
    }

    .hunta-sidebar-left,
    .hunta-sidebar-right {

        margin-top: 1.5rem;
    }
}


/* ============================================================
   FOCUS
   ============================================================ */

:where(
    .hunta-body button,
    .hunta-body a,
    .hunta-body input,
    .hunta-body textarea,
    .hunta-body select
):focus-visible {

    outline: none;

    box-shadow: var(--hunta-focus-ring);
}


/* ============================================================
   SELECTION
   ============================================================ */

::selection {

    background: rgba(108, 92, 231, 0.18);

    color: var(--hunta-text);
}


/* ============================================================
   BUTTON FOUNDATION
   ============================================================ */

.hunta-btn {

    position: relative;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    min-height: 44px;

    padding: 0 18px;

    overflow: hidden;

    border: 1px solid transparent;

    border-radius: 999px;

    font-family: inherit;

    font-size: 14px;

    font-weight: 700;

    line-height: 1;

    text-decoration: none !important;

    cursor: pointer;

    /*
     * Only transform/background/shadow are animated.
     * These are relatively inexpensive properties.
     */
    transition:
        transform var(--hunta-duration-fast) var(--hunta-ease),
        box-shadow var(--hunta-duration) var(--hunta-ease),
        background-color var(--hunta-duration-fast) ease,
        border-color var(--hunta-duration-fast) ease;
}


/* ------------------------------------------------------------
   BUTTON MICRO INTERACTION
   ------------------------------------------------------------ */

.hunta-btn:hover {

    transform: translateY(var(--hunta-lift-sm));
}

.hunta-btn:active {

    transform:
        translateY(0)
        scale(.975);
}


/* ============================================================
   BUTTON LIGHT SWEEP
   ============================================================ */

.hunta-btn::after {

    content: "";

    position: absolute;

    inset: 0;

    width: 45%;

    background:
        linear-gradient(
            105deg,
            transparent,
            rgba(255, 255, 255, 0.16),
            transparent
        );

    transform:
        translateX(-180%)
        skewX(-18deg);

    pointer-events: none;
}

.hunta-btn:hover::after {

    transform:
        translateX(420%)
        skewX(-18deg);

    transition:
        transform 700ms var(--hunta-ease);
}


/* ============================================================
   PRIMARY BUTTON
   ============================================================ */

.hunta-btn-primary {

    background: var(--hunta-title);

    color: var(--hunta-bg) !important;

    box-shadow: var(--hunta-shadow-sm);
}

.hunta-btn-primary:hover {

    background: var(--hunta-title-hover);

    box-shadow: var(--hunta-shadow-md);
}


/* ============================================================
   ACCENT BUTTON
   ============================================================ */

.hunta-btn-accent {

    background: var(--hunta-accent);

    color: #ffffff !important;

    box-shadow:
        0 8px 25px rgba(108, 92, 231, 0.20);
}

.hunta-btn-accent:hover {

    background: var(--hunta-accent-hover);

    box-shadow:
        0 12px 32px rgba(108, 92, 231, 0.28);
}


/* ============================================================
   SURFACE
   ============================================================ */

.hunta-surface {

    background: var(--hunta-surface);

    border: 1px solid var(--hunta-border);

    border-radius: var(--hunta-radius-lg);

    box-shadow: var(--hunta-shadow-sm);
}


/* ============================================================
   CARD
   ============================================================ */

.hunta-card {

    position: relative;

    isolation: isolate;

    overflow: hidden;

    background: var(--hunta-surface);

    border: 1px solid var(--hunta-border);

    border-radius: var(--hunta-radius-lg);

    box-shadow: var(--hunta-shadow-sm);

    transform: translateZ(0);

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        box-shadow var(--hunta-duration) var(--hunta-ease),
        border-color var(--hunta-duration) ease;
}


/* ============================================================
   CARD SIGNATURE INTERACTION
   ============================================================ */

.hunta-card::before {

    content: "";

    position: absolute;

    top: 0;
    left: -100%;

    width: 70%;
    height: 100%;

    background:
        linear-gradient(
            100deg,
            transparent,
            rgba(255, 255, 255, 0.14),
            transparent
        );

    pointer-events: none;

    opacity: 0;

    transform: skewX(-18deg);

    transition:
        opacity var(--hunta-duration-fast) ease;
}

.hunta-card:hover {

    transform:
        translateY(var(--hunta-lift-md));

    border-color:
        var(--hunta-border-strong);

    box-shadow:
        var(--hunta-shadow-md);
}

.hunta-card:hover::before {

    left: 150%;

    opacity: 1;

    transition:
        left 700ms var(--hunta-ease),
        opacity var(--hunta-duration-fast) ease;
}


/* ============================================================
   CARD INTERACTIVE STATE
   ============================================================ */

.hunta-card[role="button"],
.hunta-card.is-interactive,
a.hunta-card {

    cursor: pointer;
}

.hunta-card[role="button"]:active,
.hunta-card.is-interactive:active,
a.hunta-card:active {

    transform:
        translateY(-1px)
        scale(.995);
}


/* ============================================================
   ICON MICRO-INTERACTION
   ============================================================ */

.hunta-card:hover .hunta-tool-item__icon,
.hunta-card:hover .hunta-brand__mark {

    transform:
        translateY(-1px)
        rotate(-2deg);
}


/* ============================================================
   ICON TRANSITION
   ============================================================ */

.hunta-tool-item__icon,
.hunta-brand__mark {

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        background-color var(--hunta-duration-fast) ease;
}


/* ============================================================
   SCROLL REVEAL
   ============================================================ */

.hunta-reveal {

    opacity: 0;

    transform:
        translateY(20px);

    transition:
        opacity var(--hunta-duration-slow) var(--hunta-ease),
        transform var(--hunta-duration-slow) var(--hunta-ease);

    /*
     * Prevent invisible content from receiving accidental
     * pointer interaction before reveal.
     */
    pointer-events: none;
}

.hunta-reveal.is-visible {

    opacity: 1;

    transform: translateY(0);

    pointer-events: auto;
}


/* ============================================================
   STAGGER
   ============================================================ */

.hunta-stagger > * {

    opacity: 0;

    transform:
        translateY(16px);

    transition:
        opacity 500ms var(--hunta-ease),
        transform 500ms var(--hunta-ease);
}

.hunta-stagger.is-visible > * {

    opacity: 1;

    transform: translateY(0);
}

.hunta-stagger.is-visible > *:nth-child(1) {
    transition-delay: 30ms;
}

.hunta-stagger.is-visible > *:nth-child(2) {
    transition-delay: 60ms;
}

.hunta-stagger.is-visible > *:nth-child(3) {
    transition-delay: 90ms;
}

.hunta-stagger.is-visible > *:nth-child(4) {
    transition-delay: 120ms;
}

.hunta-stagger.is-visible > *:nth-child(5) {
    transition-delay: 150ms;
}

.hunta-stagger.is-visible > *:nth-child(6) {
    transition-delay: 180ms;
}


/* ============================================================
   IMAGE DEFAULTS
   ============================================================ */

.hunta-body img {

    display: block;

    max-width: 100%;

    height: auto;
}


/* ============================================================
   NAVIGATION
   ============================================================ */

.hunta-nav {

    position: sticky;

    top: 0;

    z-index: 1000;

    width: 100%;

    padding: 14px var(--hunta-gutter);

    background: transparent;

    transition:
        padding var(--hunta-duration) var(--hunta-ease);
}


/* ============================================================
   NAV INNER
   ============================================================ */

.hunta-nav__inner {

    position: relative;

    width: min(
        100%,
        var(--hunta-container)
    );

    min-height: 68px;

    margin-inline: auto;

    padding:
        8px
        10px
        8px
        18px;

    display: flex;

    align-items: center;

    gap: 20px;

    background:
        rgba(255, 255, 255, 0.82);

    border:
        1px solid rgba(17, 19, 24, 0.07);

    border-radius: 20px;

    box-shadow:
        0 8px 30px rgba(17, 19, 24, 0.055);

    backdrop-filter:
        blur(20px)
        saturate(140%);

    -webkit-backdrop-filter:
        blur(20px)
        saturate(140%);

    transition:
        box-shadow var(--hunta-duration) var(--hunta-ease),
        background-color var(--hunta-duration) ease,
        border-color var(--hunta-duration) ease,
        transform var(--hunta-duration) var(--hunta-ease);
}


/* ============================================================
   NAV HOVER DEPTH
   ============================================================ */

.hunta-nav__inner:hover {

    box-shadow:
        0 12px 38px rgba(17, 19, 24, 0.075);
}


/* ============================================================
   DARK NAV
   ============================================================ */

html[data-theme="dark"] .hunta-nav__inner {

    background:
        rgba(20, 22, 27, 0.84);

    border-color:
        rgba(255, 255, 255, 0.08);

    box-shadow:
        0 10px 40px rgba(0, 0, 0, 0.25);
}


/* ============================================================
   SCROLLED NAV
   ============================================================ */

.hunta-header.is-scrolled .hunta-nav {

    padding-top: 8px;

    padding-bottom: 8px;
}

.hunta-header.is-scrolled .hunta-nav__inner {

    box-shadow:
        0 14px 45px rgba(17, 19, 24, 0.10);

    transform:
        translateY(-1px);
}


/* ============================================================
   BRAND
   ============================================================ */

.hunta-brand {

    display: inline-flex;

    align-items: center;

    gap: 10px;

    flex-shrink: 0;

    color: #3f32a4;

    text-decoration: none !important;
}

.hunta-brand__mark {

    width: 80px;
    height: 80px;

    display: grid;

    place-items: center;

    border-radius: 13px;

    overflow: hidden;

     
}

.hunta-brand__mark img {

    width: 80px;
    height: 80px;

    object-fit: contain;
}

.hunta-brand__name {

    font-size: 18px;

    font-weight: 800;

    letter-spacing: -0.03em;

    color: #3f32a4;
}


/* ============================================================
   BRAND INTERACTION
   ============================================================ */

.hunta-brand:hover .hunta-brand__mark {

    background:
        linear-gradient(
            135deg,
            rgba(108, 92, 231, 0.18),
            rgba(108, 92, 231, 0.05)
        );
}


/* ============================================================
   NAV PANEL
   ============================================================ */

.hunta-nav__panel {

    display: flex;

    align-items: center;

    justify-content: space-between;

    flex: 1;

    min-width: 0;
}


/* ============================================================
   NAV LINKS
   ============================================================ */

.hunta-nav__links {

    display: flex;

    align-items: center;

    gap: 2px;

    margin: 0 auto;

    padding: 0;

    list-style: none;
}

.hunta-nav__item {

    position: relative;
}

.hunta-nav__link {

    position: relative;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 6px;

    min-height: 42px;

    padding: 0 13px;

    border: 0;

    background: transparent;

    color: #625c82;

    font-family: inherit;

    font-size: 14px;

    font-weight: 600;

    text-decoration: none !important;

    white-space: nowrap;

    cursor: pointer;

    transition:
        color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-nav__link:hover {

    color: #51468f;
    transform:
        translateY(-1px);
}

.hunta-nav__link svg {

    width: 15px;
    height: 15px;

    transition:
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-nav__link[aria-expanded="true"] svg {

    transform: rotate(180deg);
}


/* ============================================================
   ACTIVE LINK
   ============================================================ */

.hunta-nav__link::after {

    content: "";

    position: absolute;

    left: 50%;
    bottom: 2px;

    width: 0;
    height: 2px;

    border-radius: 999px;

    background:
        var(--hunta-accent);

    transform:
        translateX(-50%);

    transition:
        width var(--hunta-duration) var(--hunta-ease);
}

.hunta-nav__link.is-active {

    color: #3f32a4;
}

.hunta-nav__link.is-active::after {

    width: 18px;
}


/* ============================================================
   TOOLS MEGA MENU
   ============================================================ */

.hunta-tools-menu {

    position: absolute;

    top: calc(100% + 14px);

    left: 50%;

    width: min(
        700px,
        calc(100vw - 32px)
    );

    padding: 22px;

    background:
        var(--hunta-surface);

    border:
        1px solid var(--hunta-border);

    border-radius: 22px;

    box-shadow:
        var(--hunta-shadow-lg);

    opacity: 0;

    visibility: hidden;

    pointer-events: none;

    transform:
        translate(-50%, -8px)
        scale(.985);

    transform-origin:
        top center;

    transition:
        opacity var(--hunta-duration-fast) ease,
        visibility var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-nav__item--tools.is-open
.hunta-tools-menu {

    opacity: 1;

    visibility: visible;

    pointer-events: auto;

    transform:
        translate(-50%, 0)
        scale(1);
}


/* ============================================================
   TOOLS MENU HEADER
   ============================================================ */

.hunta-tools-menu__header {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    padding-bottom: 18px;

    margin-bottom: 4px;

    border-bottom:
        1px solid var(--hunta-border);
}

.hunta-tools-menu__eyebrow {

    display: block;

    margin-bottom: 4px;

    color:
        var(--hunta-accent);

    font-size: 10px;

    font-weight: 800;

    letter-spacing: .14em;
}

.hunta-tools-menu__title {

    margin: 0;

    color:
        var(--hunta-title);

    font-size: 18px;

    font-weight: 800;

    letter-spacing: -.03em;
}

.hunta-tools-menu__all {

    display: inline-flex;

    align-items: center;

    gap: 6px;

    color:
        var(--hunta-text-soft);

    font-size: 12px;

    font-weight: 700;

    text-decoration: none !important;

    white-space: nowrap;

    transition:
        color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-tools-menu__all:hover {

    color:
        var(--hunta-accent);

    transform:
        translateX(2px);
}

.hunta-tools-menu__all svg {

    width: 14px;
    height: 14px;

    transition:
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-tools-menu__all:hover svg {

    transform:
        translateX(3px);
}


/* ============================================================
   TOOLS GRID
   ============================================================ */

.hunta-tools-menu__grid {

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 6px;

    margin-top: 12px;
}


/* ============================================================
   TOOL ITEM
   ============================================================ */

.hunta-tool-item {

    position: relative;

    display: grid;

    grid-template-columns:
        42px minmax(0, 1fr) 18px;

    align-items: center;

    gap: 11px;

    min-width: 0;

    padding: 10px;

    border-radius: 14px;

    color:
        var(--hunta-text);

    text-decoration: none !important;

    transition:
        background-color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-tool-item:hover {

    background:
        var(--hunta-surface-soft);

    transform:
        translateY(-2px);
}

.hunta-tool-item__icon {

    width: 42px;
    height: 42px;

    display: grid;

    place-items: center;

    border-radius: 12px;

    background:
        rgba(108, 92, 231, 0.08);

    color:
        var(--hunta-accent);

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        background-color var(--hunta-duration-fast) ease;
}

.hunta-tool-item:hover
.hunta-tool-item__icon {

    background:
        rgba(108, 92, 231, 0.13);

    transform:
        scale(1.045)
        rotate(-2deg);
}

.hunta-tool-item__icon svg {

    width: 19px;
    height: 19px;
}

.hunta-tool-item__content {

    min-width: 0;
}

.hunta-tool-item__name {

    display: block;

    overflow: hidden;

    color:
        var(--hunta-text);

    font-size: 13px;

    font-weight: 700;

    text-overflow: ellipsis;

    white-space: nowrap;
}

.hunta-tool-item__arrow {

    width: 15px;
    height: 15px;

    color:
        var(--hunta-text-muted);

    opacity: 0;

    transform:
        translate(-4px, 4px);

    transition:
        opacity var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-tool-item:hover
.hunta-tool-item__arrow {

    opacity: 1;

    transform:
        translate(0, 0);
}


/* ============================================================
   NAV ACTIONS
   ============================================================ */

.hunta-nav__actions {

    display: flex;

    align-items: center;

    gap: 7px;

    flex-shrink: 0;
}


/* ============================================================
   LOGIN
   ============================================================ */

.hunta-nav__login {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-height: 42px;

    padding: 0 13px;

    color:
        var(--hunta-text-soft);

    font-size: 14px;

    font-weight: 700;

    text-decoration: none !important;

    transition:
        color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-nav__login:hover {

    color:
        var(--hunta-text);

    transform:
        translateY(-1px);
}


/* ============================================================
   CTA
   ============================================================ */

.hunta-nav__cta {

    min-height: 42px;

    padding-inline: 17px;
}

.hunta-nav__cta svg {

    width: 15px;
    height: 15px;

    transition:
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-nav__cta:hover svg {

    transform:
        translate(3px, -2px);
}


/* ============================================================
   USER
   ============================================================ */

.hunta-user {

    position: relative;
}

.hunta-user__trigger {

    display: inline-flex;

    align-items: center;

    gap: 8px;

    min-height: 42px;

    padding: 4px 9px 4px 4px;

    border:
        1px solid var(--hunta-border);

    border-radius: 999px;

    background:
        var(--hunta-surface-soft);

    color:
        var(--hunta-text);

    font-family: inherit;

    font-size: 13px;

    font-weight: 700;

    cursor: pointer;

    transition:
        border-color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-user__trigger:hover {

    border-color:
        var(--hunta-border-strong);

    transform:
        translateY(-1px);
}

.hunta-user__trigger > svg {

    width: 14px;
    height: 14px;

    color:
        var(--hunta-text-muted);

    transition:
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-user__trigger[aria-expanded="true"] > svg {

    transform:
        rotate(180deg);
}

.hunta-user__avatar {

    width: 32px;
    height: 32px;

    display: grid;

    place-items: center;

    flex-shrink: 0;

    border-radius: 50%;

    background:
        linear-gradient(
            135deg,
            var(--hunta-accent),
            #9a8cff
        );

    color:
        #ffffff;

    font-size: 12px;

    font-weight: 800;
}


/* ============================================================
   DROPDOWNS
   ============================================================ */

.hunta-user-menu,
.hunta-language-menu {

    position: absolute;

    top: calc(100% + 12px);

    right: 0;

    width: 220px;

    padding: 8px;

    background:
        var(--hunta-surface);

    border:
        1px solid var(--hunta-border);

    border-radius: 18px;

    box-shadow:
        var(--hunta-shadow-lg);

    opacity: 0;

    visibility: hidden;

    pointer-events: none;

    transform:
        translateY(-7px)
        scale(.985);

    transition:
        opacity var(--hunta-duration-fast) ease,
        visibility var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease);
}

[data-hunta-dropdown].is-open
.hunta-user-menu,
[data-hunta-dropdown].is-open
.hunta-language-menu {

    opacity: 1;

    visibility: visible;

    pointer-events: auto;

    transform:
        translateY(0)
        scale(1);
}


/* ============================================================
   USER MENU
   ============================================================ */

.hunta-user-menu__header {

    display: flex;

    align-items: center;

    gap: 10px;

    padding: 9px;
}

.hunta-user-menu__header strong {

    color:
        var(--hunta-text);

    font-size: 13px;
}

.hunta-user-menu__divider {

    height: 1px;

    margin: 5px 4px;

    background:
        var(--hunta-border);
}

.hunta-user-menu__item {

    width: 100%;

    display: flex;

    align-items: center;

    gap: 10px;

    min-height: 40px;

    padding: 0 10px;

    border: 0;

    border-radius: 10px;

    background: transparent;

    color:
        var(--hunta-text-soft);

    font-family: inherit;

    font-size: 13px;

    font-weight: 600;

    text-decoration: none !important;

    text-align: left;

    cursor: pointer;

    transition:
        background-color var(--hunta-duration-fast) ease,
        color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-user-menu__item:hover {

    background:
        var(--hunta-surface-soft);

    color:
        var(--hunta-text);

    transform:
        translateX(2px);
}

.hunta-user-menu__item svg {

    width: 16px;
    height: 16px;
}

.hunta-user-menu__item--danger {

    color:
        var(--hunta-danger);
}


/* ============================================================
   LANGUAGE
   ============================================================ */

.hunta-language {

    position: relative;
}

.hunta-language__trigger {

    display: inline-flex;

    align-items: center;

    gap: 6px;

    min-height: 42px;

    padding: 0 10px;

    border: 0;

    background: transparent;

    color:
        var(--hunta-text-soft);

    font-family: inherit;

    font-size: 12px;

    font-weight: 800;

    cursor: pointer;

    transition:
        color var(--hunta-duration-fast) ease;
}

.hunta-language__trigger:hover {

    color:
        var(--hunta-text);
}

.hunta-language__trigger svg {

    width: 15px;
    height: 15px;
}

.hunta-language__trigger svg:last-child {

    width: 12px;
    height: 12px;

    transition:
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-language.is-open
.hunta-language__trigger svg:last-child {

    transform:
        rotate(180deg);
}

.hunta-language-menu {

    width: 190px;
}

.hunta-language-menu__item {

    display: flex;

    align-items: center;

    justify-content: space-between;

    min-height: 40px;

    padding: 0 11px;

    border-radius: 10px;

    color:
        var(--hunta-text-soft);

    font-size: 13px;

    font-weight: 600;

    text-decoration: none !important;

    transition:
        background-color var(--hunta-duration-fast) ease,
        color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-language-menu__item:hover,
.hunta-language-menu__item.is-active {

    background:
        var(--hunta-surface-soft);

    color:
        var(--hunta-text);

    transform:
        translateX(2px);
}

.hunta-language-menu__item svg {

    width: 15px;
    height: 15px;

    color:
        var(--hunta-accent);
}


/* ============================================================
   MOBILE TOGGLE
   ============================================================ */

.hunta-menu-toggle {

    display: none;

    width: 44px;
    height: 44px;

    margin-left: auto;

    padding: 10px;

    border:
        1px solid var(--hunta-border);

    border-radius: 12px;

    background:
        var(--hunta-surface);

    cursor: pointer;

    transition:
        transform var(--hunta-duration-fast) var(--hunta-ease),
        border-color var(--hunta-duration-fast) ease;
}

.hunta-menu-toggle:hover {

    border-color:
        var(--hunta-border-strong);

    transform:
        translateY(-1px);
}

.hunta-menu-toggle:active {

    transform:
        scale(.96);
}

.hunta-menu-toggle span {

    display: block;

    width: 100%;
    height: 2px;

    margin: 5px 0;

    border-radius: 999px;

    background:
        var(--hunta-text);

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        opacity var(--hunta-duration-fast) ease;
}

.hunta-menu-toggle.is-open span:nth-child(1) {

    transform:
        translateY(7px)
        rotate(45deg);
}

.hunta-menu-toggle.is-open span:nth-child(2) {

    opacity: 0;
}

.hunta-menu-toggle.is-open span:nth-child(3) {

    transform:
        translateY(-7px)
        rotate(-45deg);
}


/* ============================================================
   FOOTER
   ============================================================ */

.hunta-footer {

    position: relative;

    margin-top: 80px;

    overflow: hidden;

    background:
        linear-gradient(
            180deg,
            #111318 0%,
            #0b0c0f 100%
        );

    color:
        var(--hunta-accent);
}


/* ============================================================
   FOOTER GLOW
   ============================================================ */

.hunta-footer__glow {

    position: absolute;

    top: -280px;
    left: 50%;

    width: 650px;
    height: 450px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(108, 92, 231, 0.16),
            transparent 68%
        );

    transform:
        translateX(-50%);

    pointer-events: none;
}


/* ============================================================
   FOOTER CONTAINER
   ============================================================ */

.hunta-footer__container {

    position: relative;

    width: min(
        calc(100% - 2rem),
        var(--hunta-container)
    );

    margin-inline: auto;
}


/* ============================================================
   FOOTER MAIN
   ============================================================ */

.hunta-footer__main {

    display: grid;

    grid-template-columns:
        minmax(260px, 1.5fr)
        minmax(160px, .8fr)
        minmax(150px, .7fr)
        minmax(280px, 1.15fr);

    gap:
        clamp(32px, 5vw, 80px);

    padding:
        76px 0
        64px;
}


/* ============================================================
   FOOTER BRAND
   ============================================================ */

.hunta-footer__brand {

    max-width: 390px;
}

.hunta-footer__logo {

    display: inline-flex;

    align-items: center;

    gap: 12px;

    color:
        #9a8cff;

    text-decoration: none !important;
}

.hunta-footer__logo-mark {

    width: 44px;
    height: 44px;

    display: grid;

    place-items: center;

    border-radius: 14px;

     

    border:
        1px solid rgba(255, 255, 255, 0.09);

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        background-color var(--hunta-duration-fast) ease;
}

.hunta-footer__logo:hover
.hunta-footer__logo-mark {

    transform:
        translateY(-2px)
        rotate(-2deg);

    background:
        rgba(255, 255, 255, 0.12);
}

.hunta-footer__logo-mark img {

    width: 34px;
    height: 34px;

    object-fit: contain;
}

.hunta-footer__brand-name {

    font-size: 20px;

    font-weight: 800;

    letter-spacing: -.04em;

    color: #9a8cff;
}

.hunta-footer__description {

    max-width: 370px;

    margin:
        22px 0 0;

    color:
        rgba(255, 255, 255, 0.58);

    font-size: 14px;

    line-height: 1.8;
}


/* ============================================================
   FOOTER SOCIAL
   ============================================================ */

.hunta-footer__social {

    margin-top: 26px;
}

.hunta-footer__social-label {

    display: block;

    margin-bottom: 11px;

    color:
        rgba(255, 255, 255, 0.42);

    font-size: 11px;

    font-weight: 800;

    letter-spacing: .12em;

    text-transform: uppercase;
}

.hunta-footer__social-list {

    display: flex;

    align-items: center;

    gap: 8px;
}

.hunta-footer__social-link {

    width: 36px;
    height: 36px;

    display: grid;

    place-items: center;

    border:
        1px solid rgba(255, 255, 255, 0.09);

    border-radius: 11px;

    background:
        rgba(255, 255, 255, 0.035);

    color:
        rgba(255, 255, 255, 0.65);

    text-decoration: none !important;

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        background-color var(--hunta-duration-fast) ease,
        color var(--hunta-duration-fast) ease,
        border-color var(--hunta-duration-fast) ease;
}

.hunta-footer__social-link:hover {

    transform:
        translateY(-3px);

    background:
        rgba(255, 255, 255, 0.09);

    border-color:
        rgba(255, 255, 255, 0.16);

    color:
        #ffffff;
}

.hunta-footer__social-link svg {

    width: 16px;
    height: 16px;

    transition:
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-footer__social-link:hover svg {

    transform:
        scale(1.08);
}


/* ============================================================
   FOOTER COLUMNS
   ============================================================ */

.hunta-footer__column {

    min-width: 0;
}

.hunta-footer__title {

    margin:
        4px 0 20px;

    color:
        #9a8cff;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: .09em;

    text-transform: uppercase;
}

.hunta-footer__links {

    display: flex;

    flex-direction: column;

    gap: 5px;

    margin: 0;

    padding: 0;

    list-style: none;
}

.hunta-footer__links li {

    margin: 0;
}

.hunta-footer__link {

    display: inline-flex;

    align-items: center;

    gap: 7px;

    min-height: 34px;

    color:
        rgba(255, 255, 255, 0.62) !important;

    font-size: 13px;

    font-weight: 500;

    text-decoration: none !important;

    transition:
        color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-footer__link:hover {

    color:
        #ffffff !important;

    transform:
        translateX(3px);
}

.hunta-footer__link-icon {

    width: 14px;
    height: 14px;

    display: grid;

    place-items: center;

    color:
        var(--hunta-accent);

    opacity: 0;

    transform:
        translateX(-4px);

    transition:
        opacity var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-footer__link:hover
.hunta-footer__link-icon {

    opacity: 1;

    transform:
        translateX(0);
}

.hunta-footer__link-icon svg {

    width: 13px;
    height: 13px;
}


/* ============================================================
   NEWSLETTER
   ============================================================ */

.hunta-footer__newsletter-card {

    position: relative;

    padding: 26px;

    overflow: hidden;

    border:
        1px solid rgba(255, 255, 255, 0.09);

    border-radius: 22px;

    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.075),
            rgba(255, 255, 255, 0.025)
        );

    box-shadow:
        0 20px 60px rgba(0, 0, 0, 0.22);

    backdrop-filter:
        blur(16px);

    -webkit-backdrop-filter:
        blur(16px);

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        border-color var(--hunta-duration-fast) ease;
}

.hunta-footer__newsletter-card:hover {

    transform:
        translateY(-3px);

    border-color:
        rgba(255, 255, 255, 0.14);
}

.hunta-footer__newsletter-card::before {

    content: "";

    position: absolute;

    top: -80px;
    right: -80px;

    width: 180px;
    height: 180px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(108, 92, 231, 0.25),
            transparent 70%
        );

    pointer-events: none;
}

.hunta-footer__newsletter-icon {

    width: 40px;
    height: 40px;

    display: grid;

    place-items: center;

    margin-bottom: 18px;

    border-radius: 12px;

    background:
        rgba(108, 92, 231, 0.14);

    color:
        #9a8cff;

    transition:
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-footer__newsletter-card:hover
.hunta-footer__newsletter-icon {

    transform:
        translateY(-2px)
        rotate(-3deg);
}

.hunta-footer__newsletter-icon svg {

    width: 18px;
    height: 18px;
}

.hunta-footer__newsletter-title {

    position: relative;

    margin: 0;

    color:
        var(--hunta-accent);

    font-size: 19px;

    font-weight: 800;

    letter-spacing: -.035em;
}

.hunta-footer__newsletter-description {

    position: relative;

    margin:
        9px 0 20px;

    color:
        rgba(255, 255, 255, 0.53);

    font-size: 12px;

    line-height: 1.65;
}


/* ============================================================
   NEWSLETTER INPUT
   ============================================================ */

.hunta-footer__newsletter-input {

    display: flex;

    align-items: center;

    gap: 8px;

    min-height: 48px;

    padding:
        4px 4px 4px 13px;

    border:
        1px solid rgba(255, 255, 255, 0.10);

    border-radius: 14px;

    background:
        rgba(0, 0, 0, 0.18);

    transition:
        border-color var(--hunta-duration-fast) ease,
        box-shadow var(--hunta-duration-fast) ease;
}

.hunta-footer__newsletter-input:focus-within {

    border-color:
        rgba(255, 255, 255, 0.20);

    box-shadow:
        0 0 0 3px rgba(108, 92, 231, 0.12);
}

.hunta-footer__newsletter-input > svg {

    width: 15px;
    height: 15px;

    flex-shrink: 0;

    color:
        rgba(255, 255, 255, 0.35);
}

.hunta-footer__newsletter-input input {

    min-width: 0;

    flex: 1;

    height: 38px;

    padding: 0;

    border: 0;

    outline: 0;

    background:
        transparent;

    color:
        #ffffff;

    font-family: inherit;

    font-size: 12px;
}

.hunta-footer__newsletter-input input::placeholder {

    color:
        rgba(255, 255, 255, 0.35);
}

.hunta-footer__newsletter-input button {

    width: 40px;
    height: 40px;

    display: grid;

    place-items: center;

    flex-shrink: 0;

    border: 0;

    border-radius: 11px;

    background:
        var(--hunta-accent);

    color:
        #ffffff;

    cursor: pointer;

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        background-color var(--hunta-duration-fast) ease;
}

.hunta-footer__newsletter-input button:hover {

    transform:
        translateY(-2px);

    background:
        var(--hunta-accent-hover);
}

.hunta-footer__newsletter-input button:active {

    transform:
        scale(.94);
}

.hunta-footer__newsletter-input button svg {

    width: 16px;
    height: 16px;

    transition:
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-footer__newsletter-input button:hover svg {

    transform:
        translateX(2px);
}


/* ============================================================
   FOOTER BOTTOM
   ============================================================ */

.hunta-footer__bottom {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    min-height: 72px;

    border-top:
        1px solid rgba(255, 255, 255, 0.075);
}

.hunta-footer__copyright,
.hunta-footer__made {

    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: 7px;

    color:
        rgba(255, 255, 255, 0.38);

    font-size: 11px;
}

.hunta-footer__separator {

    opacity: .45;
}

.hunta-footer__heart {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    transition:
        transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-footer__heart svg {

    width: 13px;
    height: 13px;

    fill:
        currentColor;
}

.hunta-footer__made:hover .hunta-footer__heart {

    transform:
        scale(1.15);
}


/* ============================================================
   RTL
   ============================================================ */

[dir="rtl"] .hunta-footer__link:hover {

    transform:
        translateX(-3px);
}

[dir="rtl"] .hunta-footer__link-icon {

    transform:
        translateX(4px);
}

[dir="rtl"] .hunta-footer__link:hover
.hunta-footer__link-icon {

    transform:
        translateX(0);
}

[dir="rtl"] .hunta-tools-menu__all:hover {

    transform:
        translateX(-2px);
}

[dir="rtl"] .hunta-tools-menu__all:hover svg {

    transform:
        translateX(-3px);
}


/* ============================================================
   TABLET FOOTER
   ============================================================ */

@media (max-width: 1100px) {

    .hunta-footer__main {

        grid-template-columns:
            1.3fr
            1fr
            1fr;
    }

    .hunta-footer__newsletter {

        grid-column:
            1 / -1;

        max-width:
            520px;

        justify-self: center;
        width: 100%;
    }
}


/* ============================================================
   TABLET / MOBILE NAV
   ============================================================ */

@media (max-width: 991.98px) {

    .hunta-nav {

        padding:
            10px;
    }

    .hunta-nav__inner {

        min-height: 62px;

        padding:
            7px
            9px
            7px
            13px;

        border-radius:
            17px;
    }

    .hunta-brand__mark {

        width: 38px;
        height: 38px;
    }

    .hunta-brand__mark img {

        width: 31px;
        height: 31px;
    }

    .hunta-brand__name {

        font-size: 17px;
    }

    .hunta-menu-toggle {

        display: block;
    }


    /* --------------------------------------------------------
       MOBILE PANEL
       -------------------------------------------------------- */

    .hunta-nav__panel {

        position: absolute;

        top:
            calc(100% + 8px);

        left: 10px;
        right: 10px;

        display: block;

        max-height:
            calc(100vh - 90px);

        padding: 10px;

        overflow-y: auto;

        background:
            var(--hunta-surface);

        border:
            1px solid var(--hunta-border);

        border-radius: 20px;

        box-shadow:
            var(--hunta-shadow-lg);

        opacity: 0;

        visibility: hidden;

        pointer-events: none;

        transform:
            translateY(-8px);

        transition:
            opacity var(--hunta-duration) ease,
            visibility var(--hunta-duration) ease,
            transform var(--hunta-duration) var(--hunta-ease);
    }

    .hunta-nav.is-open .hunta-nav__panel,
    .hunta-nav__panel.is-open {

       opacity: 1;

       visibility: visible;

       pointer-events: auto;

       transform:
           translateY(0);
    }


    /* --------------------------------------------------------
       MOBILE LINKS
       -------------------------------------------------------- */

    .hunta-nav__links {

        display: block;

        margin: 0;
    }

    .hunta-nav__item {

        width: 100%;
    }

    .hunta-nav__link {

        width: 100%;

        min-height: 48px;

        justify-content:
            space-between;

        padding-inline:
            13px;

        border-radius:
            11px;
    }

    .hunta-nav__link:hover {

        background:
            var(--hunta-surface-soft);

        transform:
            translateX(2px);
    }

    .hunta-nav__link::after {

        display: none;
    }


    /* --------------------------------------------------------
       MOBILE TOOLS
       -------------------------------------------------------- */

    .hunta-tools-menu {

        position: static;

        width: 100%;

        margin-top: 5px;

        padding: 10px;

        transform: none;

        box-shadow: none;

        border-radius: 14px;

        display: none;
    }

    .hunta-nav__item--tools.is-open
    .hunta-tools-menu {

        display: block;

        transform: none;
    }

    .hunta-tools-menu__grid {

        grid-template-columns:
            1fr;
    }

    .hunta-tools-menu__header {

        padding-bottom:
            12px;
    }


    /* --------------------------------------------------------
       MOBILE ACTIONS
       -------------------------------------------------------- */

    .hunta-nav__actions {

        display: grid;

        grid-template-columns:
            1fr;

        gap: 8px;

        margin-top: 12px;

        padding-top: 12px;

        border-top:
            1px solid var(--hunta-border);
    }

    .hunta-nav__login {

        min-height: 46px;

        justify-content:
            center;

        border-radius:
            11px;

        background:
            var(--hunta-surface-soft);
    }

    .hunta-nav__cta {

        width: 100%;
    }

    .hunta-user {

        width: 100%;
    }

    .hunta-user__trigger {

        width: 100%;

        justify-content:
            flex-start;
    }

    .hunta-user-menu {

        position: static;

        width: 100%;

        margin-top: 5px;

        display: none;

        box-shadow: none;

        border-radius: 14px;
    }

    .hunta-user.is-open
    .hunta-user-menu {

        display: block;

        opacity: 1;

        visibility: visible;

        pointer-events: auto;

        transform: none;
    }

    .hunta-language {

        width: 100%;
    }

    .hunta-language__trigger {

        width: 100%;

        justify-content:
            flex-start;

        min-height: 46px;

        padding-inline:
            13px;

        border-radius:
            11px;
    }

    .hunta-language__trigger:hover {

        background:
            var(--hunta-surface-soft);
    }

    .hunta-language-menu {

        position: static;

        width: 100%;

        display: none;

        box-shadow: none;

        border-radius: 14px;
    }

    .hunta-language.is-open
    .hunta-language-menu {

        display: block;

        opacity: 1;

        visibility: visible;

        pointer-events: auto;

        transform: none;
    }
}


/* ============================================================
   MOBILE FOOTER
   ============================================================ */

@media (max-width: 767.98px) {

    .hunta-footer {

        margin-top:
            55px;
    }

    .hunta-footer__main {

        grid-template-columns:
            1fr 1fr;

        gap:
            36px 24px;

        padding:
            55px 0 42px;
    }

    .hunta-footer__brand {

        grid-column:
            1 / -1;

        max-width:
            none;
    }

    .hunta-footer__description {

        max-width:
            600px;
    }

    .hunta-footer__newsletter {

        grid-column:
            1 / -1;

        max-width:
            none;
    }

    .hunta-footer__bottom {

        align-items:
            flex-start;

        flex-direction:
            column;

        justify-content:
            center;

        gap:
            8px;

        padding:
            18px 0;
    }
}


/* ============================================================
   SMALL MOBILE
   ============================================================ */

@media (max-width: 430px) {

    .hunta-footer__main {

        grid-template-columns:
            1fr;
    }

    .hunta-footer__column {

        grid-column:
            1 / -1;
    }

    .hunta-footer__newsletter {

        grid-column:
            1 / -1;
    }
}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    html {

        scroll-behavior:
            auto;
    }

    *,
    *::before,
    *::after {

        animation-duration:
            0.01ms !important;

        animation-iteration-count:
            1 !important;

        transition-duration:
            0.01ms !important;

        scroll-behavior:
            auto !important;
    }

    .hunta-reveal,
    .hunta-stagger > * {

        opacity: 1;

        transform:
            none;

        pointer-events:
            auto;
    }
}


/* ============================================================
   TOUCH DEVICES
   ------------------------------------------------------------
   Hover is not meaningful on touch screens.
   Avoid making cards feel like they are moving underneath
   the user's finger.
   ============================================================ */

@media (hover: none) {

    .hunta-card:hover {

        transform:
            none;

        box-shadow:
            var(--hunta-shadow-sm);

        border-color:
            var(--hunta-border);
    }

    .hunta-card:hover::before {

        display:
            none;
    }

    .hunta-btn:hover {

        transform:
            none;
    }

    .hunta-tool-item:hover {

        transform:
            none;
    }

    .hunta-tool-item:hover
    .hunta-tool-item__arrow {

        opacity:
            0;
    }
}


/* ============================================================
   PRINT
   ============================================================ */

@media print {

    .hunta-header,
    .hunta-footer,
    .hunta-sidebar {

        display:
            none !important;
    }

    .hunta-page-shell {

        width:
            100%;
    }
}


/* ============================================================
   END — HUNTA MODERN DESIGN SYSTEM V2
   ============================================================ */

 
/* ============================================================================================================
   POPULAR TOOLS SIDEBAR
   ============================================================================================================= */

.hunta-popular-tools {

    position: relative;

    width: 100%;

    padding: 20px;

    background:
        var(--hunta-surface);

    border:
        1px solid var(--hunta-border);

    border-radius:
        var(--hunta-radius-lg);

    box-shadow:
        var(--hunta-shadow-sm);

    overflow: hidden;
}


/* ============================================================
   HEADER
   ============================================================ */

.hunta-popular-tools__header {

    display: flex;

    align-items: center;

    gap: 12px;

    margin-bottom: 16px;
}


.hunta-popular-tools__icon {

    width: 40px;
    height: 40px;

    display: grid;

    place-items: center;

    flex-shrink: 0;

    border-radius: 12px;

    background:
        rgba(108, 92, 231, 0.09);

    color:
        var(--hunta-accent);

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        background-color var(--hunta-duration-fast) ease;
}


.hunta-popular-tools__icon svg {

    width: 18px;
    height: 18px;
}


.hunta-popular-tools:hover
.hunta-popular-tools__icon {

    background:
        rgba(108, 92, 231, 0.13);

    transform:
        translateY(-1px)
        rotate(-3deg);
}


/* ============================================================
   HEADER TEXT
   ============================================================ */

.hunta-popular-tools__heading {

    min-width: 0;
}


.hunta-popular-tools__title {

    margin: 0;

    color:
        var(--hunta-title);

    font-size: 15px;

    font-weight: 800;

    line-height: 1.25;

    letter-spacing:
        -.025em;
}


.hunta-popular-tools__subtitle {

    display: block;

    margin-top: 3px;

    color:
        var(--hunta-text-muted);

    font-size: 11px;

    font-weight: 500;

    line-height: 1.35;
}


/* ============================================================
   TOOL LIST
   ============================================================ */

.hunta-popular-tools__list {

    display: flex;

    flex-direction: column;

    gap: 4px;

    margin: 0;
}


/* ============================================================
   TOOL ROW
   ============================================================ */

.hunta-popular-tool {

    position: relative;

    display: grid;

    grid-template-columns:
        36px
        minmax(0, 1fr)
        18px;

    align-items: center;

    gap: 10px;

    min-height: 54px;

    padding:
        7px 8px;

    border:
        1px solid transparent;

    border-radius:
        var(--hunta-radius-sm);

    background:
        transparent;

    color:
        var(--hunta-text);

    text-decoration: none !important;

    transition:
        background-color var(--hunta-duration-fast) ease,
        border-color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease);
}


.hunta-popular-tool:hover {

    background:
        var(--hunta-surface-soft);

    border-color:
        var(--hunta-border);

    transform:
        translateX(3px);
}


/* ============================================================
   TOOL ICON
   ============================================================ */

.hunta-popular-tool__icon {

    width: 36px;
    height: 36px;

    display: grid;

    place-items: center;

    flex-shrink: 0;

    border-radius: 10px;

    background:
        rgba(108, 92, 231, 0.065);

    color:
        var(--hunta-text-soft);

    transition:
        transform var(--hunta-duration) var(--hunta-ease),
        background-color var(--hunta-duration-fast) ease,
        color var(--hunta-duration-fast) ease;
}


.hunta-popular-tool__icon svg {

    width: 17px;
    height: 17px;
}


.hunta-popular-tool:hover
.hunta-popular-tool__icon {

    background:
        rgba(108, 92, 231, 0.11);

    color:
        var(--hunta-accent);

    transform:
        scale(1.06)
        rotate(-2deg);
}


/* ============================================================
   TOOL NAME
   ============================================================ */

.hunta-popular-tool__content {

    min-width: 0;
}


.hunta-popular-tool__name {

    display: block;

    overflow: hidden;

    color:
        var(--hunta-text);

    font-size: 13px;

    font-weight: 650;

    line-height: 1.35;

    text-overflow: ellipsis;

    white-space: nowrap;

    transition:
        color var(--hunta-duration-fast) ease;
}


.hunta-popular-tool:hover
.hunta-popular-tool__name {

    color:
        var(--hunta-text);
}


/* ============================================================
   ARROW
   ============================================================ */

.hunta-popular-tool__arrow {

    width: 18px;
    height: 18px;

    display: grid;

    place-items: center;

    color:
        var(--hunta-text-muted);

    opacity: 0;

    transform:
        translateX(-4px);

    transition:
        opacity var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease),
        color var(--hunta-duration-fast) ease;
}


.hunta-popular-tool__arrow svg {

    width: 14px;
    height: 14px;
}


.hunta-popular-tool:hover
.hunta-popular-tool__arrow {

    opacity: 1;

    color:
        var(--hunta-accent);

    transform:
        translateX(0);
}


/* ============================================================
   FIRST TOOL
   ------------------------------------------------------------
   Gives the first item a slightly stronger visual position.
   ============================================================ */

.hunta-popular-tool:first-child {

    background:
        rgba(108, 92, 231, 0.025);
}


.hunta-popular-tool:first-child
.hunta-popular-tool__icon {

    background:
        rgba(108, 92, 231, 0.09);

    color:
        var(--hunta-accent);
}


/* ============================================================
   TOUCH
   ============================================================ */

@media (hover: none) {

    .hunta-popular-tools:hover
    .hunta-popular-tools__icon {

        transform: none;

        background:
            rgba(108, 92, 231, 0.09);
    }

    .hunta-popular-tool:hover {

        transform: none;

        background: transparent;

        border-color: transparent;
    }

    .hunta-popular-tool:hover
    .hunta-popular-tool__icon {

        transform: none;
    }

    .hunta-popular-tool__arrow {

        opacity: 0;
    }
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 991.98px) {

    .hunta-popular-tools {

        padding: 18px;

        border-radius:
            var(--hunta-radius-md);
    }

    .hunta-popular-tool {

        min-height: 56px;
    }
}


/* ============================================================
   DARK MODE
   ============================================================ */

html[data-theme="dark"]
.hunta-popular-tools__icon {

    background:
        rgba(108, 92, 231, 0.13);
}


html[data-theme="dark"]
.hunta-popular-tool:first-child {

    background:
        rgba(108, 92, 231, 0.045);
}


html[data-theme="dark"]
.hunta-popular-tool__icon {

    background:
        rgba(108, 92, 231, 0.10);
}


html[data-theme="dark"]
.hunta-popular-tool:hover {

    background:
        var(--hunta-surface-soft);

    border-color:
        var(--hunta-border);
}
/* ============================================================
   END — POPULAR TOOLS SIDEBAR
   ============================================================ */

/* ==========================================================================================================
   HUNTA — TOOL EDITOR SYSTEM
   ============================================================ =============================================*/


/* ============================================================
   TOOL HERO
   ============================================================ */

.hunta-tool-hero {

    position: relative;

    padding:
        48px 20px 38px;

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(108, 92, 231, .08),
            transparent 55%
        );
}


.hunta-tool-hero__inner {

    width: min(
        100%,
        850px
    );

    margin-inline: auto;

    display: flex;

    flex-direction: column;

    align-items: center;

    text-align: center;
}


.hunta-tool-hero__icon {

    width: 56px;
    height: 56px;

    display: grid;

    place-items: center;

    margin-bottom: 18px;

    border:
        1px solid rgba(108, 92, 231, .14);

    border-radius: 17px;

    background:
        rgba(108, 92, 231, .08);

    color:
        var(--hunta-accent);

    box-shadow:
        0 10px 30px rgba(108, 92, 231, .08);
}


.hunta-tool-hero__icon svg {

    width: 25px;
    height: 25px;
}


.hunta-tool-hero__title {

    margin: 0;

    color:
        var(--hunta-title);

    font-size:
        clamp(2rem, 4vw, 3.15rem);

    font-weight: 850;

    line-height: 1.08;

    letter-spacing:
        -.055em;
}


.hunta-tool-hero__description {

    max-width: 680px;

    margin:
        14px auto 0;

    color:
        var(--hunta-text-soft);

    font-size: 15px;

    line-height: 1.7;
}


/* ============================================================
   EDITOR PAGE
   ============================================================ */

.hunta-tool-editor-page {

    width: 100%;

    padding:
        0 0 40px;
}


/* ============================================================
   EDITOR SIDEBAR
   ============================================================ */

.hunta-editor-sidebar {

    display: flex;

    flex-direction: column;

    gap: 14px;
}


/* ============================================================
   EDITOR PANEL
   ============================================================ */

.hunta-editor-panel {

    position: relative;

    padding: 17px;

    background:
        var(--hunta-surface);

    border:
        1px solid var(--hunta-border);

    border-radius:
        var(--hunta-radius-lg);

    box-shadow:
        var(--hunta-shadow-sm);
}


/* ============================================================
   PANEL HEADER
   ============================================================ */

.hunta-editor-panel__header {

    display: flex;

    align-items: center;

    gap: 10px;

    margin-bottom: 15px;
}


.hunta-editor-panel__icon {

    width: 36px;
    height: 36px;

    display: grid;

    place-items: center;

    flex-shrink: 0;

    border-radius: 10px;

    background:
        rgba(108, 92, 231, .08);

    color:
        var(--hunta-accent);
}


.hunta-editor-panel__icon svg {

    width: 17px;
    height: 17px;
}


.hunta-editor-panel__title {

    margin: 0;

    color:
        var(--hunta-title);

    font-size: 13px;

    font-weight: 800;

    letter-spacing:
        -.02em;
}


.hunta-editor-panel__description {

    margin: 2px 0 0;

    color:
        var(--hunta-text-muted);

    font-size: 10px;

    line-height: 1.4;
}


.hunta-editor-panel__section-title {

    margin-bottom: 11px;

    color:
        var(--hunta-title);

    font-size: 11px;

    font-weight: 800;

    letter-spacing: .06em;

    text-transform: uppercase;
}


/* ============================================================
   UPLOAD TRIGGER
   ============================================================ */

.hunta-upload-trigger {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    min-height: 125px;

    padding: 18px;

    border:
        1px dashed var(--hunta-border-strong);

    border-radius: 15px;

    background:
        var(--hunta-surface-soft);

    cursor: pointer;

    text-align: center;

    transition:
        border-color var(--hunta-duration-fast) ease,
        background-color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease);
}


.hunta-upload-trigger:hover {

    border-color:
        rgba(108, 92, 231, .35);

    background:
        rgba(108, 92, 231, .045);

    transform:
        translateY(-2px);
}


.hunta-upload-trigger__icon {

    width: 34px;
    height: 34px;

    display: grid;

    place-items: center;

    margin-bottom: 8px;

    border-radius: 10px;

    background:
        var(--hunta-surface);

    color:
        var(--hunta-accent);

    box-shadow:
        var(--hunta-shadow-sm);
}


.hunta-upload-trigger__icon svg {

    width: 17px;
    height: 17px;
}


.hunta-upload-trigger__text {

    color:
        var(--hunta-text);

    font-size: 12px;

    font-weight: 750;
}


.hunta-upload-trigger__hint {

    margin-top: 3px;

    color:
        var(--hunta-text-muted);

    font-size: 9px;

    letter-spacing: .04em;
}


/* ============================================================
   EDITOR ACTIONS
   ============================================================ */

.hunta-editor-actions {

    display: grid;

    grid-template-columns: 1fr;

    gap: 5px;
}


.hunta-editor-action {

    display: flex;

    align-items: center;

    gap: 10px;

    width: 100%;

    min-height: 43px;

    padding:
        5px 8px;

    border:
        1px solid transparent;

    border-radius: 11px;

    background:
        transparent;

    color:
        var(--hunta-text-soft);

    font-family: inherit;

    font-size: 12px;

    font-weight: 650;

    text-align: left;

    cursor: pointer;

    transition:
        background-color var(--hunta-duration-fast) ease,
        color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration) var(--hunta-ease),
        border-color var(--hunta-duration-fast) ease;
}


.hunta-editor-action:hover {

    background:
        var(--hunta-surface-soft);

    border-color:
        var(--hunta-border);

    color:
        var(--hunta-text);

    transform:
        translateX(2px);
}


.hunta-editor-action__icon {

    width: 32px;
    height: 32px;

    display: grid;

    place-items: center;

    flex-shrink: 0;

    border-radius: 9px;

    background:
        rgba(108, 92, 231, .07);

    color:
        var(--hunta-accent);
}


.hunta-editor-action__icon svg {

    width: 15px;
    height: 15px;
}


/* ============================================================
   FORM FIELD
   ============================================================ */

.hunta-field-label {

    display: block;

    margin-bottom: 6px;

    color:
        var(--hunta-text-soft);

    font-size: 10px;

    font-weight: 700;
}


.hunta-field {

    width: 100%;

    height: 42px;

    padding:
        0 11px;

    border:
        1px solid var(--hunta-border);

    border-radius: 11px;

    background:
        var(--hunta-surface-soft);

    color:
        var(--hunta-text);

    font-family: inherit;

    font-size: 12px;

    font-weight: 600;

    outline: none;

    cursor: pointer;

    transition:
        border-color var(--hunta-duration-fast) ease,
        box-shadow var(--hunta-duration-fast) ease;
}


.hunta-field:focus {

    border-color:
        rgba(108, 92, 231, .40);

    box-shadow:
        var(--hunta-focus-ring);
}


/* ============================================================
   EXPORT
   ============================================================ */

.hunta-editor-export {

    width: 100%;

    margin-top: 10px;
}


.hunta-editor-export svg {

    width: 15px;
    height: 15px;
}


.hunta-editor-danger {

    display: flex;

    align-items: center;

    justify-content: center;

    gap: 7px;

    width: 100%;

    min-height: 40px;

    margin-top: 7px;

    padding: 0 12px;

    border:
        1px solid rgba(220, 53, 69, .12);

    border-radius: 11px;

    background:
        transparent;

    color:
        var(--hunta-danger);

    font-family: inherit;

    font-size: 11px;

    font-weight: 700;

    cursor: pointer;

    transition:
        background-color var(--hunta-duration-fast) ease,
        border-color var(--hunta-duration-fast) ease,
        transform var(--hunta-duration-fast) var(--hunta-ease);
}


.hunta-editor-danger:hover {

    background:
        rgba(220, 53, 69, .055);

    border-color:
        rgba(220, 53, 69, .20);

    transform:
        translateY(-1px);
}


.hunta-editor-danger svg {

    width: 14px;
    height: 14px;
}


/* ============================================================
   INSPECTOR EMPTY
   ============================================================ */

.hunta-inspector-empty {

    display: flex;

    flex-direction: column;

    align-items: center;

    justify-content: center;

    min-height: 125px;

    padding: 18px;

    margin-bottom: 12px;

    border:
        1px dashed var(--hunta-border);

    border-radius: 14px;

    background:
        var(--hunta-surface-soft);

    text-align: center;
}


.hunta-inspector-empty__icon {

    width: 38px;
    height: 38px;

    display: grid;

    place-items: center;

    margin-bottom: 9px;

    border-radius: 11px;

    background:
        var(--hunta-surface);

    color:
        var(--hunta-text-muted);
}


.hunta-inspector-empty__icon svg {

    width: 17px;
    height: 17px;
}


.hunta-inspector-empty p {

    max-width: 150px;

    margin: 0;

    color:
        var(--hunta-text-muted);

    font-size: 10px;

    line-height: 1.5;
}


/* ============================================================
   EDITOR STATUS
   ============================================================ */

.hunta-editor-status {

    display: flex;

    align-items: center;

    gap: 7px;

    min-height: 38px;

    padding:
        0 12px;

    border:
        1px solid var(--hunta-border);

    border-radius: 11px;

    background:
        var(--hunta-surface);

    color:
        var(--hunta-text-muted);

    font-size: 10px;

    font-weight: 700;
}


.hunta-editor-status__dot {

    width: 6px;
    height: 6px;

    border-radius: 50%;

    background:
        var(--hunta-success);

    box-shadow:
        0 0 0 3px rgba(22, 131, 91, .10);
}


/* ============================================================
   MAIN WORKSPACE
   ============================================================ */

.hunta-editor-workspace {

    position: relative;

    overflow: hidden;

    background:
        var(--hunta-surface);

    border:
        1px solid var(--hunta-border);

    border-radius:
        var(--hunta-radius-lg);

    box-shadow:
        var(--hunta-shadow-md);
}


/* ============================================================
   WORKSPACE HEADER
   ============================================================ */

.hunta-editor-workspace__header {

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    padding:
        20px 22px;

    border-bottom:
        1px solid var(--hunta-border);
}


.hunta-editor-workspace__eyebrow {

    display: block;

    margin-bottom: 4px;

    color:
        var(--hunta-accent);

    font-size: 9px;

    font-weight: 850;

    letter-spacing: .13em;

    text-transform: uppercase;
}


.hunta-editor-workspace__title {

    margin: 0;

    color:
        var(--hunta-title);

    font-size: 18px;

    font-weight: 800;

    letter-spacing:
        -.035em;
}


.hunta-editor-workspace__description {

    margin: 3px 0 0;

    color:
        var(--hunta-text-muted);

    font-size: 11px;
}


.hunta-editor-workspace__badge {

    display: inline-flex;

    align-items: center;

    gap: 7px;

    flex-shrink: 0;

    min-height: 31px;

    padding:
        0 10px;

    border:
        1px solid var(--hunta-border);

    border-radius: 999px;

    background:
        var(--hunta-surface-soft);

    color:
        var(--hunta-text-muted);

    font-size: 9px;

    font-weight: 800;
}


.hunta-editor-workspace__badge-dot {

    width: 5px;
    height: 5px;

    border-radius: 50%;

    background:
        var(--hunta-success);
}


/* ============================================================
   CANVAS STAGE
   ============================================================ */

.hunta-canvas-stage {

    position: relative;

    min-height:
        580px;

    display: flex;

    align-items: center;

    justify-content: center;

    padding:
        34px;

    overflow: hidden;

    background:
        #eef0f5;
}


/* ============================================================
   CANVAS GRID
   ============================================================ */

.hunta-canvas-stage__grid {

    position: absolute;

    inset: 0;

    opacity: .42;

    background-image:
        linear-gradient(
            45deg,
            rgba(17, 19, 24, .035) 25%,
            transparent 25%
        ),
        linear-gradient(
            -45deg,
            rgba(17, 19, 24, .035) 25%,
            transparent 25%
        ),
        linear-gradient(
            45deg,
            transparent 75%,
            rgba(17, 19, 24, .035) 75%
        ),
        linear-gradient(
            -45deg,
            transparent 75%,
            rgba(17, 19, 24, .035) 75%
        );

    background-size:
        22px 22px;

    background-position:
        0 0,
        0 11px,
        11px -11px,
        -11px 0;
}


.hunta-canvas-stage__inner {

    position: relative;

    z-index: 1;

    display: flex;

    align-items: center;

    justify-content: center;

    max-width: 100%;

    max-height: 100%;

    padding: 12px;

    background:
        rgba(255, 255, 255, .72);

    border:
        1px solid rgba(17, 19, 24, .08);

    border-radius: 10px;

    box-shadow:
        0 18px 55px rgba(17, 19, 24, .12);

    backdrop-filter:
        blur(4px);

    -webkit-backdrop-filter:
        blur(4px);
}


.hunta-canvas-stage canvas {

    display: block;

    max-width: 100%;

    max-height: 520px;
}


/* ============================================================
   STATUS
   ============================================================ */

.hunta-tool-status {

    padding:
        0 22px 18px;
}


.hunta-alert {

    padding:
        11px 13px;

    border-radius:
        11px;

    font-size: 12px;

    font-weight: 600;
}


.hunta-alert-danger {

    border:
        1px solid rgba(220, 53, 69, .14);

    background:
        rgba(220, 53, 69, .06);

    color:
        var(--hunta-danger);
}


/* ============================================================
   MODAL
   ============================================================ */

.hunta-modal {

    overflow: hidden;

    background:
        var(--hunta-surface);

    border:
        1px solid var(--hunta-border);

    border-radius:
        var(--hunta-radius-lg);

    box-shadow:
        var(--hunta-shadow-floating);
}


.hunta-modal__header {

    display: flex;

    align-items: center;

    justify-content: space-between;

    padding:
        20px 22px;

    border-bottom:
        1px solid var(--hunta-border);
}


.hunta-modal__eyebrow {

    display: block;

    margin-bottom: 3px;

    color:
        var(--hunta-accent);

    font-size: 9px;

    font-weight: 800;

    letter-spacing: .12em;

    text-transform: uppercase;
}


.hunta-modal__title {

    margin: 0;

    color:
        var(--hunta-title);

    font-size: 17px;

    font-weight: 800;

    letter-spacing:
        -.03em;
}


.hunta-modal__close {

    width: 34px;
    height: 34px;

    display: grid;

    place-items: center;

    border:
        1px solid var(--hunta-border);

    border-radius: 10px;

    background:
        var(--hunta-surface-soft);

    color:
        var(--hunta-text-muted);

    cursor: pointer;

    transition:
        transform var(--hunta-duration-fast) var(--hunta-ease),
        color var(--hunta-duration-fast) ease;
}


.hunta-modal__close:hover {

    color:
        var(--hunta-text);

    transform:
        rotate(4deg);
}


.hunta-modal__close svg {

    width: 15px;
    height: 15px;
}


.hunta-modal__body {

    padding: 22px;
}


.hunta-signature-stage {

    display: flex;

    align-items: center;

    justify-content: center;

    min-height: 250px;

    padding: 20px;

    border:
        1px dashed var(--hunta-border-strong);

    border-radius: 15px;

    background:
        var(--hunta-surface-soft);
}


.hunta-signature-stage canvas {

    width: 100%;

    max-width: 450px;

    background:
        #ffffff;

    border:
        1px solid var(--hunta-border);

    border-radius: 10px;

    touch-action: none;
}


.hunta-modal__footer {

    display: flex;

    align-items: center;

    justify-content: flex-end;

    gap: 8px;

    padding:
        16px 22px;

    border-top:
        1px solid var(--hunta-border);
}


/* ============================================================
   DARK CANVAS STAGE
   ============================================================ */

html[data-theme="dark"] .hunta-canvas-stage {

    background:
        #191b21;
}


html[data-theme="dark"] .hunta-canvas-stage__grid {

    opacity: .25;

    background-image:
        linear-gradient(
            45deg,
            rgba(255, 255, 255, .035) 25%,
            transparent 25%
        ),
        linear-gradient(
            -45deg,
            rgba(255, 255, 255, .035) 25%,
            transparent 25%
        ),
        linear-gradient(
            45deg,
            transparent 75%,
            rgba(255, 255, 255, .035) 75%
        ),
        linear-gradient(
            -45deg,
            transparent 75%,
            rgba(255, 255, 255, .035) 75%
        );
}


html[data-theme="dark"] .hunta-canvas-stage__inner {

    background:
        rgba(20, 22, 27, .80);

    border-color:
        rgba(255, 255, 255, .08);
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1199.98px) {

    .hunta-canvas-stage {

        min-height:
            520px;
    }

    .hunta-canvas-stage canvas {

        max-height:
            460px;
    }
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 991.98px) {

    .hunta-tool-hero {

        padding:
            35px 18px 28px;
    }


    .hunta-editor-workspace {

        border-radius:
            var(--hunta-radius-md);
    }


    .hunta-editor-workspace__header {

        align-items:
            flex-start;

        padding:
            17px;
    }


    .hunta-editor-workspace__badge {

        display: none;
    }


    .hunta-canvas-stage {

        min-height:
            400px;

        padding:
            18px;
    }


    .hunta-canvas-stage canvas {

        max-height:
            350px;
    }


    .hunta-editor-sidebar {

        margin-top:
            14px;
    }
}


/* ============================================================
   SMALL MOBILE
   ============================================================ */

@media (max-width: 575.98px) {

    .hunta-tool-hero__title {

        font-size:
            2rem;
    }


    .hunta-tool-hero__description {

        font-size:
            13px;
    }


    .hunta-editor-workspace__title {

        font-size:
            16px;
    }


    .hunta-canvas-stage {

        min-height:
            330px;

        padding:
            12px;
    }


    .hunta-canvas-stage__inner {

        padding:
            7px;
    }


    .hunta-canvas-stage canvas {

        max-height:
            285px;
    }


    .hunta-modal__footer {

        flex-direction:
            column;

        align-items:
            stretch;
    }


    .hunta-modal__footer .hunta-btn {

        width: 100%;
    }
}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-upload-trigger:hover,
    .hunta-editor-action:hover,
    .hunta-editor-danger:hover {

        transform:
            none;
    }
}
 /* ============================================================
   END — HUNTA TOOL EDITOR SYSTEM
   ============================================================ */
.hunta-upload-zone {
    position: relative;
    min-height: 390px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
    border: 1px dashed var(--hunta-border-strong);
    border-radius: 24px;
    background: var(--hunta-surface-soft);
    text-align: center;
    overflow: hidden;

    transition:
        border-color .25s ease,
        background-color .25s ease,
        transform .25s var(--hunta-ease),
        box-shadow .25s ease;
}

.hunta-upload-zone:hover {
    border-color: rgba(108, 92, 231, .35);
    transform: translateY(-2px);
    box-shadow: var(--hunta-shadow-md);
}
.hunta-upload-zone__icon {
    width: 72px;
    height: 72px;

    display: grid;
    place-items: center;

    margin: 0 auto 20px;

    border-radius: 20px;

    background: rgba(108, 92, 231, .09);
    color: var(--hunta-accent);

    animation: huntaIconFloat 4s ease-in-out infinite;
}
@keyframes huntaIconFloat {

    0%,
    100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-5px);
    }
}
.hunta-upload-zone.is-dragover {
    border-color: var(--hunta-accent);

    background:
        radial-gradient(
            circle at center,
            rgba(108, 92, 231, .10),
            rgba(108, 92, 231, .025)
        );

    box-shadow:
        0 0 0 5px rgba(108, 92, 231, .06);

    transform: scale(1.008);
}
.hunta-btn {
    position: relative;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;

    min-height: 46px;
    padding: 0 22px;

    border: 0;
    border-radius: 13px;

    font-family: inherit;
    font-size: 13px;
    font-weight: 750;

    cursor: pointer;

    overflow: hidden;

    transition:
        transform .2s var(--hunta-ease),
        box-shadow .2s ease,
        background-color .2s ease;
}

.hunta-btn:hover {
    transform: translateY(-2px);
}

.hunta-btn:active {
    transform: scale(.97);
}
.hunta-btn--primary::after {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            110deg,
            transparent 35%,
            rgba(255,255,255,.18) 50%,
            transparent 65%
        );

    transform: translateX(-120%);

    transition: transform .6s ease;
}

.hunta-btn--primary:hover::after {
    transform: translateX(120%);
}
.hunta-image-preview {
    display: block;
    max-width: 100%;
    max-height: 430px;

    border-radius: 18px;

    box-shadow: var(--hunta-shadow-md);

    animation:
        huntaPreviewReveal .45s var(--hunta-ease) both;
}

@keyframes huntaPreviewReveal {

    from {
        opacity: 0;
        transform:
            translateY(15px)
            scale(.97);
    }

    to {
        opacity: 1;
        transform:
            translateY(0)
            scale(1);
    }
}

/* ============================================================
HUNTA — BACKGROUND REMOVER TOOL
Tool-specific visual layer
--------------------------

DEPENDS ON:

* app-modern.css
* Bootstrap 5 utilities
* Lucide icons

IMPORTANT:
JavaScript owns functionality.
CSS owns appearance and animation.

FUNCTIONAL IDs MUST NOT BE RENAMED:
#dropzone
#imageInput
#uploadUI
#preview
#removeBtn
#resetBtn
#statusMessage
#resultBox
#resultImage
#downloadBtn
============================================================ */

/* ============================================================
PAGE
============================================================ */

.hunta-tool-page {
width: 100%;
}

.hunta-tool-app {
width: 100%;
padding: 0 0 48px;
}

.hunta-tool-card {
width: min(100%, 1180px);
margin-inline: auto;

   
position: relative;

background: var(--hunta-surface, #ffffff);
border: 1px solid var(--hunta-border, rgba(15, 23, 42, 0.08));
border-radius: 28px;

box-shadow:
    0 20px 60px rgba(15, 23, 42, 0.08);

overflow: hidden;

animation:
    huntaToolCardReveal
    650ms
    cubic-bezier(.2, .8, .2, 1)
    both;
   

}

/* ============================================================
TOOL HEADER
============================================================ */

.hunta-tool-card__header {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 28px;

   
padding: clamp(24px, 4vw, 38px);
padding-bottom: 26px;
   

}

.hunta-tool-card__heading {
min-width: 0;
}

.hunta-tool-card__eyebrow {
display: inline-flex;
align-items: center;

   
margin-bottom: 8px;

font-size: 0.72rem;
font-weight: 800;
letter-spacing: 0.12em;
text-transform: uppercase;

color: var(--hunta-accent, #6366f1);
   

}

.hunta-tool-card__title {
margin: 0;

   
font-size: clamp(1.35rem, 2vw, 1.7rem);
line-height: 1.15;
font-weight: 800;
letter-spacing: -0.025em;

color: var(--hunta-title, #0f172a);
   

}

.hunta-tool-card__description {
max-width: 650px;

   
margin: 9px 0 0;

font-size: 0.95rem;
line-height: 1.65;

color: var(--hunta-muted, #64748b);
   

}

.hunta-tool-card__status {
flex: 0 0 auto;

   
display: inline-flex;
align-items: center;
gap: 8px;

padding: 8px 12px;

border: 1px solid var(--hunta-border, rgba(15, 23, 42, 0.08));
border-radius: 999px;

background: var(--hunta-surface-soft, #f8fafc);

font-size: 0.78rem;
font-weight: 700;

color: var(--hunta-muted, #64748b);
   

}

.hunta-tool-status-dot {
width: 7px;
height: 7px;

   
border-radius: 50%;

background: #22c55e;

box-shadow:
    0 0 0 4px rgba(34, 197, 94, 0.12);

animation:
    huntaStatusPulse
    2.4s
    ease-in-out
    infinite;
   

}

/* ============================================================
UPLOAD ZONE
============================================================ */

.hunta-upload-zone {
position: relative;

   
min-height: 430px;

margin: 0 clamp(18px, 3vw, 38px);

display: flex;
align-items: center;
justify-content: center;

padding: clamp(30px, 5vw, 58px);

overflow: hidden;

border: 1.5px dashed
    var(--hunta-border-strong, rgba(99, 102, 241, 0.28));

border-radius: 24px;

background:
    radial-gradient(
        circle at 50% 15%,
        rgba(99, 102, 241, 0.08),
        transparent 38%
    ),
    var(--hunta-surface-soft, #f8fafc);

cursor: pointer;

transition:
    border-color 240ms ease,
    background 240ms ease,
    box-shadow 240ms ease,
    transform 240ms ease;
   

}

.hunta-upload-zone::before {
content: "";

   
position: absolute;
inset: 0;

pointer-events: none;

background:
    linear-gradient(
        135deg,
        rgba(99, 102, 241, 0.035),
        transparent 45%,
        rgba(14, 165, 233, 0.035)
    );

opacity: 0.9;

transition:
    opacity 240ms ease;
   

}

.hunta-upload-zone:hover {
border-color:
var(--hunta-accent, #6366f1);

   
box-shadow:
    0 14px 40px rgba(99, 102, 241, 0.08);

transform: translateY(-1px);
   

}

.hunta-upload-zone:hover::before {
opacity: 1;
}

/* ============================================================
DRAG STATE

Existing JS adds .bg-white.
Future JS may add .is-dragover.
Both are supported.
============================================================ */

.hunta-upload-zone.bg-white,
.hunta-upload-zone.is-dragover {
border-color:
var(--hunta-accent, #6366f1);

   
background:
    rgba(99, 102, 241, 0.07);

box-shadow:
    0 0 0 5px rgba(99, 102, 241, 0.08),
    0 20px 55px rgba(99, 102, 241, 0.12);

transform: scale(1.005);
   

}

.hunta-upload-zone.bg-white
.hunta-upload-content,
.hunta-upload-zone.is-dragover
.hunta-upload-content {
opacity: 0.25;
transform: scale(0.98);
}

/* ============================================================
UPLOAD CONTENT
============================================================ */

.hunta-upload-content {
position: relative;
z-index: 2;

   
width: min(100%, 620px);

display: flex;
flex-direction: column;
align-items: center;

text-align: center;

transition:
    opacity 220ms ease,
    transform 220ms ease;
   

}

.hunta-upload-zone__icon {
width: 78px;
height: 78px;

   
display: flex;
align-items: center;
justify-content: center;

margin-bottom: 20px;

border: 1px solid
    rgba(99, 102, 241, 0.16);

border-radius: 22px;

background:
    linear-gradient(
        145deg,
        rgba(99, 102, 241, 0.12),
        rgba(14, 165, 233, 0.08)
    );

color:
    var(--hunta-accent, #6366f1);

box-shadow:
    0 12px 30px rgba(99, 102, 241, 0.08);

animation:
    huntaIconFloat
    3.8s
    ease-in-out
    infinite;
   

}

.hunta-upload-zone__icon svg {
width: 34px;
height: 34px;
}

.hunta-upload-zone__eyebrow {
margin-bottom: 8px;

   
font-size: 0.7rem;
font-weight: 800;
letter-spacing: 0.13em;
text-transform: uppercase;

color:
    var(--hunta-accent, #6366f1);
   

}

.hunta-upload-zone__title {
margin: 0;

   
font-size: clamp(1.35rem, 2.5vw, 1.85rem);
line-height: 1.2;
font-weight: 800;
letter-spacing: -0.025em;

color:
    var(--hunta-text, #0f172a);
   

}

.hunta-upload-zone__description {
max-width: 520px;

   
margin: 11px auto 22px;

font-size: 0.95rem;
line-height: 1.65;

color:
    var(--hunta-muted, #64748b);
   

}

.hunta-upload-zone__meta {
margin-top: 16px;

   
font-size: 0.72rem;
font-weight: 700;
letter-spacing: 0.06em;
text-transform: uppercase;

color:
    var(--hunta-muted, #94a3b8);
   

}

.hunta-upload-zone__meta span {
margin-inline: 4px;

   
color:
    var(--hunta-accent, #6366f1);
   

}

/* ============================================================
BUTTONS
============================================================ */

.hunta-btn {
position: relative;

   
display: inline-flex;
align-items: center;
justify-content: center;
gap: 9px;

min-height: 44px;

padding: 11px 19px;

border: 1px solid transparent;
border-radius: 13px;

font: inherit;
font-size: 0.88rem;
font-weight: 750;
line-height: 1;

text-decoration: none;

cursor: pointer;

overflow: hidden;

transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    opacity 180ms ease;
   

}

.hunta-btn svg {
width: 17px;
height: 17px;
flex: 0 0 auto;
}

.hunta-btn:hover:not(:disabled) {
transform: translateY(-2px);
}

.hunta-btn:active:not(:disabled) {
transform: translateY(0) scale(0.98);
}

.hunta-btn:focus-visible {
outline: 3px solid
rgba(99, 102, 241, 0.22);

   
outline-offset: 3px;
   

}

.hunta-btn:disabled {
cursor: not-allowed;
opacity: 0.55;
}

/* PRIMARY */

.hunta-btn--primary {
color: #ffffff;

   
background:
    var(--hunta-accent, #6366f1);

box-shadow:
    0 9px 22px rgba(99, 102, 241, 0.22);
   

}

.hunta-btn--primary:hover:not(:disabled) {
box-shadow:
0 14px 30px rgba(99, 102, 241, 0.28);
}

/* SUCCESS */

.hunta-btn--success {
color: #ffffff;

   
background:
    #16a34a;

box-shadow:
    0 9px 22px rgba(22, 163, 74, 0.18);
   

}

.hunta-btn--success:hover:not(:disabled) {
box-shadow:
0 14px 30px rgba(22, 163, 74, 0.24);
}

/* SECONDARY */

.hunta-btn--secondary {
color:
var(--hunta-text, #334155);

   
border-color:
    var(--hunta-border, rgba(15, 23, 42, 0.10));

background:
    var(--hunta-surface, #ffffff);
   

}

.hunta-btn--secondary:hover:not(:disabled) {
border-color:
rgba(99, 102, 241, 0.25);

   
background:
    var(--hunta-surface-soft, #f8fafc);
   

}

/* LARGE */

.hunta-btn--large {
min-height: 52px;

   
padding: 14px 24px;

border-radius: 15px;

font-size: 0.92rem;
   

}

/* ============================================================
BUTTON SHIMMER
============================================================ */

.hunta-btn--primary::after,
.hunta-btn--success::after {
content: "";

   
position: absolute;
top: 0;
bottom: 0;
left: -80%;

width: 45%;

background:
    linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.22),
        transparent
    );

transform: skewX(-18deg);

transition: left 500ms ease;

pointer-events: none;
   

}

.hunta-btn--primary:hover::after,
.hunta-btn--success:hover::after {
left: 130%;
}

/* ============================================================
ACTIONS
============================================================ */

.hunta-tool-actions {
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
gap: 12px;

   
padding:
    28px
    clamp(18px, 3vw, 38px)
    4px;
   

}

/* ============================================================
STATUS
============================================================ */

.hunta-tool-status-message {
width: min(
calc(100% - 48px),
1040px
);

   
margin: 20px auto 0;

min-height: 0;
   

}

.hunta-tool-status-message:empty {
display: none;
}

.hunta-alert {
display: flex;
align-items: flex-start;
gap: 12px;

   
padding: 14px 16px;

border-radius: 14px;

font-size: 0.88rem;
line-height: 1.55;
   

}

.hunta-alert__icon {
flex: 0 0 auto;

   
display: flex;
padding-top: 1px;
   

}

.hunta-alert__icon svg {
width: 18px;
height: 18px;
}

.hunta-alert-danger {
color: #991b1b;

   
border: 1px solid rgba(239, 68, 68, 0.16);

background: rgba(239, 68, 68, 0.07);
   

}

/* ============================================================
PREVIEW
============================================================ */

.hunta-preview-container {
position: relative;
z-index: 2;

   
width: 100%;

display: flex;
align-items: center;
justify-content: center;
   

}

.hunta-image-preview {
display: block;

   
width: auto;
max-width: 100%;
max-height: 390px;

object-fit: contain;

border-radius: 18px;

box-shadow:
    0 18px 45px rgba(15, 23, 42, 0.16);

animation:
    huntaPreviewReveal
    500ms
    cubic-bezier(.2, .8, .2, 1)
    both;
   

}

/* ============================================================
DRAG OVERLAY
============================================================ */

.hunta-upload-zone__drag-overlay {
position: absolute;
inset: 14px;

   
z-index: 5;

display: flex;
align-items: center;
justify-content: center;
flex-direction: column;

gap: 7px;

border: 2px dashed
    var(--hunta-accent, #6366f1);

border-radius: 18px;

background:
    rgba(255, 255, 255, 0.92);

color:
    var(--hunta-text, #0f172a);

opacity: 0;
visibility: hidden;

transform: scale(0.97);

transition:
    opacity 180ms ease,
    visibility 180ms ease,
    transform 180ms ease;

pointer-events: none;
   

}

.hunta-upload-zone.bg-white
.hunta-upload-zone__drag-overlay,

.hunta-upload-zone.is-dragover
.hunta-upload-zone__drag-overlay {
opacity: 1;
visibility: visible;

   
transform: scale(1);

animation:
    huntaDragPulse
    1.4s
    ease-in-out
    infinite;
   

}

.hunta-upload-zone__drag-icon {
width: 58px;
height: 58px;

   
display: flex;
align-items: center;
justify-content: center;

margin-bottom: 4px;

border-radius: 17px;

background:
    rgba(99, 102, 241, 0.10);

color:
    var(--hunta-accent, #6366f1);
   

}

.hunta-upload-zone__drag-icon svg {
width: 27px;
height: 27px;
}

.hunta-upload-zone__drag-overlay strong {
font-size: 1rem;
font-weight: 800;
}

.hunta-upload-zone__drag-overlay span {
font-size: 0.82rem;

   
color:
    var(--hunta-muted, #64748b);
   

}

/* ============================================================
RESULT
============================================================ */

.hunta-result {
width: min(
calc(100% - 48px),
1040px
);

   
margin: 34px auto 0;

padding: clamp(20px, 3vw, 30px);

border: 1px solid
    var(--hunta-border, rgba(15, 23, 42, 0.08));

border-radius: 22px;

background:
    var(--hunta-surface-soft, #f8fafc);

animation:
    huntaResultReveal
    560ms
    cubic-bezier(.2, .8, .2, 1)
    both;
   

}

.hunta-result__header {
display: flex;
align-items: center;
justify-content: space-between;
gap: 20px;

   
margin-bottom: 20px;
   

}

.hunta-result__eyebrow {
display: block;

   
margin-bottom: 5px;

font-size: 0.68rem;
font-weight: 850;
letter-spacing: 0.12em;
text-transform: uppercase;

color: #16a34a;
   

}

.hunta-result__title {
margin: 0;

   
font-size: 1.3rem;
font-weight: 800;
letter-spacing: -0.02em;

color:
    var(--hunta-text, #0f172a);
   

}

.hunta-result__success {
width: 40px;
height: 40px;

   
display: flex;
align-items: center;
justify-content: center;

flex: 0 0 auto;

border-radius: 50%;

background:
    rgba(34, 197, 94, 0.10);

color: #16a34a;

animation:
    huntaSuccessPop
    500ms
    cubic-bezier(.2, .8, .2, 1)
    both;
   

}

.hunta-result__success svg {
width: 20px;
height: 20px;
}

/* ============================================================
RESULT PREVIEW / TRANSPARENCY
============================================================ */

.hunta-result__preview {
position: relative;

   
min-height: 260px;

display: flex;
align-items: center;
justify-content: center;

overflow: hidden;

border-radius: 18px;

background:
    #f1f5f9;
   

}

.hunta-result__checkerboard {
position: absolute;
inset: 0;

   
background-image:
    linear-gradient(45deg, #e2e8f0 25%, transparent 25%),
    linear-gradient(-45deg, #e2e8f0 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, #e2e8f0 75%),
    linear-gradient(-45deg, transparent 75%, #e2e8f0 75%);

background-size: 24px 24px;

background-position:
    0 0,
    0 12px,
    12px -12px,
    -12px 0;

opacity: 0.72;
   

}

.hunta-result__image {
position: relative;
z-index: 2;

   
display: block;

width: auto;
max-width: 100%;
max-height: 520px;

object-fit: contain;

animation:
    huntaResultImageReveal
    600ms
    cubic-bezier(.2, .8, .2, 1)
    both;
   

}

.hunta-result__actions {
display: flex;
justify-content: center;

   
padding-top: 22px;
   

}

/* ============================================================
INFORMATION AREA
============================================================ */

.hunta-tool-information {
width: min(100%, 1180px);

   
margin-inline: auto;
   

}

.hunta-tool-information > * {
animation:
huntaInformationReveal
650ms
cubic-bezier(.2, .8, .2, 1)
both;
}

.hunta-tool-information > *:nth-child(2) {
animation-delay: 70ms;
}

.hunta-tool-information > *:nth-child(3) {
animation-delay: 140ms;
}

.hunta-tool-information > *:nth-child(4) {
animation-delay: 210ms;
}

.hunta-tool-information > *:nth-child(5) {
animation-delay: 280ms;
}

.hunta-tool-information > *:nth-child(6) {
animation-delay: 350ms;
}

/* ============================================================
ANIMATIONS
============================================================ */

@keyframes huntaToolCardReveal {
from {
opacity: 0;
transform: translateY(18px);
}

   
to {
    opacity: 1;
    transform: translateY(0);
}
   

}

@keyframes huntaIconFloat {
0%,
100% {
transform: translateY(0);
}

   
50% {
    transform: translateY(-6px);
}
   

}

@keyframes huntaStatusPulse {
0%,
100% {
opacity: 1;
box-shadow:
0 0 0 4px rgba(34, 197, 94, 0.12);
}

   
50% {
    opacity: 0.65;
    box-shadow:
        0 0 0 7px rgba(34, 197, 94, 0.05);
}
   

}

@keyframes huntaPreviewReveal {
from {
opacity: 0;
transform:
translateY(12px)
scale(0.985);
}

   
to {
    opacity: 1;
    transform:
        translateY(0)
        scale(1);
}
   

}

@keyframes huntaDragPulse {
0%,
100% {
box-shadow:
inset 0 0 0 0 rgba(99, 102, 241, 0.04);
}

   
50% {
    box-shadow:
        inset 0 0 0 7px rgba(99, 102, 241, 0.06);
}
   

}

@keyframes huntaResultReveal {
from {
opacity: 0;
transform:
translateY(18px)
scale(0.99);
}

   
to {
    opacity: 1;
    transform:
        translateY(0)
        scale(1);
}
   

}

@keyframes huntaResultImageReveal {
from {
opacity: 0;
transform:
scale(0.97);
}

   
to {
    opacity: 1;
    transform:
        scale(1);
}
   

}

@keyframes huntaSuccessPop {
0% {
opacity: 0;
transform: scale(0.65);
}

   
70% {
    transform: scale(1.08);
}

100% {
    opacity: 1;
    transform: scale(1);
}
   

}

@keyframes huntaInformationReveal {
from {
opacity: 0;
transform: translateY(12px);
}

   
to {
    opacity: 1;
    transform: translateY(0);
}
   

}

/* ============================================================
DARK THEME
============================================================ */

html[data-theme="dark"] .hunta-tool-card {
box-shadow:
0 20px 60px rgba(0, 0, 0, 0.24);
}

html[data-theme="dark"] .hunta-upload-zone {
background:
radial-gradient(
circle at 50% 15%,
rgba(99, 102, 241, 0.13),
transparent 38%
),
var(--hunta-surface-soft, #111827);
}

html[data-theme="dark"] .hunta-upload-zone.bg-white,
html[data-theme="dark"] .hunta-upload-zone.is-dragover {
background:
rgba(99, 102, 241, 0.12);
}

html[data-theme="dark"] .hunta-upload-zone__drag-overlay {
background:
rgba(17, 24, 39, 0.95);
}

html[data-theme="dark"] .hunta-btn--secondary {
background:
var(--hunta-surface, #111827);

 
color:
    var(--hunta-text, #f8fafc);
 

}

html[data-theme="dark"] .hunta-result__preview {
background:
#0f172a;
}

html[data-theme="dark"] .hunta-result__checkerboard {
background-image:
linear-gradient(45deg, #1e293b 25%, transparent 25%),
linear-gradient(-45deg, #1e293b 25%, transparent 25%),
linear-gradient(45deg, transparent 75%, #1e293b 75%),
linear-gradient(-45deg, transparent 75%, #1e293b 75%);
}

/* ============================================================
RESPONSIVE
============================================================ */

@media (max-width: 768px) {

 
.hunta-tool-card {
    border-radius: 22px;
}

.hunta-tool-card__header {
    flex-direction: column;
    gap: 16px;

    padding:
        24px 20px 20px;
}

.hunta-tool-card__status {
    align-self: flex-start;
}

.hunta-upload-zone {
    min-height: 390px;

    margin-inline: 16px;

    padding: 28px 18px;

    border-radius: 20px;
}

.hunta-upload-zone__icon {
    width: 68px;
    height: 68px;

    border-radius: 19px;
}

.hunta-upload-zone__icon svg {
    width: 30px;
    height: 30px;
}

.hunta-tool-actions {
    padding-inline: 16px;
}

.hunta-tool-actions .hunta-btn {
    width: 100%;
}

.hunta-result {
    width: calc(100% - 32px);

    border-radius: 18px;
}

.hunta-result__preview {
    min-height: 210px;
}

.hunta-result__actions .hunta-btn {
    width: 100%;
}

.hunta-tool-status-message {
    width: calc(100% - 32px);
}
 

}

@media (max-width: 480px) {

   
.hunta-tool-card__title {
    font-size: 1.3rem;
}

.hunta-upload-zone {
    min-height: 360px;
}

.hunta-upload-zone__title {
    font-size: 1.3rem;
}

.hunta-upload-zone__description {
    font-size: 0.88rem;
}

.hunta-upload-zone__meta {
    font-size: 0.65rem;
}

.hunta-result {
    padding: 16px;
}

.hunta-result__header {
    align-items: flex-start;
}
   

}

/* ============================================================
REDUCED MOTION
============================================================ */

@media (prefers-reduced-motion: reduce) {

   
.hunta-tool-card,
.hunta-upload-zone__icon,
.hunta-tool-status-dot,
.hunta-image-preview,
.hunta-result,
.hunta-result__image,
.hunta-result__success,
.hunta-tool-information > * {
    animation: none !important;
}

.hunta-upload-zone,
.hunta-btn,
.hunta-upload-content,
.hunta-upload-zone__drag-overlay {
    transition: none !important;
}
 

}
/* ============================================================
END — HUNTA TOOL BACKGROUND REMOVER     
======================================================= */
/* ============================================================
   HUNTA — COLOR PICKER
   Color Picker-specific visual layer
   Depends on:
   - app-modern.css
   - existing Hunta tool/editor system
   - color-picker.js
   ============================================================ */


/* ============================================================
   TOOL SHELL
   ============================================================ */

.hunta-color-tool {
    width: 100%;
}

.hunta-color-tool .hunta-container {
    max-width: 1180px;
}


/* ============================================================
   MAIN CARD
   ============================================================ */

.hunta-color-card {
    overflow: hidden;
}


/* ============================================================
   UPLOAD
   ============================================================ */

.hunta-color-upload {
    min-height: 300px;
}

.hunta-color-upload__hint {
    margin-top: 1rem;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .04em;
}

.hunta-color-upload .hunta-btn {
    position: relative;
    z-index: 2;
}


/* ============================================================
   CANVAS AREA
   ============================================================ */

.hunta-color-canvas-wrap {
    margin-top: 2rem;
    padding: 1.25rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: var(--hunta-radius-lg, 1rem);
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
}

.hunta-color-canvas-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.hunta-color-canvas-eyebrow,
.hunta-color-history__eyebrow {
    display: block;
    margin-bottom: .3rem;
    color: var(--hunta-primary, #6366f1);
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.hunta-color-canvas-header h3 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1rem;
    font-weight: 800;
}

.hunta-color-canvas-indicator {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    flex-shrink: 0;
    padding: .5rem .75rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: 999px;
    color: var(--hunta-text-muted, #94a3b8);
    background: var(--hunta-surface, #fff);
    font-size: .72rem;
    font-weight: 600;
}

.hunta-color-canvas-indicator svg {
    width: 14px;
    height: 14px;
}

.hunta-color-canvas-stage {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 320px;
    overflow: hidden;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .9rem;
    background:
        linear-gradient(45deg, rgba(127,127,127,.08) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(127,127,127,.08) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(127,127,127,.08) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(127,127,127,.08) 75%);
    background-size: 24px 24px;
    background-position: 0 0, 0 12px, 12px -12px, -12px 0;
}

.hunta-color-canvas-stage canvas {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 620px;
    cursor: crosshair;
}

.hunta-color-canvas-empty {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .65rem;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .8rem;
    pointer-events: none;
}

.hunta-color-canvas-empty svg {
    width: 30px;
    height: 30px;
    opacity: .5;
}


/* ============================================================
   SELECTED COLOR
   ============================================================ */

.hunta-color-selection {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-top: 1.5rem;
    padding: 1rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: var(--hunta-radius-md, .85rem);
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
}

.hunta-color-preview {
    flex: 0 0 auto;
    width: 58px;
    height: 58px;
    border: 3px solid var(--hunta-surface, #fff);
    border-radius: 14px;
    background: transparent;
    box-shadow:
        0 0 0 1px var(--hunta-border, rgba(255,255,255,.1)),
        var(--hunta-shadow-sm, 0 4px 12px rgba(0,0,0,.08));
}

.hunta-color-selection-info {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.hunta-color-selection-label {
    color: var(--hunta-text, #111827);
    font-size: .9rem;
    font-weight: 800;
}

.hunta-color-selection-help {
    margin-top: .2rem;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .76rem;
}


/* ============================================================
   COLOR VALUES
   ============================================================ */

.hunta-color-values {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.hunta-color-value-card {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: var(--hunta-radius-md, .85rem);
    background: var(--hunta-surface, #fff);
    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        transform .2s ease;
}

.hunta-color-value-card:hover {
    border-color: var(--hunta-border-strong, rgba(99,102,241,.3));
    box-shadow: var(--hunta-shadow-sm, 0 4px 12px rgba(0,0,0,.08));
    transform: translateY(-2px);
}

.hunta-color-value-card__header {
    display: flex;
    align-items: center;
    gap: .55rem;
    margin-bottom: .7rem;
}

.hunta-color-value-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: rgba(99,102,241,.1);
    color: var(--hunta-primary, #6366f1);
}

.hunta-color-value-card__icon svg {
    width: 14px;
    height: 14px;
}

.hunta-color-value-card label {
    color: var(--hunta-text, #111827);
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
}

.hunta-color-value-card__input {
    display: flex;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .7rem;
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
}

.hunta-color-value-card__input input {
    width: 100%;
    min-width: 0;
    border: 0;
    outline: 0;
    padding: .7rem .75rem;
    background: transparent;
    color: var(--hunta-text, #111827);
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: .78rem;
    font-weight: 700;
}

.hunta-color-copy {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    flex: 0 0 auto;
    min-width: 74px;
    border: 0;
    border-left: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    background: transparent;
    color: var(--hunta-primary, #6366f1);
    font-size: .7rem;
    font-weight: 700;
    cursor: pointer;
    transition:
        background .2s ease,
        color .2s ease;
}

.hunta-color-copy:hover {
    background: rgba(99,102,241,.08);
}

.hunta-color-copy svg {
    width: 13px;
    height: 13px;
}


/* ============================================================
   STATUS
   ============================================================ */

.hunta-color-status {
    margin-top: 1rem;
}

.hunta-color-status:empty {
    display: none;
}


/* ============================================================
   HISTORY
   ============================================================ */

.hunta-color-history {
    margin-top: 2rem;
    padding-top: 1.75rem;
    border-top: 1px solid var(--hunta-border, rgba(255,255,255,.1));
}

.hunta-color-history__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.hunta-color-history__header h3 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1rem;
    font-weight: 800;
}

.hunta-color-clear {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .5rem .75rem;
    border: 1px solid rgba(239,68,68,.2);
    border-radius: 999px;
    background: rgba(239,68,68,.06);
    color: var(--hunta-danger, #ef4444);
    font-size: .7rem;
    font-weight: 700;
    cursor: pointer;
    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.hunta-color-clear:hover {
    border-color: rgba(239,68,68,.35);
    background: rgba(239,68,68,.1);
    transform: translateY(-1px);
}

.hunta-color-clear svg {
    width: 13px;
    height: 13px;
}

.hunta-color-history__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    margin-top: 1rem;
}

.hunta-color-history__list:empty {
    display: none;
}

/*
 * The JS creates the history item itself with:
 * border rounded p-2 d-flex align-items-center gap-2 bg-white
 *
 * We style that generated element without changing JS.
 */
.hunta-color-history__list > div {
    min-width: 0;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1)) !important;
    border-radius: .8rem !important;
    padding: .7rem !important;
    background: var(--hunta-surface, #fff) !important;
    color: var(--hunta-text, #111827);
    transition:
        border-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

.hunta-color-history__list > div:hover {
    border-color: var(--hunta-border-strong, rgba(99,102,241,.3)) !important;
    box-shadow: var(--hunta-shadow-sm, 0 4px 12px rgba(0,0,0,.08));
    transform: translateY(-1px);
}

.hunta-color-history__list .history-color {
    flex: 0 0 auto;
    border-radius: 9px !important;
}

.hunta-color-history__list .history-copy {
    border-radius: 999px;
}

.hunta-color-history__empty {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    min-height: 90px;
    margin-top: 1rem;
    padding: 1rem;
    border: 1px dashed var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .8rem;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .75rem;
    text-align: center;
}

.hunta-color-history__empty svg {
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
}

.hunta-color-history__list:not(:empty) + .hunta-color-history__empty {
    display: none;
}


/* ============================================================
   INFORMATION CARD
   ============================================================ */

.hunta-color-info {
    margin-top: 1.5rem;
}

.hunta-color-info-card {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.5rem;
}

.hunta-color-info-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: rgba(99,102,241,.1);
    color: var(--hunta-primary, #6366f1);
}

.hunta-color-info-card__icon svg {
    width: 20px;
    height: 20px;
}

.hunta-color-info-card__content {
    min-width: 0;
}

.hunta-color-info-card__content h2 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1rem;
    font-weight: 800;
}

.hunta-color-info-card__content p {
    margin: .45rem 0 0;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .82rem;
    line-height: 1.6;
}

.hunta-color-info-features {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem 1.25rem;
    margin-top: 1rem;
}

.hunta-color-info-features > div {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    color: var(--hunta-text, #111827);
    font-size: .75rem;
    font-weight: 600;
}

.hunta-color-info-features svg {
    width: 15px;
    height: 15px;
    color: var(--hunta-success, #22c55e);
}


/* ============================================================
   DARK MODE
   ============================================================ */

[data-theme="dark"] .hunta-color-canvas-stage,
.dark .hunta-color-canvas-stage {
    background-color: rgba(255,255,255,.025);
}

[data-theme="dark"] .hunta-color-value-card,
.dark .hunta-color-value-card,
[data-theme="dark"] .hunta-color-history__list > div,
.dark .hunta-color-history__list > div {
    background: var(--hunta-surface, #111827) !important;
}

[data-theme="dark"] .hunta-color-value-card__input,
.dark .hunta-color-value-card__input {
    background: rgba(255,255,255,.025);
}

[data-theme="dark"] .hunta-color-history__list .text-muted,
.dark .hunta-color-history__list .text-muted {
    color: var(--hunta-text-muted, #94a3b8) !important;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 991.98px) {

    .hunta-color-values {
        grid-template-columns: 1fr;
    }

    .hunta-color-history__list {
        grid-template-columns: 1fr;
    }

    .hunta-color-canvas-stage {
        min-height: 280px;
    }

}


@media (max-width: 767.98px) {

    .hunta-color-canvas-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .hunta-color-canvas-indicator {
        width: 100%;
        justify-content: center;
    }

    .hunta-color-canvas-stage {
        min-height: 240px;
    }

    .hunta-color-selection {
        padding: .85rem;
    }

    .hunta-color-preview {
        width: 50px;
        height: 50px;
    }

    .hunta-color-info-card {
        padding: 1.25rem;
    }

}


@media (max-width: 575.98px) {

    .hunta-color-upload {
        min-height: 260px;
    }

    .hunta-color-canvas-wrap {
        padding: .75rem;
    }

    .hunta-color-canvas-stage {
        min-height: 210px;
    }

    .hunta-color-selection {
        gap: .75rem;
    }

    .hunta-color-selection-label {
        font-size: .82rem;
    }

    .hunta-color-selection-help {
        font-size: .7rem;
    }

    .hunta-color-copy {
        min-width: 42px;
    }

    .hunta-color-copy span {
        display: none;
    }

    .hunta-color-info-features {
        flex-direction: column;
        gap: .65rem;
    }

    .hunta-color-history__header {
        align-items: flex-start;
    }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-color-value-card,
    .hunta-color-history__list > div,
    .hunta-color-clear {
        transition: none;
    }

}

/* ============================================================
   HUNTA — IMAGE COMPRESSOR
   Compressor-specific visual layer

   DEPENDS ON:
   - app-modern.css
   - existing Hunta tool system
   - compressor.js

   IMPORTANT:
   Do not redefine shared Hunta buttons, cards, upload zones,
   heroes, alerts, etc. here.
   ============================================================ */


/* ============================================================
   SHELL
   ============================================================ */

.hunta-compressor {
    width: 100%;
}

.hunta-compressor .hunta-container {
    max-width: 1180px;
}


/* ============================================================
   MAIN CARD
   ============================================================ */

.hunta-compressor-card {
    overflow: hidden;
}


/* ============================================================
   UPLOAD
   ============================================================ */

.hunta-compressor-upload {
    min-height: 330px;
}

.hunta-compressor-upload__formats {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: .45rem;
    margin: 1rem 0 1.25rem;
}

.hunta-compressor-upload__formats span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    padding: .35rem .6rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: 999px;
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .06em;
}

.hunta-compressor-upload__button {
    position: relative;
    z-index: 2;
}

.hunta-compressor-upload__hint {
    margin: .9rem 0 0;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .7rem;
}


/* ============================================================
   TOOLBAR
   ============================================================ */

.hunta-compressor-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    margin-top: 1.5rem;
    padding: 1.15rem 1.25rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: var(--hunta-radius-lg, 1rem);
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
}

.hunta-compressor-toolbar__eyebrow,
.hunta-compressor-settings__eyebrow,
.hunta-compressor-summary__eyebrow {
    display: block;
    margin-bottom: .3rem;
    color: var(--hunta-primary, #6366f1);
    font-size: .63rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.hunta-compressor-toolbar__info h2 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1rem;
    font-weight: 800;
}

.hunta-compressor-toolbar__info p {
    margin: .3rem 0 0;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .75rem;
}

.hunta-compressor-toolbar__info p strong {
    color: var(--hunta-text, #111827);
}

.hunta-compressor-toolbar__actions {
    display: flex;
    align-items: center;
    gap: .55rem;
    flex-shrink: 0;
}

.hunta-compressor-secondary,
.hunta-compressor-danger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    min-height: 38px;
    padding: .55rem .85rem;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 700;
    cursor: pointer;
    transition:
        transform .2s ease,
        background .2s ease,
        border-color .2s ease;
}

.hunta-compressor-secondary {
    border: 1px solid var(--hunta-border-strong, rgba(99,102,241,.25));
    background: transparent;
    color: var(--hunta-primary, #6366f1);
}

.hunta-compressor-secondary:hover {
    background: rgba(99,102,241,.08);
    transform: translateY(-1px);
}

.hunta-compressor-danger {
    border: 1px solid rgba(239,68,68,.2);
    background: rgba(239,68,68,.05);
    color: var(--hunta-danger, #ef4444);
}

.hunta-compressor-danger:hover {
    border-color: rgba(239,68,68,.35);
    background: rgba(239,68,68,.1);
    transform: translateY(-1px);
}

.hunta-compressor-secondary svg,
.hunta-compressor-danger svg {
    width: 14px;
    height: 14px;
}


/* ============================================================
   STATUS
   ============================================================ */

.hunta-compressor-status {
    margin-top: 1rem;
}

.hunta-compressor-status:empty {
    display: none;
}


/* ============================================================
   PREVIEW GRID
   ============================================================ */

.hunta-compressor-preview {
    margin-top: 1.5rem;
}


/*
 * compressor.js creates:
 *
 * <div class="col-12 col-sm-6 col-lg-4">
 *     <div class="card h-100 shadow-sm position-relative">
 *
 * Keep the Bootstrap column classes because they are part
 * of the JavaScript layout contract.
 */

.hunta-compressor-preview > [class*="col-"] {
    display: flex;
}

.hunta-compressor-preview > [class*="col-"] > .card {
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1)) !important;
    border-radius: var(--hunta-radius-lg, 1rem) !important;
    background: var(--hunta-surface, #fff);
    box-shadow: var(--hunta-shadow-sm, 0 4px 12px rgba(0,0,0,.08)) !important;
    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.hunta-compressor-preview > [class*="col-"] > .card:hover {
    border-color: var(--hunta-border-strong, rgba(99,102,241,.3)) !important;
    box-shadow: var(--hunta-shadow-md, 0 12px 30px rgba(0,0,0,.1)) !important;
    transform: translateY(-3px);
}

.hunta-compressor-preview .card-body {
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 1rem !important;
}

.hunta-compressor-preview .card-body > img {
    width: 100%;
    height: 180px !important;
    margin-bottom: .85rem !important;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .75rem !important;
    background:
        linear-gradient(45deg, rgba(127,127,127,.07) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(127,127,127,.07) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(127,127,127,.07) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(127,127,127,.07) 75%);
    background-size: 18px 18px;
    background-position: 0 0, 0 9px, 9px -9px, -9px 0;
}

.hunta-compressor-preview .card-body small {
    margin-top: .15rem;
    color: var(--hunta-text-muted, #94a3b8) !important;
    font-size: .68rem;
}

.hunta-compressor-preview .card-body small.text-success {
    color: var(--hunta-success, #22c55e) !important;
    font-weight: 700;
}

.hunta-compressor-preview .remove-image {
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    margin: .65rem !important;
    padding: 0;
    border: 1px solid rgba(239,68,68,.25);
    border-radius: 999px;
    background: rgba(239,68,68,.9);
    box-shadow: 0 4px 12px rgba(0,0,0,.15);
}

.hunta-compressor-preview .remove-image i {
    font-size: .65rem;
}

.hunta-compressor-preview .remove-image:hover {
    transform: scale(1.05);
}

.hunta-compressor-preview .download-image,
.hunta-compressor-preview a[id^="download-"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 36px;
    margin-top: .75rem !important;
    border-radius: 999px;
    font-size: .7rem;
    font-weight: 700;
}


/* ============================================================
   SETTINGS
   ============================================================ */

.hunta-compressor-settings {
    margin-top: 1.5rem;
    padding: 1.35rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: var(--hunta-radius-lg, 1rem);
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
}

.hunta-compressor-settings__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.hunta-compressor-settings__header h2 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1rem;
    font-weight: 800;
}

.hunta-compressor-settings__header p {
    margin: .35rem 0 0;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .74rem;
    line-height: 1.5;
}

.hunta-compressor-quality-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 56px;
    padding: .45rem .7rem;
    border-radius: 999px;
    background: rgba(99,102,241,.1);
    color: var(--hunta-primary, #6366f1);
    font-size: .72rem;
    font-weight: 800;
}

.hunta-compressor-range {
    margin-top: 1.35rem;
}

.hunta-compressor-range__labels {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .45rem;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .65rem;
    font-weight: 600;
}

.hunta-compressor-range .form-range {
    margin: 0;
}


/* ============================================================
   SUMMARY
   ============================================================ */

.hunta-compressor-summary {
    margin-top: 1.5rem;
    padding: 1.35rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: var(--hunta-radius-lg, 1rem);
    background:
        linear-gradient(
            145deg,
            rgba(99,102,241,.07),
            rgba(99,102,241,.015)
        );
}

.hunta-compressor-summary__header h2 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1rem;
    font-weight: 800;
}

.hunta-compressor-summary__stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin-top: 1rem;
}

.hunta-compressor-stat {
    display: flex;
    align-items: center;
    gap: .8rem;
    padding: 1rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .85rem;
    background: var(--hunta-surface, #fff);
}

.hunta-compressor-stat__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    flex: 0 0 auto;
    border-radius: 11px;
    background: rgba(99,102,241,.1);
    color: var(--hunta-primary, #6366f1);
}

.hunta-compressor-stat__icon svg {
    width: 18px;
    height: 18px;
}

.hunta-compressor-stat strong {
    display: block;
    color: var(--hunta-text, #111827);
    font-size: 1.1rem;
    font-weight: 800;
}

.hunta-compressor-stat span {
    display: block;
    margin-top: .1rem;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .68rem;
}


/* ============================================================
   MAIN ACTION
   ============================================================ */

.hunta-compressor-action {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--hunta-border, rgba(255,255,255,.1));
}

.hunta-compressor-action__button {
    min-width: 220px;
    justify-content: center;
}

.hunta-compressor-action__hint {
    margin: .65rem 0 0;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .68rem;
}


/* ============================================================
   INFORMATION
   ============================================================ */

.hunta-compressor-info {
    margin-top: 1.5rem;
}

.hunta-compressor-info-card {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.5rem;
}

.hunta-compressor-info-card__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    flex: 0 0 auto;
    border-radius: 12px;
    background: rgba(99,102,241,.1);
    color: var(--hunta-primary, #6366f1);
}

.hunta-compressor-info-card__icon svg {
    width: 20px;
    height: 20px;
}

.hunta-compressor-info-card__content {
    min-width: 0;
}

.hunta-compressor-info-card__content h2 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1rem;
    font-weight: 800;
}

.hunta-compressor-info-card__content p {
    margin: .45rem 0 0;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .8rem;
    line-height: 1.6;
}

.hunta-compressor-info-features {
    display: flex;
    flex-wrap: wrap;
    gap: .6rem 1.25rem;
    margin-top: 1rem;
}

.hunta-compressor-info-features > div {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    color: var(--hunta-text, #111827);
    font-size: .72rem;
    font-weight: 600;
}

.hunta-compressor-info-features svg {
    width: 15px;
    height: 15px;
    color: var(--hunta-success, #22c55e);
}


/* ============================================================
   DARK MODE
   ============================================================ */

[data-theme="dark"] .hunta-compressor-preview > [class*="col-"] > .card,
.dark .hunta-compressor-preview > [class*="col-"] > .card,

[data-theme="dark"] .hunta-compressor-stat,
.dark .hunta-compressor-stat {
    background: var(--hunta-surface, #111827);
}

[data-theme="dark"] .hunta-compressor-preview .card-body small,
.dark .hunta-compressor-preview .card-body small {
    color: var(--hunta-text-muted, #94a3b8) !important;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 767.98px) {

    .hunta-compressor-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }

    .hunta-compressor-toolbar__actions {
        width: 100%;
    }

    .hunta-compressor-secondary,
    .hunta-compressor-danger {
        flex: 1;
    }

    .hunta-compressor-summary__stats {
        grid-template-columns: 1fr;
    }

    .hunta-compressor-info-card {
        padding: 1.25rem;
    }

}


@media (max-width: 575.98px) {

    .hunta-compressor-upload {
        min-height: 280px;
    }

    .hunta-compressor-settings,
    .hunta-compressor-summary {
        padding: 1rem;
    }

    .hunta-compressor-settings__header {
        align-items: flex-start;
    }

    .hunta-compressor-quality-badge {
        min-width: 50px;
    }

    .hunta-compressor-toolbar {
        padding: 1rem;
    }

    .hunta-compressor-toolbar__actions {
        flex-direction: column;
    }

    .hunta-compressor-secondary,
    .hunta-compressor-danger {
        width: 100%;
    }

    .hunta-compressor-info-features {
        flex-direction: column;
        gap: .65rem;
    }

    .hunta-compressor-action__button {
        width: 100%;
    }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-compressor-preview > [class*="col-"] > .card,
    .hunta-compressor-secondary,
    .hunta-compressor-danger {
        transition: none;
    }

} 
/* ============================================================
   HUNTA — IMAGE CROPPER
   Tool-specific visual layer

   Depends on:
   - app-modern.css
   - existing Hunta shared components
   - cropper-canvas.js

   JavaScript IDs are preserved.
   ============================================================ */


/* ============================================================
   SHELL
   ============================================================ */

.hunta-cropper {
    width: 100%;
    padding: 1.5rem 0 3rem;
}

.hunta-cropper .hunta-container {
    max-width: 1440px;
}


/* ============================================================
   WORKSPACE
   ============================================================ */

.hunta-cropper-workspace {
    display: grid;
    grid-template-columns: minmax(220px, 260px) minmax(0, 1fr) minmax(230px, 280px);
    gap: 1rem;
    align-items: start;
}


/* ============================================================
   SHARED PANEL LANGUAGE
   ============================================================ */

.hunta-cropper-panel,
.hunta-cropper-control-card,
.hunta-cropper-popular {
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: var(--hunta-radius-lg, 1rem);
    background: var(--hunta-surface, #fff);
    box-shadow: var(--hunta-shadow-sm, 0 4px 16px rgba(0,0,0,.06));
}


/* ============================================================
   LEFT PANEL
   ============================================================ */

.hunta-cropper-sidebar {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.hunta-cropper-panel {
    overflow: hidden;
}

.hunta-cropper-panel__section {
    padding: 1.1rem;
    border-bottom: 1px solid var(--hunta-border, rgba(255,255,255,.1));
}

.hunta-cropper-panel__section:last-of-type {
    border-bottom: 0;
}

.hunta-cropper-panel__heading {
    margin-bottom: .85rem;
}

.hunta-cropper-panel__eyebrow {
    display: block;
    margin-bottom: .3rem;
    color: var(--hunta-primary, #6366f1);
    font-size: .58rem;
    font-weight: 800;
    letter-spacing: .13em;
    line-height: 1.2;
}

.hunta-cropper-panel__heading h2,
.hunta-cropper-control-card__heading h2 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.3;
}


/* ============================================================
   UPLOAD
   ============================================================ */

.hunta-cropper-upload {
    min-height: 210px;
    padding: 1.25rem !important;
}

.hunta-cropper-upload__content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.hunta-cropper-upload__content .hunta-upload-zone__icon {
    width: 46px;
    height: 46px;
    margin-bottom: .75rem;
}

.hunta-cropper-upload__content .hunta-upload-zone__icon svg {
    width: 21px;
    height: 21px;
}

.hunta-cropper-upload__description {
    max-width: 190px;
    margin: 0 auto;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .7rem;
    line-height: 1.5;
    text-align: center;
}

.hunta-cropper-upload__button {
    width: 100%;
    margin-top: .9rem;
    justify-content: center;
}


/* ============================================================
   IMAGE INFO
   ============================================================ */

.hunta-cropper-info-list {
    display: flex;
    flex-direction: column;
    gap: .65rem;
}

.hunta-cropper-info-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .75rem;
    font-size: .68rem;
}

.hunta-cropper-info-row span {
    color: var(--hunta-text-muted, #94a3b8);
}

.hunta-cropper-info-row strong {
    max-width: 145px;
    overflow: hidden;
    color: var(--hunta-text, #111827);
    font-weight: 700;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hunta-cropper-info-name {
    max-width: 120px;
}


/* ============================================================
   CROP DIMENSIONS
   ============================================================ */

.hunta-cropper-dimensions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
}

.hunta-cropper-dimension {
    padding: .75rem .65rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .75rem;
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
    text-align: center;
}

.hunta-cropper-dimension span {
    display: block;
    margin-bottom: .25rem;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .6rem;
    font-weight: 600;
}

.hunta-cropper-dimension strong {
    display: block;
    color: var(--hunta-text, #111827);
    font-size: .78rem;
    font-weight: 800;
}


/* ============================================================
   LEFT FOOTER
   ============================================================ */

.hunta-cropper-panel__footer {
    padding: 1rem;
}

.hunta-cropper-status:empty {
    display: none;
}

.hunta-cropper-reset {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    width: 100%;
    min-height: 38px;
    margin-top: .75rem;
    padding: .55rem .8rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .7rem;
    background: transparent;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .7rem;
    font-weight: 700;
    cursor: pointer;
    transition:
        background .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.hunta-cropper-reset:hover:not(:disabled) {
    border-color: var(--hunta-border-strong, rgba(99,102,241,.3));
    background: rgba(99,102,241,.06);
    color: var(--hunta-primary, #6366f1);
}

.hunta-cropper-reset:disabled {
    opacity: .45;
    cursor: not-allowed;
}

.hunta-cropper-reset svg {
    width: 14px;
    height: 14px;
}


/* ============================================================
   POPULAR TOOLS
   ============================================================ */

.hunta-cropper-popular {
    padding: 1rem;
}

.hunta-cropper-popular__heading {
    display: flex;
    align-items: center;
    gap: .7rem;
    margin-bottom: .9rem;
}

.hunta-cropper-popular__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    flex: 0 0 auto;
    border-radius: 10px;
    background: rgba(99,102,241,.1);
    color: var(--hunta-primary, #6366f1);
}

.hunta-cropper-popular__icon svg {
    width: 16px;
    height: 16px;
}

.hunta-cropper-popular__heading span {
    display: block;
    color: var(--hunta-primary, #6366f1);
    font-size: .53rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.hunta-cropper-popular__heading h2 {
    margin: .15rem 0 0;
    color: var(--hunta-text, #111827);
    font-size: .8rem;
    font-weight: 800;
}

.hunta-cropper-popular__list {
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

.hunta-cropper-tool-link {
    display: flex;
    align-items: center;
    gap: .6rem;
    min-width: 0;
    padding: .55rem;
    border: 1px solid transparent;
    border-radius: .65rem;
    color: var(--hunta-text, #111827);
    text-decoration: none;
    transition:
        background .2s ease,
        border-color .2s ease,
        transform .2s ease;
}

.hunta-cropper-tool-link:hover {
    border-color: var(--hunta-border, rgba(255,255,255,.1));
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
    color: var(--hunta-text, #111827);
    transform: translateX(2px);
}

.hunta-cropper-tool-link__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 27px;
    height: 27px;
    flex: 0 0 auto;
    border-radius: 8px;
    background: rgba(99,102,241,.08);
    color: var(--hunta-primary, #6366f1);
}

.hunta-cropper-tool-link__icon svg {
    width: 13px;
    height: 13px;
}

.hunta-cropper-tool-link__name {
    min-width: 0;
    flex: 1;
    overflow: hidden;
    font-size: .66rem;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.hunta-cropper-tool-link__arrow {
    width: 12px;
    height: 12px;
    flex: 0 0 auto;
    color: var(--hunta-text-muted, #94a3b8);
}


/* ============================================================
   CENTER EDITOR
   ============================================================ */

.hunta-cropper-editor {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: var(--hunta-radius-lg, 1rem);
    background: var(--hunta-surface, #fff);
    box-shadow: var(--hunta-shadow-sm, 0 4px 16px rgba(0,0,0,.06));
}

.hunta-cropper-editor__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.hunta-cropper-editor__header h2 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1rem;
    font-weight: 800;
}

.hunta-cropper-editor__header p {
    margin: .3rem 0 0;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .68rem;
    line-height: 1.45;
}

.hunta-cropper-status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: .35rem .65rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: 999px;
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .6rem;
    font-weight: 800;
    white-space: nowrap;
}


/* ============================================================
   CANVAS
   ============================================================ */

.hunta-cropper-canvas {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 560px;
    overflow: hidden;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .85rem;
    background:
        linear-gradient(45deg, rgba(127,127,127,.055) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(127,127,127,.055) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(127,127,127,.055) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(127,127,127,.055) 75%);
    background-size: 22px 22px;
    background-position: 0 0, 0 11px, 11px -11px, -11px 0;
}

.hunta-cropper-canvas canvas {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    max-height: 560px;
    object-fit: contain;
    cursor: crosshair;
    touch-action: none;
}

.hunta-cropper-canvas__empty {
    position: absolute;
    z-index: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .7rem;
    color: var(--hunta-text-muted, #94a3b8);
    pointer-events: none;
}

.hunta-cropper-canvas__empty-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: 16px;
    background: var(--hunta-surface, #fff);
}

.hunta-cropper-canvas__empty-icon svg {
    width: 24px;
    height: 24px;
}

.hunta-cropper-canvas__empty span {
    font-size: .72rem;
    font-weight: 600;
}


/*
 * Canvas starts with width/height from the Blade, while resetAll()
 * changes it to 0 × 0. Hide the empty state once the editor has
 * actual image dimensions.
 */
.hunta-cropper-canvas:has(canvas[width="0"]) .hunta-cropper-canvas__empty,
.hunta-cropper-canvas:has(canvas[height="0"]) .hunta-cropper-canvas__empty {
    display: flex;
}


/* ============================================================
   EDITOR HINT
   ============================================================ */

.hunta-cropper-editor__hint {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    margin-top: .7rem;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .62rem;
}

.hunta-cropper-editor__hint span {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
}

.hunta-cropper-editor__hint svg {
    width: 13px;
    height: 13px;
}


/* ============================================================
   RIGHT CONTROLS
   ============================================================ */

.hunta-cropper-controls {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.hunta-cropper-control-card {
    padding: 1.1rem;
}

.hunta-cropper-control-card__heading {
    margin-bottom: 1rem;
}


/* ============================================================
   CROP ACTIONS
   ============================================================ */

.hunta-cropper-control-actions {
    display: flex;
    flex-direction: column;
    gap: .55rem;
}

.hunta-cropper-crop-button {
    width: 100%;
    justify-content: center;
}

.hunta-cropper-crop-button svg {
    width: 15px;
    height: 15px;
}

.hunta-cropper-clear-button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    width: 100%;
    min-height: 38px;
    padding: .55rem .75rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .7rem;
    background: transparent;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .68rem;
    font-weight: 700;
    cursor: pointer;
    transition:
        background .2s ease,
        border-color .2s ease,
        color .2s ease;
}

.hunta-cropper-clear-button:hover:not(:disabled) {
    border-color: var(--hunta-border-strong, rgba(99,102,241,.3));
    background: rgba(99,102,241,.06);
    color: var(--hunta-primary, #6366f1);
}

.hunta-cropper-clear-button:disabled {
    opacity: .45;
    cursor: not-allowed;
}

.hunta-cropper-clear-button svg {
    width: 14px;
    height: 14px;
}


/* ============================================================
   EXPORT
   ============================================================ */

.hunta-cropper-export label {
    display: block;
    margin-bottom: .45rem;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .65rem;
    font-weight: 700;
}

.hunta-cropper-format {
    width: 100%;
    min-height: 40px;
    padding: .55rem .75rem;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .7rem;
    outline: 0;
    background: var(--hunta-surface-soft, rgba(255,255,255,.025));
    color: var(--hunta-text, #111827);
    font-size: .72rem;
    font-weight: 650;
    cursor: pointer;
    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}

.hunta-cropper-format:focus {
    border-color: var(--hunta-primary, #6366f1);
    box-shadow: var(--hunta-focus-ring, 0 0 0 3px rgba(99,102,241,.12));
}

.hunta-cropper-success {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin-top: .75rem;
    padding: .65rem .7rem;
    border: 1px solid rgba(34,197,94,.18);
    border-radius: .7rem;
    background: rgba(34,197,94,.07);
    color: var(--hunta-success, #22c55e);
    font-size: .65rem;
    font-weight: 700;
}

.hunta-cropper-success svg {
    width: 15px;
    height: 15px;
    flex: 0 0 auto;
}

.hunta-cropper-download {
    width: 100%;
    margin-top: .75rem;
    justify-content: center;
    text-decoration: none;
}


/* ============================================================
   PREVIEW
   ============================================================ */

.hunta-cropper-preview {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 170px;
    overflow: hidden;
    border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
    border-radius: .8rem;
    background:
        linear-gradient(45deg, rgba(127,127,127,.05) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(127,127,127,.05) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(127,127,127,.05) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(127,127,127,.05) 75%);
    background-size: 18px 18px;
    background-position: 0 0, 0 9px, 9px -9px, -9px 0;
}

.hunta-cropper-preview__empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
    text-align: center;
}

.hunta-cropper-preview__empty > div {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--hunta-surface, #fff);
    color: var(--hunta-text-muted, #94a3b8);
}

.hunta-cropper-preview__empty svg {
    width: 18px;
    height: 18px;
}

.hunta-cropper-preview__empty p {
    margin: .6rem 0 0;
    color: var(--hunta-text-muted, #94a3b8);
    font-size: .65rem;
    line-height: 1.45;
}

.hunta-cropper-preview__image {
    display: block;
    width: 100%;
    max-width: 100%;
    max-height: 230px;
    object-fit: contain;
}


/* ============================================================
   DARK THEME
   ============================================================ */

[data-theme="dark"] .hunta-cropper-panel,
[data-theme="dark"] .hunta-cropper-control-card,
[data-theme="dark"] .hunta-cropper-popular,
[data-theme="dark"] .hunta-cropper-editor,

.dark .hunta-cropper-panel,
.dark .hunta-cropper-control-card,
.dark .hunta-cropper-popular,
.dark .hunta-cropper-editor {
    background: var(--hunta-surface, #111827);
}

[data-theme="dark"] .hunta-cropper-canvas__empty-icon,
[data-theme="dark"] .hunta-cropper-preview__empty > div,
.dark .hunta-cropper-canvas__empty-icon,
.dark .hunta-cropper-preview__empty > div {
    background: var(--hunta-surface, #111827);
}


/* ============================================================
   RESPONSIVE
============================================================ */

@media (max-width: 1199.98px) {

    .hunta-cropper-workspace {
        grid-template-columns: 220px minmax(0, 1fr) 235px;
    }

    .hunta-cropper-canvas {
        min-height: 500px;
    }

}


@media (max-width: 991.98px) {

    .hunta-cropper-workspace {
        grid-template-columns: 1fr 1fr;
    }

    .hunta-cropper-sidebar {
        grid-column: 1;
    }

    .hunta-cropper-editor {
        grid-column: 2;
        grid-row: 1 / span 2;
    }

    .hunta-cropper-controls {
        grid-column: 1;
    }

    .hunta-cropper-canvas {
        min-height: 520px;
    }

}


@media (max-width: 767.98px) {

    .hunta-cropper {
        padding-top: .75rem;
    }

    .hunta-cropper-workspace {
        display: flex;
        flex-direction: column;
    }

    .hunta-cropper-sidebar,
    .hunta-cropper-editor,
    .hunta-cropper-controls {
        width: 100%;
    }

    .hunta-cropper-editor {
        order: 1;
    }

    .hunta-cropper-sidebar {
        order: 2;
    }

    .hunta-cropper-controls {
        order: 3;
    }

    .hunta-cropper-canvas {
        min-height: 380px;
    }

    .hunta-cropper-canvas canvas {
        max-height: 380px;
    }

    .hunta-cropper-editor__hint {
        flex-direction: column;
        align-items: flex-start;
    }

}


@media (max-width: 575.98px) {

    .hunta-cropper-editor {
        padding: .75rem;
    }

    .hunta-cropper-editor__header {
        flex-direction: column;
    }

    .hunta-cropper-status-badge {
        align-self: flex-start;
    }

    .hunta-cropper-canvas {
        min-height: 300px;
    }

    .hunta-cropper-canvas canvas {
        max-height: 300px;
    }

    .hunta-cropper-panel__section,
    .hunta-cropper-panel__footer,
    .hunta-cropper-control-card {
        padding: .9rem;
    }

}


/* ============================================================
   REDUCED MOTION
============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-cropper-tool-link,
    .hunta-cropper-reset,
    .hunta-cropper-clear-button,
    .hunta-cropper-format {
        transition: none;
    }

}
 
/* ============================================================
   HUNTA — IMAGE FORMAT CONVERTER
   Scoped tool-specific design
   Depends on:
   - app-modern.css
   ============================================================ */


/* ============================================================
   PAGE
   ============================================================ */

.hunta-converter {
    width: 100%;
    padding: 0 0 4rem;
}

.hunta-converter .hunta-container {
    width: min(1180px, calc(100% - 2rem));
    margin-inline: auto;
}


/* ============================================================
   HERO
   ============================================================ */

.hunta-converter-hero {
    padding-bottom: 2rem;
}

.hunta-converter-hero .hunta-tool-hero__content {
    max-width: 760px;
}

.hunta-converter-hero .hunta-tool-hero__eyebrow {
    display: block;
    margin-bottom: .55rem;
    color: var(--hunta-primary, #6366f1);
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
}


/* ============================================================
   MAIN SHELL
   ============================================================ */

.hunta-converter-shell {
    width: 100%;
    overflow: hidden;
    border: 1px solid var(
        --hunta-border,
        rgba(255, 255, 255, .10)
    );
    border-radius: 1.5rem;
    background: var(
        --hunta-surface,
        #fff
    );
    box-shadow: var(
        --hunta-shadow-md,
        0 1rem 3rem rgba(0, 0, 0, .08)
    );
}


/* ============================================================
   FORM
   ============================================================ */

.hunta-converter-form {
    width: 100%;
}


/* ============================================================
   UPLOAD
   ============================================================ */

.hunta-converter-upload-section {
    padding: 1.5rem;
}

.hunta-converter-upload {
    min-height: 330px;
    border-radius: 1.25rem;
    border: 1.5px dashed var(
        --hunta-border-strong,
        rgba(99, 102, 241, .28)
    );
    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(99, 102, 241, .08),
            transparent 55%
        ),
        var(--hunta-surface-soft, #f8fafc);
}

.hunta-converter-upload:hover {
    border-color: rgba(99, 102, 241, .55);
}

.hunta-converter-upload.dragover {
    border-color: var(--hunta-primary, #6366f1);
    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(99, 102, 241, .14),
            transparent 60%
        ),
        var(--hunta-surface-soft, #f8fafc);
    transform: translateY(-2px);
}

.hunta-converter-upload .hunta-upload-zone__icon {
    width: 72px;
    height: 72px;
    margin: 0 auto 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1.25rem;
    background: rgba(99, 102, 241, .10);
    color: var(--hunta-primary, #6366f1);
}

.hunta-converter-upload .hunta-upload-zone__icon svg {
    width: 34px;
    height: 34px;
}

.hunta-converter-upload__title {
    margin: 0;
    color: var(--hunta-title, #111827);
    font-size: 1.35rem;
    font-weight: 800;
}

.hunta-converter-upload__description {
    max-width: 520px;
    margin: .6rem auto 0;
    color: var(--hunta-muted, #6b7280);
    font-size: .9rem;
    line-height: 1.6;
}

.hunta-converter-formats {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .45rem;
    margin-top: 1.15rem;
}

.hunta-converter-formats span {
    padding: .35rem .6rem;
    border: 1px solid var(
        --hunta-border,
        rgba(0, 0, 0, .08)
    );
    border-radius: 999px;
    background: var(--hunta-surface, #fff);
    color: var(--hunta-text-soft, #4b5563);
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .04em;
}

.hunta-converter-upload-btn {
    margin-top: 1.25rem;
}

.hunta-converter-upload__hint {
    display: block;
    margin-top: .7rem;
    color: var(--hunta-text-muted, #9ca3af);
    font-size: .72rem;
}


/* ============================================================
   SECTION HEADINGS
   ============================================================ */

.hunta-converter-section-heading {
    text-align: center;
    margin-bottom: 1.5rem;
}

.hunta-converter-section-heading__eyebrow {
    display: block;
    margin-bottom: .4rem;
    color: var(--hunta-primary, #6366f1);
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .13em;
}

.hunta-converter-section-heading h2 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1.25rem;
    font-weight: 800;
}

.hunta-converter-section-heading p {
    max-width: 520px;
    margin: .45rem auto 0;
    color: var(--hunta-muted, #6b7280);
    font-size: .82rem;
    line-height: 1.55;
}


/* ============================================================
   PREVIEW
   ============================================================ */

.hunta-converter-preview-section {
    padding: 2.25rem 1.5rem;
    border-top: 1px solid var(
        --hunta-border,
        rgba(0, 0, 0, .08)
    );
}

.hunta-converter-preview {
    position: relative;
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 1.25rem;
    border: 1px solid var(
        --hunta-border,
        rgba(0, 0, 0, .08)
    );
    border-radius: 1.15rem;
    background:
        linear-gradient(45deg, rgba(0,0,0,.025) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(0,0,0,.025) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(0,0,0,.025) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(0,0,0,.025) 75%);
    background-size: 28px 28px;
    background-position: 0 0, 0 14px, 14px -14px, -14px 0;
}

.hunta-converter-preview__empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .7rem;
    color: var(--hunta-text-muted, #9ca3af);
    font-size: .78rem;
}

.hunta-converter-preview__empty-icon {
    width: 58px;
    height: 58px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 1rem;
    background: var(--hunta-surface, #fff);
    border: 1px solid var(
        --hunta-border,
        rgba(0, 0, 0, .08)
    );
}

.hunta-converter-preview__empty-icon svg {
    width: 25px;
    height: 25px;
}

.hunta-converter-preview__image {
    display: none;
    max-width: 100%;
    max-height: 420px;
    object-fit: contain;
    border-radius: .85rem;
    box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .12);
}


/* ============================================================
   SETTINGS
   ============================================================ */

.hunta-converter-settings {
    padding: 2.25rem 1.5rem;
    border-top: 1px solid var(
        --hunta-border,
        rgba(0, 0, 0, .08)
    );
}

.hunta-converter-settings__grid {
    max-width: 650px;
    margin: 0 auto;
}

.hunta-converter-field__label {
    display: block;
    margin-bottom: .55rem;
    color: var(--hunta-text, #111827);
    font-size: .8rem;
    font-weight: 800;
}

.hunta-converter-select-wrap {
    position: relative;
    display: flex;
    align-items: center;
}

.hunta-converter-select-wrap > svg:first-child {
    position: absolute;
    left: 1rem;
    width: 18px;
    height: 18px;
    color: var(--hunta-primary, #6366f1);
    pointer-events: none;
}

.hunta-converter-select {
    width: 100%;
    min-height: 54px;
    padding: .75rem 3rem .75rem 2.9rem;
    appearance: none;
    border: 1px solid var(
        --hunta-border-strong,
        rgba(0, 0, 0, .12)
    );
    border-radius: .9rem;
    outline: none;
    background: var(--hunta-surface, #fff);
    color: var(--hunta-text, #111827);
    font-size: .9rem;
    font-weight: 700;
    cursor: pointer;
    transition:
        border-color .2s ease,
        box-shadow .2s ease;
}

.hunta-converter-select:focus {
    border-color: var(--hunta-primary, #6366f1);
    box-shadow: 0 0 0 4px rgba(99, 102, 241, .10);
}

.hunta-converter-select-arrow {
    position: absolute;
    right: 1rem;
    width: 17px;
    height: 17px;
    color: var(--hunta-muted, #6b7280);
    pointer-events: none;
}

.hunta-converter-field__hint {
    display: block;
    margin-top: .5rem;
    color: var(--hunta-text-muted, #9ca3af);
    font-size: .7rem;
}


/* ============================================================
   ACTIONS
   ============================================================ */

.hunta-converter-actions {
    display: flex;
    gap: .75rem;
    padding: 0 1.5rem 2rem;
}

.hunta-converter-convert-btn {
    flex: 1;
    min-height: 54px;
}

.hunta-converter-reset-btn {
    min-height: 54px;
    padding-inline: 1.4rem;
    border: 1px solid var(
        --hunta-border-strong,
        rgba(0, 0, 0, .12)
    );
    border-radius: .85rem;
    background: transparent;
    color: var(--hunta-text-soft, #4b5563);
}

.hunta-converter-reset-btn:hover {
    border-color: var(--hunta-primary, #6366f1);
    color: var(--hunta-primary, #6366f1);
}


/* ============================================================
   STATUS
   ============================================================ */

.hunta-converter-status {
    padding: 0 1.5rem 1.5rem;
}

.hunta-converter-status:empty {
    display: none;
}


/* ============================================================
   RESULT
   ============================================================ */

.hunta-converter-result {
    display: none;
    padding: 2.5rem 1.5rem;
    border-top: 1px solid var(
        --hunta-border,
        rgba(0, 0, 0, .08)
    );
    background:
        linear-gradient(
            180deg,
            rgba(99, 102, 241, .045),
            transparent 70%
        );
}

.hunta-converter-result__header {
    max-width: 700px;
    margin: 0 auto 1.5rem;
}

.hunta-converter-result__success {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    text-align: left;
}

.hunta-converter-result__success-icon {
    flex: 0 0 auto;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(34, 197, 94, .12);
    color: var(--hunta-success, #22c55e);
}

.hunta-converter-result__success-icon svg {
    width: 23px;
    height: 23px;
}

.hunta-converter-result__eyebrow {
    display: block;
    margin-bottom: .25rem;
    color: var(--hunta-success, #22c55e);
    font-size: .62rem;
    font-weight: 800;
    letter-spacing: .12em;
}

.hunta-converter-result__header h2 {
    margin: 0;
    color: var(--hunta-text, #111827);
    font-size: 1.3rem;
    font-weight: 800;
}

.hunta-converter-result__header p {
    margin: .35rem 0 0;
    color: var(--hunta-muted, #6b7280);
    font-size: .8rem;
}

.hunta-converter-result__preview {
    min-height: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
    border: 1px solid var(
        --hunta-border,
        rgba(0, 0, 0, .08)
    );
    border-radius: 1.15rem;
    background:
        linear-gradient(45deg, rgba(0,0,0,.025) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(0,0,0,.025) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(0,0,0,.025) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(0,0,0,.025) 75%);
    background-size: 28px 28px;
    background-position: 0 0, 0 14px, 14px -14px, -14px 0;
}

.hunta-converter-result__image {
    display: block;
    max-width: 100%;
    max-height: 500px;
    object-fit: contain;
    border-radius: .9rem;
    box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, .14);
}

.hunta-converter-result__actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: .75rem;
    margin-top: 1.5rem;
}

.hunta-converter-download {
    min-width: 190px;
    min-height: 50px;
}

.hunta-converter-result-reset {
    min-height: 50px;
    padding-inline: 1.25rem;
    border: 1px solid var(
        --hunta-border-strong,
        rgba(0, 0, 0, .12)
    );
    border-radius: .85rem;
    background: transparent;
    color: var(--hunta-text-soft, #4b5563);
}


/* ============================================================
   DARK MODE
   ============================================================ */

[data-bs-theme="dark"] .hunta-converter-shell,
.dark .hunta-converter-shell {
    background: var(--hunta-surface, #111827);
}

[data-bs-theme="dark"] .hunta-converter-upload,
.dark .hunta-converter-upload {
    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(99, 102, 241, .12),
            transparent 55%
        ),
        var(--hunta-surface-soft, #0f172a);
}

[data-bs-theme="dark"] .hunta-converter-preview,
.dark .hunta-converter-preview,
[data-bs-theme="dark"] .hunta-converter-result__preview,
.dark .hunta-converter-result__preview {
    background:
        linear-gradient(45deg, rgba(255,255,255,.025) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(255,255,255,.025) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(255,255,255,.025) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(255,255,255,.025) 75%);
    background-size: 28px 28px;
    background-position: 0 0, 0 14px, 14px -14px, -14px 0;
}

[data-bs-theme="dark"] .hunta-converter-formats span,
.dark .hunta-converter-formats span,
[data-bs-theme="dark"] .hunta-converter-preview__empty-icon,
.dark .hunta-converter-preview__empty-icon {
    background: var(--hunta-surface, #111827);
}

[data-bs-theme="dark"] .hunta-converter-select,
.dark .hunta-converter-select {
    background: var(--hunta-surface, #111827);
    color: var(--hunta-text, #f9fafb);
}

[data-bs-theme="dark"] .hunta-converter-result,
.dark .hunta-converter-result {
    background:
        linear-gradient(
            180deg,
            rgba(99, 102, 241, .08),
            transparent 70%
        );
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 767.98px) {

    .hunta-converter .hunta-container {
        width: min(100% - 1rem, 680px);
    }

    .hunta-converter-upload-section,
    .hunta-converter-preview-section,
    .hunta-converter-settings {
        padding-inline: 1rem;
    }

    .hunta-converter-upload {
        min-height: 290px;
    }

    .hunta-converter-actions {
        padding-inline: 1rem;
    }

    .hunta-converter-result {
        padding-inline: 1rem;
    }

    .hunta-converter-result__success {
        align-items: flex-start;
    }

    .hunta-converter-result__actions {
        flex-direction: column;
    }

    .hunta-converter-download,
    .hunta-converter-result-reset {
        width: 100%;
    }
}

@media (max-width: 480px) {

    .hunta-converter-upload__title {
        font-size: 1.15rem;
    }

    .hunta-converter-upload__description {
        font-size: .82rem;
    }

    .hunta-converter-formats {
        gap: .3rem;
    }

    .hunta-converter-formats span {
        font-size: .58rem;
        padding: .3rem .48rem;
    }

    .hunta-converter-actions {
        flex-direction: column;
    }

    .hunta-converter-reset-btn {
        width: 100%;
    }
}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-converter-upload,
    .hunta-converter-select {
        transition: none;
    }
}
 

 
/* ============================================================
   HUNTA — METADATA VIEWER
   metadata-modern.css

   SCOPE:
   - Metadata Viewer only
   - No global Bootstrap overrides
   - Existing metadata.js IDs preserved
   ============================================================ */


/* ============================================================
   HERO
   ============================================================ */

.hunta-metadata {
    --metadata-glow: color-mix(
        in srgb,
        var(--hunta-accent) 14%,
        transparent
    );
}

.hunta-metadata-hero {
    position: relative;
    overflow: hidden;
}

.hunta-metadata-hero::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    top: -220px;
    right: 8%;
    border-radius: 50%;
    background: var(--metadata-glow);
    filter: blur(70px);
    pointer-events: none;
}

.hunta-metadata-kicker {
    display: inline-flex;
    align-items: center;
    margin-bottom: 10px;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--hunta-accent);
}


/* ============================================================
   MAIN
   ============================================================ */

.hunta-metadata-main {
    padding-top: 34px;
    padding-bottom: 80px;
}

.hunta-metadata-main > section + section {
    margin-top: 26px;
}


/* ============================================================
   UPLOAD
   ============================================================ */

.hunta-metadata-upload-section {
    width: 100%;
}

.hunta-metadata-upload {
    min-height: 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 42px 28px;
    text-align: center;
    border: 1px dashed var(--hunta-border-strong);
    background:
        radial-gradient(
            circle at 50% 0%,
            var(--metadata-glow),
            transparent 48%
        ),
        var(--hunta-surface);
    transition:
        border-color var(--hunta-duration) var(--hunta-ease),
        background var(--hunta-duration) var(--hunta-ease),
        transform var(--hunta-duration) var(--hunta-ease),
        box-shadow var(--hunta-duration) var(--hunta-ease);
}

.hunta-metadata-upload:hover {
    border-color: var(--hunta-accent);
    box-shadow: var(--hunta-shadow-md);
}

.hunta-metadata-upload.border-primary {
    border-color: var(--hunta-accent) !important;
    background:
        radial-gradient(
            circle at 50% 0%,
            var(--metadata-glow),
            transparent 55%
        ),
        var(--hunta-surface-soft);
    transform: translateY(-2px);
}

.hunta-upload-zone__icon {
    display: grid;
    width: 68px;
    height: 68px;
    place-items: center;
    border-radius: 20px;
    color: var(--hunta-accent);
    background: var(--hunta-surface-soft);
    border: 1px solid var(--hunta-border);
    box-shadow: var(--hunta-shadow-sm);
}

.hunta-upload-zone__icon i {
    font-size: 1.8rem;
}

.hunta-metadata-upload__content h2 {
    margin: 2px 0 6px;
    font-size: clamp(1.15rem, 2vw, 1.45rem);
    font-weight: 750;
    color: var(--hunta-text);
}

.hunta-metadata-upload__content p {
    margin: 0;
    color: var(--hunta-text-soft);
    font-size: 0.92rem;
}

.hunta-metadata-upload__formats {
    display: block;
    margin-top: 8px;
    color: var(--hunta-text-muted);
    font-size: 0.75rem;
    letter-spacing: 0.04em;
}

.hunta-metadata-browse {
    margin-top: 8px;
}


/* ============================================================
   SECTION HEADINGS
   ============================================================ */

.hunta-metadata .hunta-section-heading {
    margin-bottom: 16px;
}

.hunta-metadata .hunta-section-heading__eyebrow {
    display: block;
    margin-bottom: 4px;
    color: var(--hunta-accent);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.hunta-metadata .hunta-section-heading h2 {
    margin: 0;
    color: var(--hunta-text);
    font-size: 1.25rem;
    font-weight: 750;
}


/* ============================================================
   INSIGHTS
   ============================================================ */

.hunta-metadata-insights {
    padding: 24px;
    border: 1px solid var(--hunta-border);
    border-radius: var(--hunta-radius-lg);
    background: var(--hunta-surface);
    box-shadow: var(--hunta-shadow-sm);
}

.hunta-metadata-insight-card {
    height: 100%;
    min-height: 92px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 17px;
    border: 1px solid var(--hunta-border);
    border-radius: var(--hunta-radius-md);
    background: var(--hunta-surface-soft);
}

.hunta-metadata-insight-card__icon {
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: var(--hunta-accent);
    background: var(--metadata-glow);
}

.hunta-metadata-insight-card__icon i {
    font-size: 1.05rem;
}

.hunta-metadata-insight-card span {
    display: block;
    margin-bottom: 3px;
    color: var(--hunta-text-muted);
    font-size: 0.74rem;
}

.hunta-metadata-insight-card strong {
    display: block;
    color: var(--hunta-text);
    font-size: 1.05rem;
    font-weight: 750;
}


/* ============================================================
   PRIVACY ASSESSMENT
   ============================================================ */

.hunta-metadata-privacy {
    padding: 20px 22px;
    border: 1px solid color-mix(
        in srgb,
        var(--hunta-accent) 30%,
        var(--hunta-border)
    );
    border-radius: var(--hunta-radius-md);
    background:
        linear-gradient(
            135deg,
            var(--metadata-glow),
            transparent 70%
        ),
        var(--hunta-surface);
}

.hunta-metadata-privacy strong {
    color: var(--hunta-text);
}

.hunta-metadata-privacy p,
.hunta-metadata-privacy div {
    color: var(--hunta-text-soft);
}


/* ============================================================
   IMAGE STATS
   ============================================================ */

.hunta-metadata-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.hunta-metadata-stat {
    flex: 1 1 160px;
    min-width: 140px;
    padding: 16px 18px;
    border: 1px solid var(--hunta-border);
    border-radius: var(--hunta-radius-md);
    background: var(--hunta-surface);
}

.hunta-metadata-stat__label {
    display: block;
    margin-bottom: 6px;
    color: var(--hunta-text-muted);
    font-size: 0.72rem;
    font-weight: 650;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.hunta-metadata-stat strong {
    color: var(--hunta-text);
    font-size: 1rem;
    font-weight: 750;
}


/* ============================================================
   RESULT
   ============================================================ */

.hunta-metadata-result {
    overflow: hidden;
    border: 1px solid var(--hunta-border);
    border-radius: var(--hunta-radius-lg);
    background: var(--hunta-surface);
    box-shadow: var(--hunta-shadow-md);
}

.hunta-metadata-result__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 22px 24px;
    border-bottom: 1px solid var(--hunta-border);
}

.hunta-metadata-result__header h2 {
    margin: 0;
    color: var(--hunta-text);
    font-size: 1.25rem;
    font-weight: 750;
}


/* ============================================================
   INSPECTOR
   ============================================================ */

.hunta-metadata-inspector {
    display: grid;
    grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.45fr);
    gap: 1px;
    background: var(--hunta-border);
}

.hunta-metadata-preview-panel,
.hunta-metadata-table-panel {
    min-width: 0;
    background: var(--hunta-surface);
}

.hunta-metadata-panel-heading {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 15px 18px;
    border-bottom: 1px solid var(--hunta-border);
}

.hunta-metadata-panel-heading > div:first-child > span {
    display: block;
    margin-bottom: 2px;
    color: var(--hunta-text-muted);
    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hunta-metadata-panel-heading h3 {
    margin: 0;
    color: var(--hunta-text);
    font-size: 0.95rem;
    font-weight: 700;
}


/* ============================================================
   IMAGE PREVIEW
   ============================================================ */

.hunta-metadata-preview {
    padding: 18px;
}

.hunta-metadata-preview__stage {
    position: relative;
    min-height: 390px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border: 1px solid var(--hunta-border);
    border-radius: var(--hunta-radius-md);
    background-color: #101216;
    background-image:
        linear-gradient(45deg, rgba(255,255,255,.035) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(255,255,255,.035) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(255,255,255,.035) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(255,255,255,.035) 75%);
    background-size: 24px 24px;
    background-position: 0 0, 0 12px, 12px -12px, -12px 0;
}

.hunta-metadata-preview__stage img {
    display: block;
    max-width: 100%;
    max-height: 520px;
    width: auto;
    height: auto;
    object-fit: contain;
}


/* ============================================================
   SEARCH
   ============================================================ */

.hunta-metadata-search {
    position: relative;
    flex: 0 1 220px;
}

.hunta-metadata-search i {
    position: absolute;
    top: 50%;
    left: 12px;
    z-index: 1;
    color: var(--hunta-text-muted);
    transform: translateY(-50%);
    pointer-events: none;
}

.hunta-metadata-search input {
    width: 100%;
    height: 38px;
    padding: 0 12px 0 34px;
    border: 1px solid var(--hunta-border);
    border-radius: 10px;
    outline: none;
    color: var(--hunta-text);
    background: var(--hunta-surface-soft);
    font-size: 0.8rem;
    transition:
        border-color var(--hunta-duration-fast) var(--hunta-ease),
        box-shadow var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-metadata-search input::placeholder {
    color: var(--hunta-text-muted);
}

.hunta-metadata-search input:focus {
    border-color: var(--hunta-accent);
    box-shadow: var(--hunta-focus-ring);
}


/* ============================================================
   METADATA TABLE
   ============================================================ */

.hunta-metadata-table-wrap {
    max-height: 560px;
    overflow: auto;
}

.hunta-metadata-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
}

.hunta-metadata-table th,
.hunta-metadata-table td {
    padding: 12px 16px;
    border-bottom: 1px solid var(--hunta-border);
    text-align: left;
    vertical-align: top;
}

.hunta-metadata-table thead th {
    position: sticky;
    top: 0;
    z-index: 2;
    color: var(--hunta-text-muted);
    background: var(--hunta-surface-soft);
    font-size: 0.7rem;
    font-weight: 750;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.hunta-metadata-table tbody th {
    width: 34%;
    color: var(--hunta-text-soft);
    font-size: 0.8rem;
    font-weight: 650;
}

.hunta-metadata-table tbody td {
    color: var(--hunta-text);
    font-size: 0.82rem;
    word-break: break-word;
}

.hunta-metadata-table tbody tr:last-child th,
.hunta-metadata-table tbody tr:last-child td {
    border-bottom: 0;
}

.hunta-metadata-table tbody tr:hover th,
.hunta-metadata-table tbody tr:hover td {
    background: var(--hunta-surface-soft);
}


/* ============================================================
   GPS MAP
   ============================================================ */

.hunta-metadata-map {
    padding: 22px;
    border-top: 1px solid var(--hunta-border);
}

.hunta-metadata-map__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
}

.hunta-metadata-map__header h3 {
    margin: 0;
    color: var(--hunta-text);
    font-size: 1rem;
    font-weight: 750;
}

.hunta-metadata-map__frame {
    height: 330px;
    overflow: hidden;
    border: 1px solid var(--hunta-border);
    border-radius: var(--hunta-radius-md);
    background: var(--hunta-surface-soft);
}

.hunta-metadata-map__frame iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
}

.hunta-metadata #openMapsBtn[href] {
    display: inline-flex !important;
}


/* ============================================================
   ACTIONS
   ============================================================ */

.hunta-metadata-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 18px 22px;
    border-top: 1px solid var(--hunta-border);
    background: var(--hunta-surface-soft);
}

.hunta-metadata-action {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
}

.hunta-metadata-action--danger {
    margin-left: auto;
}


/* ============================================================
   STATUS
   ============================================================ */

.hunta-metadata #statusMessage {
    margin: 16px 22px 0;
}

.hunta-metadata #exifBadge {
    flex-shrink: 0;
}


/* ============================================================
   SEO CONTENT
   ============================================================ */

.hunta-metadata-seo {
    display: grid;
    gap: 18px;
}

.hunta-metadata-seo__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.hunta-metadata-seo__card {
    padding: 24px;
    border: 1px solid var(--hunta-border);
    border-radius: var(--hunta-radius-lg);
    background: var(--hunta-surface);
}

.hunta-metadata-seo__card h2 {
    margin: 5px 0 10px;
    color: var(--hunta-text);
    font-size: 1.05rem;
    font-weight: 750;
}

.hunta-metadata-seo__card p {
    margin: 0;
    color: var(--hunta-text-soft);
    font-size: 0.88rem;
    line-height: 1.7;
}


/* ============================================================
   DARK THEME
   ============================================================ */

[data-bs-theme="dark"] .hunta-metadata-preview__stage {
    background-color: #101216;
}


/* ============================================================
   LIGHT THEME FALLBACK
   ============================================================ */

[data-bs-theme="light"] .hunta-metadata-preview__stage {
    background-color: #f1f3f5;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 991.98px) {

    .hunta-metadata-inspector {
        grid-template-columns: 1fr;
    }

    .hunta-metadata-preview__stage {
        min-height: 300px;
    }

    .hunta-metadata-table-wrap {
        max-height: 440px;
    }

}


@media (max-width: 767.98px) {

    .hunta-metadata-main {
        padding-top: 24px;
        padding-bottom: 56px;
    }

    .hunta-metadata-upload {
        min-height: 260px;
        padding: 32px 20px;
    }

    .hunta-metadata-insights {
        padding: 18px;
    }

    .hunta-metadata-result__header {
        align-items: flex-start;
        flex-direction: column;
        padding: 18px;
    }

    .hunta-metadata-panel-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .hunta-metadata-search {
        width: 100%;
        flex-basis: auto;
    }

    .hunta-metadata-preview {
        padding: 14px;
    }

    .hunta-metadata-preview__stage {
        min-height: 260px;
    }

    .hunta-metadata-map {
        padding: 18px;
    }

    .hunta-metadata-map__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .hunta-metadata-actions {
        padding: 16px;
    }

    .hunta-metadata-action {
        flex: 1 1 calc(50% - 5px);
    }

    .hunta-metadata-action--danger {
        margin-left: 0;
    }

    .hunta-metadata-seo__grid {
        grid-template-columns: 1fr;
    }

}


@media (max-width: 479.98px) {

    .hunta-metadata-upload {
        min-height: 235px;
    }

    .hunta-upload-zone__icon {
        width: 58px;
        height: 58px;
        border-radius: 17px;
    }

    .hunta-upload-zone__icon i {
        font-size: 1.5rem;
    }

    .hunta-metadata-stat {
        flex-basis: calc(50% - 6px);
        min-width: 0;
    }

    .hunta-metadata-table th,
    .hunta-metadata-table td {
        padding: 10px 12px;
    }

    .hunta-metadata-table tbody th {
        width: 38%;
    }

    .hunta-metadata-action {
        flex-basis: 100%;
    }

}
 
/* ============================================================
   HUNTA — IMAGE RESIZER
   resizer-modern.css

   SCOPE:
   - Image Resizer only
   - No generic Bootstrap overrides
   - Existing resizer.js IDs/classes preserved
   ============================================================ */


/* ============================================================
   TOOL ROOT
   ============================================================ */

.hunta-resizer {
    --resizer-glow: color-mix(
        in srgb,
        var(--hunta-accent) 13%,
        transparent
    );
}


/* ============================================================
   HERO
   ============================================================ */

.hunta-resizer-hero {
    position: relative;
    overflow: hidden;
}

.hunta-resizer-hero::after {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    top: -240px;
    right: 10%;
    border-radius: 50%;
    background: var(--resizer-glow);
    filter: blur(75px);
    pointer-events: none;
}

.hunta-resizer-kicker {
    display: inline-flex;
    align-items: center;
    margin-bottom: 9px;
    color: var(--hunta-accent);
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .12em;
    line-height: 1;
    text-transform: uppercase;
}


/* ============================================================
   MAIN
   ============================================================ */

.hunta-resizer {
    padding-bottom: 80px;
}

.hunta-resizer > .hunta-container {
    padding-top: 32px;
}

.hunta-resizer-card {
    border: 1px solid var(--hunta-border);
    border-radius: var(--hunta-radius-lg);
    background: var(--hunta-surface);
    box-shadow: var(--hunta-shadow-sm);
}


/* ============================================================
   UPLOAD
   ============================================================ */

.hunta-resizer-upload-card {
    overflow: hidden;
}

.hunta-resizer-upload {
    min-height: 310px;
    margin: 0;
    padding: 42px 24px;
    border: 1px dashed var(--hunta-border-strong);
    border-radius: var(--hunta-radius-lg);
    background:
        radial-gradient(
            circle at 50% 0%,
            var(--resizer-glow),
            transparent 55%
        ),
        var(--hunta-surface);
    transition:
        border-color var(--hunta-duration) var(--hunta-ease),
        background var(--hunta-duration) var(--hunta-ease),
        transform var(--hunta-duration) var(--hunta-ease),
        box-shadow var(--hunta-duration) var(--hunta-ease);
}

.hunta-resizer-upload:hover {
    border-color: var(--hunta-accent);
    box-shadow: var(--hunta-shadow-md);
}

.hunta-resizer-upload.border-primary {
    border-color: var(--hunta-accent) !important;
    background:
        radial-gradient(
            circle at 50% 0%,
            var(--resizer-glow),
            transparent 60%
        ),
        var(--hunta-surface-soft);
    transform: translateY(-2px);
}

.hunta-resizer-upload .hunta-upload-zone__icon {
    width: 70px;
    height: 70px;
    margin-bottom: 4px;
    border-radius: 20px;
}

.hunta-resizer-upload .hunta-upload-zone__icon i {
    font-size: 1.8rem;
}

.hunta-resizer-upload__content h2 {
    margin: 0 0 7px;
    color: var(--hunta-text);
    font-size: clamp(1.2rem, 2vw, 1.5rem);
    font-weight: 750;
}

.hunta-resizer-upload__content p {
    max-width: 580px;
    margin: 0 auto;
    color: var(--hunta-text-soft);
    font-size: .9rem;
    line-height: 1.6;
}

.hunta-resizer-upload__formats {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    color: var(--hunta-text-muted);
    font-size: .72rem;
}

.hunta-resizer-upload-btn {
    margin-top: 9px;
}


/* ============================================================
   FILE CONTROL
   ============================================================ */

.hunta-resizer-file-control {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 22px;
    border-top: 1px solid var(--hunta-border);
    background: var(--hunta-surface-soft);
}

.hunta-resizer-file-info {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.hunta-resizer-file-icon {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border: 1px solid var(--hunta-border);
    border-radius: 12px;
    color: var(--hunta-accent);
    background: var(--hunta-surface);
}

.hunta-resizer-file-info h3 {
    margin: 0 0 2px;
    color: var(--hunta-text);
    font-size: .88rem;
    font-weight: 750;
}

.hunta-resizer-file-info p {
    margin: 0;
    color: var(--hunta-text-muted);
    font-size: .72rem;
}

.hunta-resizer-count {
    flex-shrink: 0;
    margin-left: 10px;
    padding: 6px 11px;
    border: 1px solid color-mix(
        in srgb,
        var(--hunta-accent) 25%,
        var(--hunta-border)
    );
    border-radius: 999px;
    color: var(--hunta-accent);
    background: var(--resizer-glow);
    font-size: .72rem;
    font-weight: 750;
}

.hunta-resizer-file-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.hunta-resizer-secondary,
.hunta-resizer-danger {
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid var(--hunta-border-strong);
    border-radius: 10px;
    color: var(--hunta-text-soft);
    background: var(--hunta-surface);
}

.hunta-resizer-secondary:hover {
    border-color: var(--hunta-accent);
    color: var(--hunta-accent);
}

.hunta-resizer-danger {
    border-color: color-mix(
        in srgb,
        var(--hunta-danger) 30%,
        var(--hunta-border)
    );
}

.hunta-resizer-danger:hover {
    border-color: var(--hunta-danger);
    color: var(--hunta-danger);
}


/* ============================================================
   STATUS
   ============================================================ */

.hunta-resizer-status {
    padding: 0 22px 18px;
}

.hunta-resizer-status:empty {
    display: none;
}


/* ============================================================
   SECTION HEADINGS
   ============================================================ */

.hunta-resizer-section {
    margin-top: 30px;
}

.hunta-resizer-section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 15px;
}

.hunta-resizer-section-heading > div {
    display: flex;
    align-items: center;
    gap: 12px;
}

.hunta-resizer-section-heading > div > span {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border: 1px solid var(--hunta-border);
    border-radius: 9px;
    color: var(--hunta-accent);
    background: var(--hunta-surface);
    font-size: .65rem;
    font-weight: 800;
}

.hunta-resizer-section-heading small {
    display: block;
    margin-bottom: 2px;
    color: var(--hunta-text-muted);
    font-size: .67rem;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.hunta-resizer-section-heading h2 {
    margin: 0;
    color: var(--hunta-text);
    font-size: 1.05rem;
    font-weight: 750;
}


/* ============================================================
   SELECTED IMAGE CARDS
   ============================================================ */

.hunta-resizer-image-grid,
.hunta-resizer-results-grid {
    min-height: 0;
}

.hunta-resizer-image-grid:empty,
.hunta-resizer-results-grid:empty {
    display: none;
}

.hunta-resizer-image-grid .card,
.hunta-resizer-results-grid .card {
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--hunta-border) !important;
    border-radius: var(--hunta-radius-md) !important;
    background: var(--hunta-surface) !important;
    box-shadow: var(--hunta-shadow-sm) !important;
}

.hunta-resizer-image-grid .card-body,
.hunta-resizer-results-grid .card-body {
    padding: 14px !important;
}

.hunta-resizer-image-grid img,
.hunta-resizer-results-grid img {
    width: 100%;
    min-height: 180px;
    max-height: 240px;
    object-fit: contain;
    border: 1px solid var(--hunta-border);
    border-radius: 10px !important;
    background: var(--hunta-surface-soft);
}

.hunta-resizer-image-grid .small,
.hunta-resizer-results-grid .small {
    display: block;
    margin-top: 10px !important;
    color: var(--hunta-text);
    font-size: .78rem;
    font-weight: 650;
}

.hunta-resizer-image-grid .text-muted,
.hunta-resizer-results-grid .text-muted {
    color: var(--hunta-text-muted) !important;
}

.hunta-resizer-image-grid .remove-file {
    width: 100%;
    margin-top: 10px !important;
    border-color: color-mix(
        in srgb,
        var(--hunta-danger) 30%,
        var(--hunta-border)
    );
    border-radius: 9px;
    color: var(--hunta-danger);
    background: transparent;
}

.hunta-resizer-image-grid .remove-file:hover {
    border-color: var(--hunta-danger);
    background: color-mix(
        in srgb,
        var(--hunta-danger) 8%,
        transparent
    );
}

.hunta-resizer-results-grid .card-body > p {
    margin-bottom: 10px;
    color: var(--hunta-text-soft);
    font-size: .78rem;
}

.hunta-resizer-results-grid .btn-success {
    width: 100%;
    border: 0;
    border-radius: 9px;
    font-weight: 700;
}


/* ============================================================
   SETTINGS
   ============================================================ */

.hunta-resizer-settings {
    margin-top: 34px;
    padding: 26px;
}

.hunta-resizer-settings__header {
    margin-bottom: 24px;
}

.hunta-resizer-settings__header .hunta-resizer-kicker {
    margin-bottom: 7px;
}

.hunta-resizer-settings__header h2 {
    margin: 0 0 5px;
    color: var(--hunta-text);
    font-size: 1.25rem;
    font-weight: 750;
}

.hunta-resizer-settings__header p {
    margin: 0;
    color: var(--hunta-text-muted);
    font-size: .82rem;
}


/* ============================================================
   LABELS / SELECT
   ============================================================ */

.hunta-resizer-label {
    display: block;
    margin-bottom: 7px;
    color: var(--hunta-text);
    font-size: .77rem;
    font-weight: 700;
}

.hunta-resizer-select,
.hunta-resizer-input {
    min-height: 46px;
    border: 1px solid var(--hunta-border);
    border-radius: 11px;
    color: var(--hunta-text);
    background-color: var(--hunta-surface-soft);
    box-shadow: none;
    font-size: .84rem;
}

.hunta-resizer-select:focus,
.hunta-resizer-input:focus {
    border-color: var(--hunta-accent);
    box-shadow: var(--hunta-focus-ring);
}

.hunta-resizer-mode {
    max-width: 480px;
    margin-bottom: 28px;
}


/* ============================================================
   PRESETS
   ============================================================ */

.hunta-resizer-presets {
    padding-top: 24px;
    margin-top: 24px;
    border-top: 1px solid var(--hunta-border);
}

.hunta-resizer-subheading {
    margin-bottom: 13px;
    color: var(--hunta-text);
    font-size: .8rem;
    font-weight: 700;
}


/* ============================================================
   SOCIAL CARDS
   ============================================================ */

.hunta-social-card {
    position: relative;
    display: block;
    height: 100%;
    margin: 0;
    cursor: pointer;
}

.hunta-social-card input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.hunta-social-card__body {
    position: relative;
    height: 100%;
    min-height: 86px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 15px;
    border: 1px solid var(--hunta-border);
    border-radius: var(--hunta-radius-md);
    background: var(--hunta-surface-soft);
    transition:
        border-color var(--hunta-duration-fast) var(--hunta-ease),
        background var(--hunta-duration-fast) var(--hunta-ease),
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-social-card:hover .hunta-social-card__body {
    border-color: var(--hunta-border-strong);
    transform: translateY(-2px);
}

.hunta-social-card input:checked + .hunta-social-card__body {
    border-color: var(--hunta-accent);
    background:
        linear-gradient(
            135deg,
            var(--resizer-glow),
            transparent 75%
        ),
        var(--hunta-surface);
    box-shadow: 0 0 0 1px var(--hunta-accent);
}

.hunta-social-card__icon {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: grid;
    place-items: center;
    border: 1px solid var(--hunta-border);
    border-radius: 12px;
    color: var(--hunta-text-soft);
    background: var(--hunta-surface);
}

.hunta-social-card input:checked + .hunta-social-card__body
.hunta-social-card__icon {
    color: var(--hunta-accent);
    border-color: color-mix(
        in srgb,
        var(--hunta-accent) 25%,
        var(--hunta-border)
    );
}

.hunta-social-card__icon i {
    font-size: 1.1rem;
}

.hunta-social-card__content {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.hunta-social-card__content strong {
    color: var(--hunta-text);
    font-size: .8rem;
    font-weight: 700;
}

.hunta-social-card__content small {
    color: var(--hunta-text-muted);
    font-size: .7rem;
}

.hunta-social-card__check {
    width: 23px;
    height: 23px;
    margin-left: auto;
    flex: 0 0 23px;
    display: grid;
    place-items: center;
    border: 1px solid var(--hunta-border);
    border-radius: 50%;
    color: transparent;
    background: var(--hunta-surface);
}

.hunta-social-card input:checked + .hunta-social-card__body
.hunta-social-card__check {
    border-color: var(--hunta-accent);
    color: var(--hunta-accent);
}


/* ============================================================
   CUSTOM DIMENSIONS
   ============================================================ */

.hunta-resizer-custom {
    padding-top: 24px;
    margin-top: 24px;
    border-top: 1px solid var(--hunta-border);
}

.hunta-resizer-custom__fields {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 34px minmax(0, 1fr) auto;
    align-items: end;
    gap: 12px;
}

.hunta-resizer-field {
    min-width: 0;
}

.hunta-resizer-input-wrap {
    position: relative;
}

.hunta-resizer-input-wrap .hunta-resizer-input {
    padding-right: 42px;
}

.hunta-resizer-input-wrap > span {
    position: absolute;
    top: 50%;
    right: 13px;
    color: var(--hunta-text-muted);
    font-size: .7rem;
    font-weight: 650;
    transform: translateY(-50%);
    pointer-events: none;
}

.hunta-resizer-dimension-link {
    width: 34px;
    height: 46px;
    display: grid;
    place-items: center;
    color: var(--hunta-text-muted);
}

.hunta-resizer-dimension-link i {
    font-size: 1.05rem;
}

.hunta-ratio-toggle {
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    padding: 0 3px;
    color: var(--hunta-text-soft);
    font-size: .76rem;
    cursor: pointer;
    white-space: nowrap;
}

.hunta-ratio-toggle input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.hunta-ratio-toggle__switch {
    position: relative;
    width: 36px;
    height: 21px;
    flex: 0 0 36px;
    border-radius: 999px;
    background: var(--hunta-border-strong);
    transition: background var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-ratio-toggle__switch span {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    background: var(--hunta-text);
    transition: transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-ratio-toggle input:checked + .hunta-ratio-toggle__switch {
    background: var(--hunta-accent);
}

.hunta-ratio-toggle input:checked + .hunta-ratio-toggle__switch span {
    transform: translateX(15px);
}


/* ============================================================
   FORMAT
   ============================================================ */

.hunta-resizer-format {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 24px;
    padding-top: 24px;
    margin-top: 24px;
    border-top: 1px solid var(--hunta-border);
}

.hunta-resizer-format .hunta-resizer-label {
    margin-bottom: 3px;
}

.hunta-resizer-format p {
    margin: 0;
    color: var(--hunta-text-muted);
    font-size: .72rem;
}

.hunta-resizer-format-select {
    width: 220px;
}


/* ============================================================
   SUBMIT
   ============================================================ */

.hunta-resizer-action {
    display: flex;
    justify-content: flex-end;
    padding-top: 26px;
    margin-top: 24px;
    border-top: 1px solid var(--hunta-border);
}

.hunta-resizer-submit {
    min-width: 190px;
    min-height: 46px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
}


/* ============================================================
   SEO
   ============================================================ */

.hunta-resizer-seo {
    margin-top: 52px;
}

.hunta-resizer-seo > * + * {
    margin-top: 20px;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 991.98px) {

    .hunta-resizer-custom__fields {
        grid-template-columns: minmax(0, 1fr) 30px minmax(0, 1fr);
    }

    .hunta-ratio-toggle {
        grid-column: 1 / -1;
        justify-self: start;
    }

}


@media (max-width: 767.98px) {

    .hunta-resizer {
        padding-bottom: 60px;
    }

    .hunta-resizer > .hunta-container {
        padding-top: 22px;
    }

    .hunta-resizer-upload {
        min-height: 270px;
        padding: 32px 18px;
    }

    .hunta-resizer-file-control {
        align-items: flex-start;
        flex-direction: column;
        padding: 16px;
    }

    .hunta-resizer-file-actions {
        width: 100%;
    }

    .hunta-resizer-secondary,
    .hunta-resizer-danger {
        flex: 1;
    }

    .hunta-resizer-settings {
        padding: 20px;
    }

    .hunta-resizer-format {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
    }

    .hunta-resizer-format-select {
        width: 100%;
    }

    .hunta-resizer-action {
        justify-content: stretch;
    }

    .hunta-resizer-submit {
        width: 100%;
    }

}


@media (max-width: 575.98px) {

    .hunta-resizer-upload__formats {
        flex-wrap: wrap;
        justify-content: center;
    }

    .hunta-resizer-count {
        margin-left: 4px;
    }

    .hunta-resizer-custom__fields {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .hunta-resizer-dimension-link {
        display: none;
    }

    .hunta-ratio-toggle {
        grid-column: auto;
        margin-top: 3px;
    }

    .hunta-resizer-section-heading h2 {
        font-size: .95rem;
    }

}
 /* ============================================================
HUNTA — IMAGE TO HEX / BITMAP GENERATOR
Scoped tool styling
Depends on app-modern.css
============================================================ */

.hunta-hexcode {
padding: 1.5rem 0 5rem;
}

.hunta-hexcode .hunta-container {
max-width: 1280px;
}

/* ============================================================
HERO
============================================================ */

.hunta-hexcode-hero {
position: relative;
overflow: hidden;
}

.hunta-hexcode-hero::after {
content: "";
position: absolute;
width: 420px;
height: 420px;
right: -180px;
top: -220px;
border-radius: 50%;
background: var(--hunta-accent);
opacity: .07;
pointer-events: none;
}

.hunta-hexcode-hero__meta {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: .65rem;
margin-top: 1.25rem;
}

.hunta-hexcode-hero__meta span {
display: inline-flex;
align-items: center;
gap: .45rem;
padding: .45rem .75rem;
border: 1px solid var(--hunta-border);
border-radius: 999px;
background: var(--hunta-surface-soft);
color: var(--hunta-text-muted);
font-size: .78rem;
font-weight: 600;
}

.hunta-hexcode-hero__meta i {
color: var(--hunta-accent);
}

/* ============================================================
UPLOAD
============================================================ */

.hunta-hexcode-upload-section {
margin-bottom: 1.5rem;
}

.hunta-hexcode-upload {
position: relative;
min-height: 245px;
display: flex;
align-items: center;
justify-content: center;
gap: 1.5rem;
padding: 2.5rem !important;
text-align: left !important;
border: 1px dashed var(--hunta-border-strong) !important;
border-radius: var(--hunta-radius-lg) !important;
background:
radial-gradient(
circle at 50% 0%,
color-mix(in srgb, var(--hunta-accent) 7%, transparent),
transparent 55%
),
var(--hunta-surface) !important;
transition:
border-color var(--hunta-duration) var(--hunta-ease),
background var(--hunta-duration) var(--hunta-ease),
transform var(--hunta-duration) var(--hunta-ease);
}

.hunta-hexcode-upload:hover {
border-color: var(--hunta-accent) !important;
transform: translateY(-1px);
}

.hunta-hexcode-upload.dragover,
.hunta-hexcode-upload.is-dragover {
border-color: var(--hunta-accent) !important;
background: var(--hunta-surface-soft) !important;
}

.hunta-hexcode-upload .hunta-upload-zone__icon {
width: 76px;
height: 76px;
flex: 0 0 76px;
display: grid;
place-items: center;
border-radius: 22px;
background: color-mix(
in srgb,
var(--hunta-accent) 10%,
var(--hunta-surface)
);
color: var(--hunta-accent);
font-size: 2rem;
}

.hunta-hexcode-upload__content h2 {
margin: 0 0 .45rem;
color: var(--hunta-text);
font-size: 1.25rem;
font-weight: 750;
}

.hunta-hexcode-upload__content p {
margin: 0 0 1rem;
max-width: 620px;
color: var(--hunta-text-muted);
}

.hunta-hexcode-upload__button {
display: inline-flex;
align-items: center;
gap: .5rem;
}

.hunta-hexcode-upload__hint {
display: inline-flex;
align-items: center;
gap: .35rem;
margin-left: .75rem;
color: var(--hunta-text-muted);
font-size: .78rem;
}

/* ============================================================
PREVIEW GRID
============================================================ */

.hunta-hexcode-preview-grid {
display: grid;
grid-template-columns: minmax(0, 1.65fr) minmax(320px, .85fr);
gap: 1.25rem;
margin-bottom: 1.25rem;
}

.hunta-hexcode-info-column {
display: grid;
gap: 1.25rem;
align-content: start;
}

/* ============================================================
PANELS
============================================================ */

.hunta-hexcode-panel {
overflow: hidden;
height: 100%;
border: 1px solid var(--hunta-border);
border-radius: var(--hunta-radius-lg);
background: var(--hunta-surface);
box-shadow: var(--hunta-shadow-sm);
}

/* Social preset brand treatments */
.hunta-social-card {
    --social-brand: var(--hunta-accent);
    --social-brand-soft: rgba(124, 92, 255, .12);
    --social-brand-strong: rgba(124, 92, 255, .2);
}

.hunta-social-card--instagram {
    --social-brand: #e1306c;
    --social-brand-soft: rgba(225, 48, 108, .13);
    --social-brand-strong: rgba(225, 48, 108, .2);
}

.hunta-social-card--story {
    --social-brand: #f58529;
    --social-brand-soft: rgba(245, 133, 41, .14);
    --social-brand-strong: rgba(245, 133, 41, .2);
}

.hunta-social-card--facebook {
    --social-brand: #1877f2;
    --social-brand-soft: rgba(24, 119, 242, .13);
    --social-brand-strong: rgba(24, 119, 242, .2);
}

.hunta-social-card--youtube {
    --social-brand: #ff0033;
    --social-brand-soft: rgba(255, 0, 51, .12);
    --social-brand-strong: rgba(255, 0, 51, .2);
}

.hunta-social-card--pinterest {
    --social-brand: #e60023;
    --social-brand-soft: rgba(230, 0, 35, .12);
    --social-brand-strong: rgba(230, 0, 35, .2);
}

.hunta-social-card--linkedin {
    --social-brand: #0a66c2;
    --social-brand-soft: rgba(10, 102, 194, .12);
    --social-brand-strong: rgba(10, 102, 194, .2);
}

.hunta-social-card__body {
    transition:
        border-color var(--hunta-duration-fast) var(--hunta-ease),
        background var(--hunta-duration-fast) var(--hunta-ease),
        box-shadow var(--hunta-duration-fast) var(--hunta-ease),
        transform var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-social-card:hover .hunta-social-card__body {
    background: var(--hunta-surface);
    box-shadow: 0 12px 28px -24px rgba(50, 62, 97, .7);
    transform: translateY(-2px);
}

.hunta-social-card input:checked + .hunta-social-card__body {
    border-color: var(--social-brand);
    background:
        linear-gradient(135deg, var(--social-brand-soft), transparent 72%),
        var(--hunta-surface);
    box-shadow: 0 18px 32px -24px var(--social-brand);
}

.hunta-social-card__icon {
    border-color: color-mix(in srgb, var(--social-brand) 18%, var(--hunta-border));
    color: var(--social-brand);
    background: linear-gradient(135deg, var(--social-brand-soft), rgba(255, 255, 255, .08));
    transition:
        transform var(--hunta-duration-fast) var(--hunta-ease),
        border-color var(--hunta-duration-fast) var(--hunta-ease),
        background var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-social-card:hover .hunta-social-card__icon {
    transform: translateY(-1px) scale(1.02);
}

.hunta-social-card input:checked + .hunta-social-card__body .hunta-social-card__icon {
    border-color: color-mix(in srgb, var(--social-brand) 35%, var(--hunta-border));
    color: var(--social-brand);
    background: linear-gradient(135deg, var(--social-brand-strong), rgba(255, 255, 255, .1));
}

.hunta-social-card__check {
    transition:
        background var(--hunta-duration-fast) var(--hunta-ease),
        border-color var(--hunta-duration-fast) var(--hunta-ease),
        color var(--hunta-duration-fast) var(--hunta-ease);
}

.hunta-social-card input:checked + .hunta-social-card__body .hunta-social-card__check {
    border-color: var(--social-brand);
    background: var(--social-brand);
    color: #fff;
    box-shadow: 0 8px 18px -12px var(--social-brand);
}

.hunta-hexcode-panel__header {
padding: 1.2rem 1.3rem;
border-bottom: 1px solid var(--hunta-border);
}

.hunta-hexcode-panel__heading {
display: flex;
align-items: center;
gap: .75rem;
}

.hunta-hexcode-panel__heading h2 {
margin: 0;
color: var(--hunta-text);
font-size: .98rem;
font-weight: 750;
}

.hunta-hexcode-panel__heading p {
margin: .2rem 0 0;
color: var(--hunta-text-muted);
font-size: .78rem;
}

.hunta-hexcode-panel__icon {
width: 38px;
height: 38px;
display: grid;
place-items: center;
flex: 0 0 38px;
border-radius: 11px;
background: color-mix(
in srgb,
var(--hunta-accent) 9%,
var(--hunta-surface)
);
color: var(--hunta-accent);
}

.hunta-hexcode-status {
margin-top: .8rem;
}

.hunta-hexcode-status:empty {
display: none;
}

/* ============================================================
CANVAS PREVIEW
============================================================ */

.hunta-hexcode-canvas-area {
min-height: 500px;
display: flex;
align-items: center;
justify-content: center;
padding: 1.5rem;
}

.hunta-hexcode-canvas-frame {
width: 100%;
min-height: 440px;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
border: 1px solid var(--hunta-border);
border-radius: var(--hunta-radius-md);
background-color: var(--hunta-surface-soft);
background-image:
linear-gradient(45deg, rgba(127,127,127,.08) 25%, transparent 25%),
linear-gradient(-45deg, rgba(127,127,127,.08) 25%, transparent 25%),
linear-gradient(45deg, transparent 75%, rgba(127,127,127,.08) 75%),
linear-gradient(-45deg, transparent 75%, rgba(127,127,127,.08) 75%);
background-size: 22px 22px;
background-position: 0 0, 0 11px, 11px -11px, -11px 0;
}

.hunta-hexcode-canvas-frame canvas {
display: block;
max-width: 100%;
max-height: 440px;
width: min(100%, 720px);
height: auto;
object-fit: contain;
image-rendering: pixelated;
}

/* ============================================================
IMAGE INFORMATION
============================================================ */

.hunta-hexcode-info-list {
padding: .4rem 1.3rem 1rem;
}

.hunta-hexcode-info-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
padding: .85rem 0;
border-bottom: 1px solid var(--hunta-border);
}

.hunta-hexcode-info-row:last-child {
border-bottom: 0;
}

.hunta-hexcode-info-row span {
display: inline-flex;
align-items: center;
gap: .5rem;
color: var(--hunta-text-muted);
font-size: .82rem;
}

.hunta-hexcode-info-row span i {
width: 18px;
color: var(--hunta-accent);
text-align: center;
}

.hunta-hexcode-info-row strong {
color: var(--hunta-text);
font-size: .84rem;
font-weight: 700;
text-align: right;
}

/* ============================================================
DISPLAY PREVIEW
============================================================ */

.hunta-hexcode-display-preview {
padding: 1.3rem;
}

.hunta-hexcode-display-frame {
min-height: 220px;
display: grid;
place-items: center;
overflow: hidden;
border: 1px solid var(--hunta-border);
border-radius: var(--hunta-radius-md);
background:
linear-gradient(
145deg,
var(--hunta-surface-soft),
var(--hunta-surface)
);
}

.hunta-hexcode-display-frame canvas {
display: block;
max-width: 100%;
max-height: 220px;
width: auto;
height: auto;
image-rendering: pixelated;
}

/* ============================================================
WORKSPACE
============================================================ */

.hunta-hexcode-workspace {
display: grid;
grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
gap: 1.25rem;
align-items: stretch;
margin-bottom: 3rem;
}

.hunta-hexcode-settings,
.hunta-hexcode-code-panel {
min-width: 0;
}

/* ============================================================
SECTION HEADER
============================================================ */

.hunta-hexcode-section-header {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 1rem;
padding: 1.3rem;
border-bottom: 1px solid var(--hunta-border);
}

.hunta-hexcode-section-kicker {
display: block;
margin-bottom: .25rem;
color: var(--hunta-accent);
font-size: .68rem;
font-weight: 800;
letter-spacing: .09em;
text-transform: uppercase;
}

.hunta-hexcode-section-header h2 {
margin: 0;
color: var(--hunta-text);
font-size: 1.08rem;
font-weight: 750;
}

.hunta-hexcode-section-header p {
margin: .3rem 0 0;
color: color-mix(in srgb, var(--hunta-text) 72%, transparent);
font-size: .8rem;
}

.hunta-hexcode-section-badge {
width: 40px;
height: 40px;
flex: 0 0 40px;
display: grid;
place-items: center;
border: 1px solid var(--hunta-border);
border-radius: 12px;
background: var(--hunta-surface-soft);
color: var(--hunta-accent);
}

/* ============================================================
SETTINGS
============================================================ */

.hunta-hexcode-settings-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 1rem;
padding: 1.3rem;
}

.hunta-hexcode-field-group {
padding: 1rem;
border: 1px solid var(--hunta-border);
border-radius: var(--hunta-radius-md);
background: var(--hunta-surface-soft);
}

.hunta-hexcode-field-heading {
margin-bottom: .8rem;
}

.hunta-hexcode-field-heading span {
display: inline-flex;
align-items: center;
gap: .45rem;
color: var(--hunta-text);
font-size: .8rem;
font-weight: 700;
}

.hunta-hexcode-field-heading i {
color: var(--hunta-accent);
}

.hunta-hexcode-field-group .hunta-field label {
margin-bottom: .4rem;
color: var(--hunta-text);
font-size: .74rem;
font-weight: 650;
}

.hunta-hexcode-field-group .form-select,
.hunta-hexcode-field-group .form-control {
min-height: 44px;
border-color: var(--hunta-border);
border-radius: 10px;
background-color: var(--hunta-surface);
color: var(--hunta-text);
font-size: .95rem;
font-weight: 600;
}

.hunta-hexcode-field-group .form-select option {
color: var(--hunta-text);
background: var(--hunta-surface);
font-weight: 600;
}

.hunta-hexcode-field-group .form-select:focus,
.hunta-hexcode-field-group .form-control:focus {
border-color: var(--hunta-accent);
box-shadow: var(--hunta-focus-ring);
}

/* ============================================================
DIMENSIONS
============================================================ */

.hunta-hexcode-dimensions {
display: flex;
align-items: flex-end;
gap: .6rem;
}

.hunta-hexcode-dimensions .hunta-field {
min-width: 0;
flex: 1;
}

.hunta-hexcode-dimension-x {
padding-bottom: .7rem;
color: var(--hunta-text-muted);
font-weight: 700;
}

.hunta-hexcode-input-wrap {
position: relative;
}

.hunta-hexcode-input-wrap input {
padding-right: 2.8rem;
}

.hunta-hexcode-input-wrap span {
position: absolute;
right: .8rem;
top: 50%;
transform: translateY(-50%);
color: var(--hunta-text-muted);
font-size: .72rem;
font-weight: 650;
pointer-events: none;
}

/* ============================================================
GENERATE ACTION
============================================================ */

.hunta-hexcode-generate {
display: flex;
align-items: center;
gap: .8rem;
padding: 0 1.3rem 1.3rem;
}

.hunta-hexcode-generate-btn {
min-height: 46px;
display: inline-flex;
align-items: center;
justify-content: center;
gap: .55rem;
padding-inline: 1.35rem;
}

.hunta-hexcode-generate > span {
display: inline-flex;
align-items: center;
gap: .35rem;
color: var(--hunta-text-muted);
font-size: .74rem;
}

.hunta-hexcode-generate > span i {
color: var(--hunta-accent);
}

/* ============================================================
CODE OUTPUT
============================================================ */

.hunta-hexcode-code-editor {
margin: 1.3rem 1.3rem 0;
overflow: hidden;
border: 1px solid var(--hunta-border);
border-radius: 12px;
background: #101218;
}

.hunta-hexcode-code-toolbar {
min-height: 40px;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0 .8rem;
border-bottom: 1px solid rgba(255,255,255,.08);
}

.hunta-hexcode-code-language {
display: inline-flex;
align-items: center;
gap: .45rem;
color: rgba(255,255,255,.7);
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
font-size: .7rem;
}

.hunta-hexcode-code-language span {
width: 7px;
height: 7px;
border-radius: 50%;
background: var(--hunta-accent);
}

.hunta-hexcode-code-file {
color: rgba(255,255,255,.72);
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
font-size: .68rem;
}

.hunta-hexcode-code-editor textarea {
display: block;
width: 100%;
min-height: 340px;
resize: vertical;
border: 0 !important;
border-radius: 0 !important;
outline: 0 !important;
background: transparent !important;
color: #e7e9ee !important;
box-shadow: none !important;
font-size: .75rem;
line-height: 1.65;
tab-size: 4;
}

.hunta-hexcode-code-editor textarea::placeholder {
color: rgba(255,255,255,.58);
}

/* ============================================================
CODE ACTIONS
============================================================ */

.hunta-hexcode-code-actions {
display: flex;
flex-wrap: wrap;
gap: .65rem;
padding: 1rem 1.3rem 1.3rem;
}

.hunta-hexcode-code-actions .hunta-btn {
display: inline-flex;
align-items: center;
justify-content: center;
gap: .45rem;
min-height: 42px;
}

/* ============================================================
DARK THEME
============================================================ */

[data-bs-theme="dark"] .hunta-hexcode-code-editor {
background: #0c0e12;
}

[data-bs-theme="dark"] .hunta-hexcode-upload {
background:
radial-gradient(
circle at 50% 0%,
color-mix(in srgb, var(--hunta-accent) 8%, transparent),
transparent 55%
),
var(--hunta-surface) !important;
}

/* ============================================================
RESPONSIVE
============================================================ */

@media (max-width: 1100px) {
 
.hunta-hexcode-preview-grid {
    grid-template-columns: minmax(0, 1.4fr) minmax(280px, .8fr);
}

.hunta-hexcode-workspace {
    grid-template-columns: 1fr;
}
 

}

@media (max-width: 820px) {

 
.hunta-hexcode-preview-grid {
    grid-template-columns: 1fr;
}

.hunta-hexcode-info-column {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hunta-hexcode-canvas-area {
    min-height: 380px;
}

.hunta-hexcode-canvas-frame {
    min-height: 340px;
}
 

}

@media (max-width: 640px) {

 
.hunta-hexcode {
    padding-top: .75rem;
}

.hunta-hexcode-upload {
    min-height: 250px;
    flex-direction: column;
    text-align: center !important;
    padding: 2rem 1.25rem !important;
}

.hunta-hexcode-upload .hunta-upload-zone__icon {
    width: 64px;
    height: 64px;
    flex-basis: 64px;
}

.hunta-hexcode-upload__hint {
    display: flex;
    justify-content: center;
    margin: .7rem 0 0;
}

.hunta-hexcode-info-column {
    grid-template-columns: 1fr;
}

.hunta-hexcode-settings-grid {
    grid-template-columns: 1fr;
    padding: 1rem;
}

.hunta-hexcode-section-header {
    padding: 1rem;
}

.hunta-hexcode-generate {
    align-items: stretch;
    flex-direction: column;
    padding: 0 1rem 1rem;
}

.hunta-hexcode-generate > span {
    justify-content: center;
}

.hunta-hexcode-code-editor {
    margin: 1rem 1rem 0;
}

.hunta-hexcode-code-actions {
    padding: .85rem 1rem 1rem;
}

.hunta-hexcode-code-actions .hunta-btn {
    flex: 1 1 auto;
}

.hunta-hexcode-dimensions {
    gap: .4rem;
}

.hunta-hexcode-canvas-area {
    min-height: 300px;
    padding: 1rem;
}

.hunta-hexcode-canvas-frame {
    min-height: 270px;
}
 

}


 
/* ============================================================
   HUNTA — ADVERTISEMENT BLOCK
   Scoped advertisement component
   ============================================================ */

.hunta-ad-block {
    width: 100%;
    position: relative;
}

/* ------------------------------------------------------------
   Label
   ------------------------------------------------------------ */

.hunta-ad-block__label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 8px;
    color: var(--hunta-text-muted, #8b92a3);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 1;
    text-transform: uppercase;
}

.hunta-ad-block__label::before,
.hunta-ad-block__label::after {
    content: "";
    width: 28px;
    height: 1px;
    background: var(--hunta-border, rgba(255, 255, 255, 0.08));
}

/* ------------------------------------------------------------
   Ad surface
   ------------------------------------------------------------ */

.hunta-ad-block__surface {
    width: 100%;
    min-height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;

    position: relative;

    border: 1px solid var(--hunta-border, rgba(0, 0, 0, 0.08));
    border-radius: var(--hunta-radius-md, 14px);

    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.018),
            rgba(255, 255, 255, 0)
        ),
        var(--hunta-surface-soft, #f7f8fa);

    overflow: hidden;

    transition:
        border-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        background-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

/*
 * Keep the actual AdSense element responsive.
 * Do not constrain it with a fixed width.
 */
.hunta-ad-block__surface > .adsbygoogle {
    width: 100%;
    min-width: 0;
}

/* ------------------------------------------------------------
   Empty / fallback state
   ------------------------------------------------------------ */

.hunta-ad-block__surface--empty {
    min-height: 110px;
    flex-direction: column;
    gap: 8px;

    color: var(--hunta-text-muted, #8b92a3);
    font-size: 0.78rem;
    font-weight: 600;
}

.hunta-ad-block__empty-icon {
    width: 34px;
    height: 34px;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid var(--hunta-border, rgba(0, 0, 0, 0.08));
    border-radius: 10px;

    background: var(--hunta-surface, #fff);

    color: var(--hunta-text-muted, #8b92a3);
    font-size: 0.9rem;
}

/* ------------------------------------------------------------
   Dark theme
   ------------------------------------------------------------ */

[data-bs-theme="dark"] .hunta-ad-block__surface,
.dark .hunta-ad-block__surface {
    border-color: var(--hunta-border, rgba(255, 255, 255, 0.08));

    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, 0.025),
            rgba(255, 255, 255, 0)
        ),
        var(--hunta-surface-soft, #11151c);
}

[data-bs-theme="dark"] .hunta-ad-block__empty-icon,
.dark .hunta-ad-block__empty-icon {
    border-color: var(--hunta-border, rgba(255, 255, 255, 0.08));
    background: var(--hunta-surface, #0d1117);
}

/* ------------------------------------------------------------
   Hover — extremely subtle
   ------------------------------------------------------------ */

.hunta-ad-block__surface:hover {
    border-color: var(
        --hunta-border-strong,
        rgba(0, 0, 0, 0.12)
    );
}

[data-bs-theme="dark"] .hunta-ad-block__surface:hover,
.dark .hunta-ad-block__surface:hover {
    border-color: var(
        --hunta-border-strong,
        rgba(255, 255, 255, 0.13)
    );
}

/* ------------------------------------------------------------
   Mobile
   ------------------------------------------------------------ */

@media (max-width: 575.98px) {
    .hunta-ad-block {
        margin-bottom: 1.25rem !important;
    }

    .hunta-ad-block__label {
        font-size: 0.6rem;
    }

    .hunta-ad-block__label::before,
    .hunta-ad-block__label::after {
        width: 20px;
    }

    .hunta-ad-block__surface {
        min-height: 80px;
        border-radius: 12px;
    }

    .hunta-ad-block__surface--empty {
        min-height: 95px;
    }
}
 
 
/* ============================================================
   HUNTA — TOOL ABOUT SECTION
   Scoped content / SEO section
   ============================================================ */

.hunta-tool-section.hunta-about-tool {
    position: relative;
    margin-top: 3.5rem;
    margin-bottom: 3.5rem;
}

/* ------------------------------------------------------------
   Card
   ------------------------------------------------------------ */

.hunta-about-card {
    position: relative;

    padding: clamp(1.5rem, 3vw, 2.75rem);

    border: 1px solid var(
        --hunta-border,
        rgba(15, 23, 42, 0.08)
    );

    border-radius: var(
        --hunta-radius-lg,
        22px
    );

    background:
        linear-gradient(
            135deg,
            rgba(99, 102, 241, 0.025),
            transparent 42%
        ),
        var(
            --hunta-surface,
            #ffffff
        );

    box-shadow: var(
        --hunta-shadow-sm,
        0 4px 18px rgba(15, 23, 42, 0.045)
    );

    overflow: hidden;
}

/* ------------------------------------------------------------
   Accent line
   ------------------------------------------------------------ */

.hunta-about-card__accent {
    position: absolute;

    top: 0;
    left: 0;

    width: 100%;
    height: 2px;

    background: linear-gradient(
        90deg,
        transparent 0%,
        var(--hunta-accent, #6366f1) 30%,
        var(--hunta-primary, #8b5cf6) 70%,
        transparent 100%
    );

    opacity: 0.65;
}

/* ------------------------------------------------------------
   Header
   ------------------------------------------------------------ */

.hunta-about-card__header {
    max-width: 760px;
    margin-bottom: 1.75rem;
}

.hunta-about-card__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    margin-bottom: 0.7rem;

    color: var(
        --hunta-accent,
        #6366f1
    );

    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0.1em;
    line-height: 1.2;
    text-transform: uppercase;
}

.hunta-about-card__eyebrow-icon {
    width: 1.55rem;
    height: 1.55rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 20%,
        transparent
    );

    border-radius: 7px;

    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 8%,
        transparent
    );

    font-size: 0.72rem;
}

.hunta-about-card__title {
    margin: 0;

    color: var(
        --hunta-title,
        #111827
    );

    font-size: clamp(
        1.45rem,
        2.4vw,
        2rem
    );

    font-weight: 750;
    letter-spacing: -0.025em;
    line-height: 1.2;
}

/* ------------------------------------------------------------
   Description
   ------------------------------------------------------------ */

.hunta-about-card__body {
    max-width: 900px;
}

.hunta-about-card__description {
    color: var(
        --hunta-text-soft,
        #596273
    );

    font-size: 1rem;
    font-weight: 400;
    line-height: 1.85;
}

/*
 * Preserve paragraph-like spacing when the database
 * description contains multiple lines.
 */
.hunta-about-card__description br + br {
    content: "";
    display: block;
    margin-top: 0.75rem;
}

/* ------------------------------------------------------------
   Empty state
   ------------------------------------------------------------ */

.hunta-about-card__empty {
    min-height: 90px;

    display: flex;
    align-items: center;
    gap: 0.85rem;

    padding: 1rem 1.1rem;

    border: 1px dashed var(
        --hunta-border,
        rgba(15, 23, 42, 0.1)
    );

    border-radius: var(
        --hunta-radius-md,
        14px
    );

    background: var(
        --hunta-surface-soft,
        #f7f8fa
    );

    color: var(
        --hunta-text-muted,
        #7b8494
    );
}

.hunta-about-card__empty p {
    margin: 0;

    font-size: 0.9rem;
    line-height: 1.5;
}

.hunta-about-card__empty-icon {
    width: 2rem;
    height: 2rem;

    flex: 0 0 2rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border-radius: 9px;

    background: var(
        --hunta-surface,
        #ffffff
    );

    color: var(
        --hunta-text-muted,
        #7b8494
    );

    font-size: 0.85rem;
}

/* ------------------------------------------------------------
   Dark theme
   ------------------------------------------------------------ */

[data-bs-theme="dark"] .hunta-about-card,
.dark .hunta-about-card {
    border-color: var(
        --hunta-border,
        rgba(255, 255, 255, 0.08)
    );

    background:
        linear-gradient(
            135deg,
            rgba(99, 102, 241, 0.035),
            transparent 42%
        ),
        var(
            --hunta-surface,
            #11151c
        );

    box-shadow: var(
        --hunta-shadow-sm,
        0 4px 22px rgba(0, 0, 0, 0.2)
    );
}

[data-bs-theme="dark"] .hunta-about-card__title,
.dark .hunta-about-card__title {
    color: var(
        --hunta-title,
        #f5f7fa
    );
}

[data-bs-theme="dark"] .hunta-about-card__description,
.dark .hunta-about-card__description {
    color: var(
        --hunta-text-soft,
        #aab2c0
    );
}

[data-bs-theme="dark"] .hunta-about-card__empty,
.dark .hunta-about-card__empty {
    border-color: var(
        --hunta-border,
        rgba(255, 255, 255, 0.09)
    );

    background: var(
        --hunta-surface-soft,
        #171c24
    );
}

[data-bs-theme="dark"] .hunta-about-card__empty-icon,
.dark .hunta-about-card__empty-icon {
    background: var(
        --hunta-surface,
        #11151c
    );
}

/* ------------------------------------------------------------
   Responsive
   ------------------------------------------------------------ */

@media (max-width: 767.98px) {
    .hunta-tool-section.hunta-about-tool {
        margin-top: 2.5rem;
        margin-bottom: 2.5rem;
    }

    .hunta-about-card {
        padding: 1.35rem;
        border-radius: 17px;
    }

    .hunta-about-card__header {
        margin-bottom: 1.35rem;
    }

    .hunta-about-card__title {
        font-size: 1.4rem;
    }

    .hunta-about-card__description {
        font-size: 0.94rem;
        line-height: 1.75;
    }
}

@media (max-width: 479.98px) {
    .hunta-about-card {
        padding: 1.15rem;
    }

    .hunta-about-card__eyebrow {
        font-size: 0.65rem;
    }

    .hunta-about-card__description {
        font-size: 0.9rem;
    }
}
 
 
/* ============================================================
   HUNTA — TOOL FAQ
   Premium accordion / FAQ component
   ============================================================ */

.hunta-tool-section.hunta-faq-section {
    position: relative;
    margin-top: 3.5rem;
    margin-bottom: 3.5rem;
}

/* ------------------------------------------------------------
   Main card
   ------------------------------------------------------------ */

.hunta-faq-card {
    position: relative;

    padding: clamp(1.5rem, 3vw, 2.75rem);

    border: 1px solid var(
        --hunta-border,
        rgba(15, 23, 42, 0.08)
    );

    border-radius: var(
        --hunta-radius-lg,
        22px
    );

    background:
        linear-gradient(
            135deg,
            rgba(99, 102, 241, 0.025),
            transparent 45%
        ),
        var(
            --hunta-surface,
            #ffffff
        );

    box-shadow: var(
        --hunta-shadow-sm,
        0 4px 18px rgba(15, 23, 42, 0.045)
    );

    overflow: hidden;
}

/* ------------------------------------------------------------
   Header
   ------------------------------------------------------------ */

.hunta-faq-header {
    max-width: 760px;
    margin-bottom: 2rem;
}

.hunta-faq-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    margin-bottom: 0.7rem;

    color: var(
        --hunta-accent,
        #6366f1
    );

    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0.1em;
    line-height: 1.2;
    text-transform: uppercase;
}

.hunta-faq-eyebrow__icon {
    width: 1.55rem;
    height: 1.55rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 20%,
        transparent
    );

    border-radius: 7px;

    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 8%,
        transparent
    );

    font-size: 0.72rem;
}

.hunta-faq-title {
    margin: 0 0 0.55rem;

    color: var(
        --hunta-title,
        #111827
    );

    font-size: clamp(
        1.45rem,
        2.4vw,
        2rem
    );

    font-weight: 750;
    letter-spacing: -0.025em;
    line-height: 1.2;
}

.hunta-faq-description {
    max-width: 680px;

    margin: 0;

    color: var(
        --hunta-text-muted,
        #7b8494
    );

    font-size: 0.95rem;
    line-height: 1.7;
}

/* ------------------------------------------------------------
   FAQ list
   ------------------------------------------------------------ */

.hunta-faq-list {
    border-top: 1px solid var(
        --hunta-border,
        rgba(15, 23, 42, 0.08)
    );
}

/* ------------------------------------------------------------
   FAQ item
   ------------------------------------------------------------ */

.hunta-faq-item {
    border-bottom: 1px solid var(
        --hunta-border,
        rgba(15, 23, 42, 0.08)
    );
}

.hunta-faq-item--last {
    border-bottom: 0;
}

.hunta-faq-question {
    margin: 0;
}

/* ------------------------------------------------------------
   Question button
   ------------------------------------------------------------ */

.hunta-faq-button {
    width: 100%;
    min-height: 76px;

    display: grid;
    grid-template-columns: 2.25rem minmax(0, 1fr) 2.25rem;
    align-items: center;
    gap: 1rem;

    padding: 1rem 0;

    border: 0;
    border-radius: 0;

    background: transparent;

    color: var(
        --hunta-text,
        #111827
    );

    font: inherit;
    font-size: 0.98rem;
    font-weight: 650;
    line-height: 1.45;

    text-align: left;

    cursor: pointer;

    transition:
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        background-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-faq-button:hover {
    color: var(
        --hunta-accent,
        #6366f1
    );
}

.hunta-faq-button:focus-visible {
    outline: none;

    border-radius: 10px;

    box-shadow:
        0 0 0 2px var(--hunta-surface, #fff),
        0 0 0 4px var(
            --hunta-accent,
            #6366f1
        );
}

/* ------------------------------------------------------------
   Number
   ------------------------------------------------------------ */

.hunta-faq-number {
    width: 2rem;
    height: 2rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border-radius: 8px;

    background: var(
        --hunta-surface-soft,
        #f4f6f9
    );

    color: var(
        --hunta-text-muted,
        #7b8494
    );

    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.03em;

    transition:
        background-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-faq-button:hover .hunta-faq-number,
.hunta-faq-button:not(.collapsed) .hunta-faq-number {
    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 10%,
        transparent
    );

    color: var(
        --hunta-accent,
        #6366f1
    );
}

/* ------------------------------------------------------------
   Question text
   ------------------------------------------------------------ */

.hunta-faq-question__text {
    min-width: 0;
}

/* ------------------------------------------------------------
   Toggle icon
   ------------------------------------------------------------ */

.hunta-faq-toggle {
    width: 2rem;
    height: 2rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid var(
        --hunta-border,
        rgba(15, 23, 42, 0.09)
    );

    border-radius: 50%;

    background: var(
        --hunta-surface-soft,
        #f7f8fa
    );

    color: var(
        --hunta-text-muted,
        #7b8494
    );

    font-size: 0.9rem;

    transition:
        transform 220ms var(--hunta-ease, ease),
        background-color 160ms var(--hunta-ease, ease),
        border-color 160ms var(--hunta-ease, ease),
        color 160ms var(--hunta-ease, ease);
}

.hunta-faq-button:not(.collapsed) .hunta-faq-toggle {
    transform: rotate(45deg);

    border-color: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 20%,
        transparent
    );

    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 9%,
        transparent
    );

    color: var(
        --hunta-accent,
        #6366f1
    );
}

/* ------------------------------------------------------------
   Answer
   ------------------------------------------------------------ */

.hunta-faq-answer {
    padding: 0 3.25rem 1.5rem;
}

.hunta-faq-answer__inner {
    max-width: 820px;

    padding-left: 1rem;

    border-left: 2px solid color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 18%,
        transparent
    );

    color: var(
        --hunta-text-soft,
        #596273
    );

    font-size: 0.94rem;
    font-weight: 400;
    line-height: 1.8;
}

/* ------------------------------------------------------------
   Dark theme
   ------------------------------------------------------------ */

[data-bs-theme="dark"] .hunta-faq-card,
.dark .hunta-faq-card {
    border-color: var(
        --hunta-border,
        rgba(255, 255, 255, 0.08)
    );

    background:
        linear-gradient(
            135deg,
            rgba(99, 102, 241, 0.035),
            transparent 45%
        ),
        var(
            --hunta-surface,
            #11151c
        );

    box-shadow:
        0 4px 22px rgba(0, 0, 0, 0.2);
}

[data-bs-theme="dark"] .hunta-faq-list,
[data-bs-theme="dark"] .hunta-faq-item,
.dark .hunta-faq-list,
.dark .hunta-faq-item {
    border-color: var(
        --hunta-border,
        rgba(255, 255, 255, 0.08)
    );
}

[data-bs-theme="dark"] .hunta-faq-title,
[data-bs-theme="dark"] .hunta-faq-button,
.dark .hunta-faq-title,
.dark .hunta-faq-button {
    color: var(
        --hunta-title,
        #f5f7fa
    );
}

[data-bs-theme="dark"] .hunta-faq-description,
.dark .hunta-faq-description {
    color: var(
        --hunta-text-muted,
        #929baa
    );
}

[data-bs-theme="dark"] .hunta-faq-number,
[data-bs-theme="dark"] .hunta-faq-toggle,
.dark .hunta-faq-number,
.dark .hunta-faq-toggle {
    background: var(
        --hunta-surface-soft,
        #181d25
    );

    border-color: var(
        --hunta-border,
        rgba(255, 255, 255, 0.08)
    );
}

[data-bs-theme="dark"] .hunta-faq-answer__inner,
.dark .hunta-faq-answer__inner {
    color: var(
        --hunta-text-soft,
        #aab2c0
    );
}

/* ------------------------------------------------------------
   Responsive
   ------------------------------------------------------------ */

@media (max-width: 767.98px) {
    .hunta-tool-section.hunta-faq-section {
        margin-top: 2.5rem;
        margin-bottom: 2.5rem;
    }

    .hunta-faq-card {
        padding: 1.35rem;
        border-radius: 17px;
    }

    .hunta-faq-header {
        margin-bottom: 1.35rem;
    }

    .hunta-faq-title {
        font-size: 1.4rem;
    }

    .hunta-faq-button {
        min-height: 68px;

        grid-template-columns: 2rem minmax(0, 1fr) 2rem;

        gap: 0.7rem;

        font-size: 0.92rem;
    }

    .hunta-faq-number {
        width: 1.8rem;
        height: 1.8rem;
    }

    .hunta-faq-toggle {
        width: 1.85rem;
        height: 1.85rem;
    }

    .hunta-faq-answer {
        padding: 0 0.5rem 1.25rem 2.7rem;
    }

    .hunta-faq-answer__inner {
        padding-left: 0.85rem;

        font-size: 0.9rem;
        line-height: 1.75;
    }
}

@media (max-width: 479.98px) {
    .hunta-faq-card {
        padding: 1.1rem;
    }

    .hunta-faq-button {
        grid-template-columns: 1.8rem minmax(0, 1fr) 1.8rem;
        gap: 0.55rem;

        font-size: 0.88rem;
    }

    .hunta-faq-number {
        width: 1.7rem;
        height: 1.7rem;

        font-size: 0.62rem;
    }

    .hunta-faq-toggle {
        width: 1.7rem;
        height: 1.7rem;

        font-size: 0.78rem;
    }

    .hunta-faq-answer {
        padding-left: 2.35rem;
    }
}

/* ------------------------------------------------------------
   Reduced motion
   ------------------------------------------------------------ */

@media (prefers-reduced-motion: reduce) {
    .hunta-faq-toggle,
    .hunta-faq-number {
        transition: none;
    }
}
 
 
/* ============================================================
   HUNTA — TOOL FEATURES
   Premium feature grid
   ============================================================ */

.hunta-tool-section.hunta-features-section {
    position: relative;
    margin-top: 3.5rem;
    margin-bottom: 3.5rem;
}

/* ------------------------------------------------------------
   Main surface
   ------------------------------------------------------------ */

.hunta-features-card {
    position: relative;

    padding: clamp(1.5rem, 3vw, 2.75rem);

    border: 1px solid var(
        --hunta-border,
        rgba(15, 23, 42, 0.08)
    );

    border-radius: var(
        --hunta-radius-lg,
        22px
    );

    background:
        linear-gradient(
            135deg,
            rgba(99, 102, 241, 0.025),
            transparent 45%
        ),
        var(
            --hunta-surface,
            #ffffff
        );

    box-shadow: var(
        --hunta-shadow-sm,
        0 4px 18px rgba(15, 23, 42, 0.045)
    );

    overflow: hidden;
}

/* ------------------------------------------------------------
   Header
   ------------------------------------------------------------ */

.hunta-features-header {
    max-width: 760px;
    margin-bottom: 2rem;
}

.hunta-features-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    margin-bottom: 0.7rem;

    color: var(
        --hunta-accent,
        #6366f1
    );

    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0.1em;
    line-height: 1.2;
    text-transform: uppercase;
}

.hunta-features-eyebrow__icon {
    width: 1.55rem;
    height: 1.55rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 20%,
        transparent
    );

    border-radius: 7px;

    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 8%,
        transparent
    );
}

.hunta-features-eyebrow__icon svg {
    width: 0.78rem;
    height: 0.78rem;
}

.hunta-features-title {
    margin: 0 0 0.55rem;

    color: var(
        --hunta-title,
        #111827
    );

    font-size: clamp(
        1.45rem,
        2.4vw,
        2rem
    );

    font-weight: 750;
    letter-spacing: -0.025em;
    line-height: 1.2;
}

.hunta-features-description {
    max-width: 680px;

    margin: 0;

    color: var(
        --hunta-text-muted,
        #7b8494
    );

    font-size: 0.95rem;
    line-height: 1.7;
}

/* ------------------------------------------------------------
   Feature grid
   ------------------------------------------------------------ */

.hunta-features-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 0.9rem;
}

/* ------------------------------------------------------------
   Feature item
   ------------------------------------------------------------ */

.hunta-feature-item {
    min-width: 0;

    display: flex;
    align-items: flex-start;
    gap: 1rem;

    padding: 1.25rem;

    border: 1px solid var(
        --hunta-border,
        rgba(15, 23, 42, 0.07)
    );

    border-radius: var(
        --hunta-radius-md,
        14px
    );

    background: var(
        --hunta-surface-soft,
        #f7f8fa
    );

    transition:
        transform var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        border-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        background-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        box-shadow var(--hunta-duration, 220ms) var(--hunta-ease, ease);
}

.hunta-feature-item:hover {
    transform: translateY(-2px);

    border-color: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 18%,
        var(--hunta-border, rgba(15, 23, 42, 0.07))
    );

    background: var(
        --hunta-surface,
        #ffffff
    );

    box-shadow: var(
        --hunta-shadow-sm,
        0 6px 20px rgba(15, 23, 42, 0.06)
    );
}

/* ------------------------------------------------------------
   Feature icon
   ------------------------------------------------------------ */

.hunta-feature-icon {
    width: 2.75rem;
    height: 2.75rem;

    flex: 0 0 2.75rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 16%,
        transparent
    );

    border-radius: 11px;

    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 7%,
        transparent
    );

    color: var(
        --hunta-accent,
        #6366f1
    );

    transition:
        transform var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        background-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-feature-icon svg {
    width: 1.15rem;
    height: 1.15rem;
    stroke-width: 1.9;
}

.hunta-feature-item:hover .hunta-feature-icon {
    transform: scale(1.05);

    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 11%,
        transparent
    );
}

/* ------------------------------------------------------------
   Feature content
   ------------------------------------------------------------ */

.hunta-feature-content {
    min-width: 0;
    padding-top: 0.1rem;
}

.hunta-feature-content h3 {
    margin: 0 0 0.35rem;

    color: var(
        --hunta-text,
        #111827
    );

    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.35;
}

.hunta-feature-content p {
    margin: 0;

    color: var(
        --hunta-text-muted,
        #7b8494
    );

    font-size: 0.86rem;
    line-height: 1.65;
}

/* ------------------------------------------------------------
   Dark theme
   ------------------------------------------------------------ */

[data-bs-theme="dark"] .hunta-features-card,
.dark .hunta-features-card {
    border-color: var(
        --hunta-border,
        rgba(255, 255, 255, 0.08)
    );

    background:
        linear-gradient(
            135deg,
            rgba(99, 102, 241, 0.035),
            transparent 45%
        ),
        var(
            --hunta-surface,
            #11151c
        );

    box-shadow:
        0 4px 22px rgba(0, 0, 0, 0.2);
}

[data-bs-theme="dark"] .hunta-features-title,
.dark .hunta-features-title {
    color: var(
        --hunta-title,
        #f5f7fa
    );
}

[data-bs-theme="dark"] .hunta-features-description,
.dark .hunta-features-description {
    color: var(
        --hunta-text-muted,
        #929baa
    );
}

[data-bs-theme="dark"] .hunta-feature-item,
.dark .hunta-feature-item {
    border-color: var(
        --hunta-border,
        rgba(255, 255, 255, 0.07)
    );

    background: var(
        --hunta-surface-soft,
        #171c24
    );
}

[data-bs-theme="dark"] .hunta-feature-item:hover,
.dark .hunta-feature-item:hover {
    border-color: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 22%,
        var(--hunta-border, rgba(255, 255, 255, 0.07))
    );

    background: var(
        --hunta-surface,
        #11151c
    );

    box-shadow:
        0 8px 25px rgba(0, 0, 0, 0.2);
}

[data-bs-theme="dark"] .hunta-feature-content h3,
.dark .hunta-feature-content h3 {
    color: var(
        --hunta-text,
        #f3f4f6
    );
}

[data-bs-theme="dark"] .hunta-feature-content p,
.dark .hunta-feature-content p {
    color: var(
        --hunta-text-muted,
        #929baa
    );
}

/* ------------------------------------------------------------
   Responsive
   ------------------------------------------------------------ */

@media (max-width: 767.98px) {
    .hunta-tool-section.hunta-features-section {
        margin-top: 2.5rem;
        margin-bottom: 2.5rem;
    }

    .hunta-features-card {
        padding: 1.35rem;
        border-radius: 17px;
    }

    .hunta-features-header {
        margin-bottom: 1.35rem;
    }

    .hunta-features-title {
        font-size: 1.4rem;
    }

    .hunta-features-grid {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }

    .hunta-feature-item {
        padding: 1.1rem;
    }
}

@media (max-width: 479.98px) {
    .hunta-features-card {
        padding: 1.1rem;
    }

    .hunta-feature-item {
        gap: 0.8rem;
        padding: 1rem;
    }

    .hunta-feature-icon {
        width: 2.5rem;
        height: 2.5rem;
        flex-basis: 2.5rem;
    }

    .hunta-feature-content h3 {
        font-size: 0.9rem;
    }

    .hunta-feature-content p {
        font-size: 0.82rem;
    }
}

/* ------------------------------------------------------------
   Reduced motion
   ------------------------------------------------------------ */

@media (prefers-reduced-motion: reduce) {
    .hunta-feature-item,
    .hunta-feature-icon {
        transition: none;
    }
}
 
 
/* ============================================================
   HUNTA — HOW IT WORKS
   Four-step process component
   ============================================================ */

.hunta-tool-section.hunta-how-section {
    position: relative;
    margin-top: 3.5rem;
    margin-bottom: 3.5rem;
}

/* ------------------------------------------------------------
   Main surface
   ------------------------------------------------------------ */

.hunta-how-card {
    position: relative;

    padding: clamp(1.5rem, 3vw, 2.75rem);

    border: 1px solid var(
        --hunta-border,
        rgba(15, 23, 42, 0.08)
    );

    border-radius: var(
        --hunta-radius-lg,
        22px
    );

    background:
        linear-gradient(
            135deg,
            rgba(99, 102, 241, 0.025),
            transparent 45%
        ),
        var(
            --hunta-surface,
            #ffffff
        );

    box-shadow: var(
        --hunta-shadow-sm,
        0 4px 18px rgba(15, 23, 42, 0.045)
    );

    overflow: hidden;
}

/* ------------------------------------------------------------
   Header
   ------------------------------------------------------------ */

.hunta-how-header {
    max-width: 760px;
    margin-bottom: 2.5rem;
}

.hunta-how-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    margin-bottom: 0.7rem;

    color: var(
        --hunta-accent,
        #6366f1
    );

    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0.1em;
    line-height: 1.2;
    text-transform: uppercase;
}

.hunta-how-eyebrow__icon {
    width: 1.55rem;
    height: 1.55rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 20%,
        transparent
    );

    border-radius: 7px;

    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 8%,
        transparent
    );
}

.hunta-how-eyebrow__icon svg {
    width: 0.78rem;
    height: 0.78rem;
}

.hunta-how-title {
    margin: 0 0 0.55rem;

    color: var(
        --hunta-title,
        #111827
    );

    font-size: clamp(
        1.45rem,
        2.4vw,
        2rem
    );

    font-weight: 750;
    letter-spacing: -0.025em;
    line-height: 1.2;
}

.hunta-how-description {
    max-width: 680px;

    margin: 0;

    color: var(
        --hunta-text-muted,
        #7b8494
    );

    font-size: 0.95rem;
    line-height: 1.7;
}

/* ------------------------------------------------------------
   Steps grid
   ------------------------------------------------------------ */

.hunta-how-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 0;
}

/* ------------------------------------------------------------
   Step
   ------------------------------------------------------------ */

.hunta-how-step {
    position: relative;
    min-width: 0;

    padding: 0 1.25rem;

    text-align: center;
}

.hunta-how-step:first-child {
    padding-left: 0;
}

.hunta-how-step--last {
    padding-right: 0;
}

/* ------------------------------------------------------------
   Step number / connector
   ------------------------------------------------------------ */

.hunta-how-step__top {
    position: relative;

    height: 2rem;

    display: flex;
    align-items: center;
    justify-content: center;
}

.hunta-how-step__number {
    position: relative;
    z-index: 2;

    width: 2rem;
    height: 2rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 18%,
        transparent
    );

    border-radius: 50%;

    background: var(
        --hunta-surface,
        #ffffff
    );

    color: var(
        --hunta-accent,
        #6366f1
    );

    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.02em;
}

/* Horizontal process line */

.hunta-how-step__connector {
    position: absolute;
    z-index: 1;

    top: 50%;
    left: calc(50% + 1rem);

    width: calc(100% - 2rem);
    height: 1px;

    background: linear-gradient(
        90deg,
        color-mix(
            in srgb,
            var(--hunta-accent, #6366f1) 22%,
            transparent
        ),
        var(
            --hunta-border,
            rgba(15, 23, 42, 0.08)
        )
    );

    transform: translateY(-50%);
}

/* ------------------------------------------------------------
   Icon
   ------------------------------------------------------------ */

.hunta-how-step__icon {
    width: 3.5rem;
    height: 3.5rem;

    margin: 1.35rem auto 1.15rem;

    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 15%,
        transparent
    );

    border-radius: 14px;

    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 7%,
        transparent
    );

    color: var(
        --hunta-accent,
        #6366f1
    );

    transition:
        transform var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        background-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        border-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-how-step__icon svg {
    width: 1.35rem;
    height: 1.35rem;
    stroke-width: 1.8;
}

.hunta-how-step:hover .hunta-how-step__icon {
    transform: translateY(-2px);

    border-color: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 25%,
        transparent
    );

    background: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 11%,
        transparent
    );
}

/* ------------------------------------------------------------
   Content
   ------------------------------------------------------------ */

.hunta-how-step__content {
    max-width: 210px;
    margin: 0 auto;
}

.hunta-how-step__content h3 {
    margin: 0 0 0.45rem;

    color: var(
        --hunta-text,
        #111827
    );

    font-size: 0.95rem;
    font-weight: 700;
    line-height: 1.35;
}

.hunta-how-step__content p {
    margin: 0;

    color: var(
        --hunta-text-muted,
        #7b8494
    );

    font-size: 0.84rem;
    line-height: 1.65;
}

/* ------------------------------------------------------------
   Dark theme
   ------------------------------------------------------------ */

[data-bs-theme="dark"] .hunta-how-card,
.dark .hunta-how-card {
    border-color: var(
        --hunta-border,
        rgba(255, 255, 255, 0.08)
    );

    background:
        linear-gradient(
            135deg,
            rgba(99, 102, 241, 0.035),
            transparent 45%
        ),
        var(
            --hunta-surface,
            #11151c
        );

    box-shadow:
        0 4px 22px rgba(0, 0, 0, 0.2);
}

[data-bs-theme="dark"] .hunta-how-title,
[data-bs-theme="dark"] .hunta-how-step__content h3,
.dark .hunta-how-title,
.dark .hunta-how-step__content h3 {
    color: var(
        --hunta-title,
        #f5f7fa
    );
}

[data-bs-theme="dark"] .hunta-how-description,
[data-bs-theme="dark"] .hunta-how-step__content p,
.dark .hunta-how-description,
.dark .hunta-how-step__content p {
    color: var(
        --hunta-text-muted,
        #929baa
    );
}

[data-bs-theme="dark"] .hunta-how-step__number,
.dark .hunta-how-step__number {
    border-color: color-mix(
        in srgb,
        var(--hunta-accent, #6366f1) 22%,
        transparent
    );

    background: var(
        --hunta-surface,
        #11151c
    );
}

[data-bs-theme="dark"] .hunta-how-step__connector,
.dark .hunta-how-step__connector {
    background: linear-gradient(
        90deg,
        color-mix(
            in srgb,
            var(--hunta-accent, #6366f1) 24%,
            transparent
        ),
        var(
            --hunta-border,
            rgba(255, 255, 255, 0.08)
        )
    );
}

/* ------------------------------------------------------------
   Tablet
   ------------------------------------------------------------ */

@media (max-width: 991.98px) {
    .hunta-how-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));

        row-gap: 2.5rem;
    }

    .hunta-how-step {
        padding: 0 1rem;
    }

    /*
     * Hide horizontal connectors on the 2-column layout.
     * This avoids creating an incorrect process path.
     */
    .hunta-how-step__connector {
        display: none;
    }

    .hunta-how-step:nth-child(odd) {
        padding-left: 0;
    }

    .hunta-how-step:nth-child(even) {
        padding-right: 0;
    }
}

/* ------------------------------------------------------------
   Mobile
   ------------------------------------------------------------ */

@media (max-width: 767.98px) {
    .hunta-tool-section.hunta-how-section {
        margin-top: 2.5rem;
        margin-bottom: 2.5rem;
    }

    .hunta-how-card {
        padding: 1.35rem;
        border-radius: 17px;
    }

    .hunta-how-header {
        margin-bottom: 1.75rem;
    }

    .hunta-how-title {
        font-size: 1.4rem;
    }

    .hunta-how-grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .hunta-how-step,
    .hunta-how-step:first-child,
    .hunta-how-step--last,
    .hunta-how-step:nth-child(odd),
    .hunta-how-step:nth-child(even) {
        padding: 0 0 2rem;
    }

    .hunta-how-step:last-child {
        padding-bottom: 0;
    }

    /*
     * On mobile the process becomes vertical.
     */
    .hunta-how-step:not(.hunta-how-step--last)::after {
        content: "";

        position: absolute;

        top: 2rem;
        bottom: 0;

        left: calc(50% - 0.5px);

        width: 1px;

        background: linear-gradient(
            180deg,
            color-mix(
                in srgb,
                var(--hunta-accent, #6366f1) 22%,
                transparent
            ),
            var(
                --hunta-border,
                rgba(15, 23, 42, 0.08)
            )
        );
    }

    .hunta-how-step__icon {
        margin-top: 1.15rem;
    }

    .hunta-how-step__content {
        max-width: 290px;
    }
}

@media (max-width: 479.98px) {
    .hunta-how-card {
        padding: 1.1rem;
    }

    .hunta-how-step__content h3 {
        font-size: 0.9rem;
    }

    .hunta-how-step__content p {
        font-size: 0.82rem;
    }
}

/* ------------------------------------------------------------
   Reduced motion
   ------------------------------------------------------------ */

@media (prefers-reduced-motion: reduce) {
    .hunta-how-step__icon {
        transition: none;
    }
}
 
 
/* ============================================================
   HUNTA — RELATED TOOLS
   Scoped homepage/tool SEO component
   ============================================================ */

.hunta-related-tools-section {
    position: relative;
    margin-top: 4rem;
    margin-bottom: 4rem;
}

.hunta-related-tools-card {
    position: relative;
    overflow: hidden;
    padding: clamp(1.5rem, 3vw, 2.5rem);
    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.16));
    border-radius: var(--hunta-radius-lg, 1.5rem);
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(99, 102, 241, 0.07),
            transparent 32%
        ),
        var(--hunta-surface, #ffffff);
    box-shadow: var(--hunta-shadow-sm, 0 8px 30px rgba(15, 23, 42, 0.06));
}


/* ============================================================
   HEADER
   ============================================================ */

.hunta-related-tools-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;
    margin-bottom: 2rem;
}

.hunta-related-tools-heading {
    min-width: 0;
    max-width: 760px;
}

.hunta-related-tools-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;

    color: var(--hunta-primary, #6366f1);
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    line-height: 1.2;
    text-transform: uppercase;
}

.hunta-related-tools-eyebrow-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.7rem;
    height: 1.7rem;

    border: 1px solid rgba(99, 102, 241, 0.16);
    border-radius: 0.55rem;

    background: rgba(99, 102, 241, 0.08);
}

.hunta-related-tools-eyebrow-icon svg {
    width: 0.9rem;
    height: 0.9rem;
    stroke-width: 2.25;
}


.hunta-related-tools-title {
    margin: 0;
    color: var(--hunta-title, #0f172a);
    font-size: clamp(1.5rem, 2.5vw, 2rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.15;
}

.hunta-related-tools-category {
    color: var(--hunta-primary, #6366f1);
}


.hunta-related-tools-description {
    max-width: 680px;
    margin: 0.75rem 0 0;

    color: var(--hunta-text-muted, #64748b);
    font-size: 0.95rem;
    line-height: 1.7;
}


/* ============================================================
   VIEW ALL BUTTON
   ============================================================ */

.hunta-related-tools-view-all {
    flex: 0 0 auto;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;

    min-height: 2.75rem;
    padding: 0.65rem 1rem 0.65rem 1.15rem;

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.2));
    border-radius: 999px;

    background: var(--hunta-surface-soft, #f8fafc);

    color: var(--hunta-text, #0f172a);
    font-size: 0.85rem;
    font-weight: 750;
    line-height: 1;
    text-decoration: none;

    transition:
        transform var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        border-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        background var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        box-shadow var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-related-tools-view-all:hover {
    transform: translateY(-2px);
    border-color: rgba(99, 102, 241, 0.28);
    background: rgba(99, 102, 241, 0.07);
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.07);
    color: var(--hunta-primary, #6366f1);
}

.hunta-related-tools-view-all:focus-visible {
    outline: none;
    box-shadow: var(
        --hunta-focus-ring,
        0 0 0 4px rgba(99, 102, 241, 0.16)
    );
}

.hunta-related-tools-view-all-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.55rem;
    height: 1.55rem;

    border-radius: 50%;
    background: rgba(99, 102, 241, 0.1);
}

.hunta-related-tools-view-all-icon svg {
    width: 0.8rem;
    height: 0.8rem;
    stroke-width: 2.25;
}


/* ============================================================
   GRID
   ============================================================ */

.hunta-related-tools-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}


/* ============================================================
   TOOL CARD
   ============================================================ */

.hunta-related-tool-card {
    position: relative;
    display: flex;
    min-width: 0;
    flex-direction: column;

    min-height: 245px;
    padding: 1.25rem;

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.16));
    border-radius: var(--hunta-radius-md, 1rem);

    background: var(--hunta-surface-soft, #f8fafc);

    transition:
        transform var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        border-color var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        box-shadow var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        background var(--hunta-duration, 220ms) var(--hunta-ease, ease);
}

.hunta-related-tool-card:hover {
    transform: translateY(-4px);

    border-color: rgba(99, 102, 241, 0.24);

    background: var(--hunta-surface, #ffffff);

    box-shadow:
        0 16px 36px rgba(15, 23, 42, 0.08),
        0 0 0 1px rgba(99, 102, 241, 0.03);
}


/* ============================================================
   CARD TOP
   ============================================================ */

.hunta-related-tool-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.25rem;
}


/* ============================================================
   TOOL ICON
   ============================================================ */

.hunta-related-tool-icon {
    flex: 0 0 auto;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 3rem;
    height: 3rem;

    border: 1px solid rgba(99, 102, 241, 0.16);
    border-radius: 0.85rem;

    background:
        linear-gradient(
            145deg,
            rgba(99, 102, 241, 0.14),
            rgba(99, 102, 241, 0.06)
        );

    color: var(--hunta-primary, #6366f1);

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.12),
        0 6px 16px rgba(99, 102, 241, 0.08);

    transition:
        transform var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        background var(--hunta-duration, 220ms) var(--hunta-ease, ease);
}

/*
 * IMPORTANT:
 * Lucide replaces <i data-lucide="..."> with an SVG.
 * Explicitly style the generated SVG so icons always have
 * predictable dimensions and inherit the card icon color.
 */
.hunta-related-tool-icon svg {
    display: block;
    width: 1.35rem;
    height: 1.35rem;
    max-width: 100%;
    color: currentColor;
    stroke: currentColor;
    stroke-width: 2;
}

.hunta-related-tool-card:hover .hunta-related-tool-icon {
    transform: translateY(-2px) rotate(-2deg);
    background: rgba(99, 102, 241, 0.12);
}


/* ============================================================
   BADGE
   ============================================================ */

.hunta-related-tool-badge {
    display: inline-flex;
    align-items: center;

    min-height: 1.75rem;
    padding: 0.35rem 0.65rem;

    border: 1px solid rgba(99, 102, 241, 0.13);
    border-radius: 999px;

    background: rgba(99, 102, 241, 0.06);

    color: var(--hunta-primary, #6366f1);
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 1;
    white-space: nowrap;
}


/* ============================================================
   CONTENT
   ============================================================ */

.hunta-related-tool-content {
    flex: 1 1 auto;
    min-width: 0;
}

.hunta-related-tool-title {
    margin: 0;

    color: var(--hunta-title, #0f172a);
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    line-height: 1.35;
}

.hunta-related-tool-description {
    display: -webkit-box;
    overflow: hidden;

    margin: 0.55rem 0 0;

    color: var(--hunta-text-muted, #64748b);
    font-size: 0.86rem;
    line-height: 1.65;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
}


/* ============================================================
   OPEN TOOL
   ============================================================ */

.hunta-related-tool-action {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 0.5rem;

    margin-top: 1.25rem;

    color: var(--hunta-text, #0f172a);
    font-size: 0.82rem;
    font-weight: 800;
    text-decoration: none;

    transition:
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        gap var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-related-tool-action:hover {
    gap: 0.7rem;
    color: var(--hunta-primary, #6366f1);
}

.hunta-related-tool-action:focus-visible {
    outline: none;
    border-radius: 0.4rem;
    box-shadow: var(
        --hunta-focus-ring,
        0 0 0 4px rgba(99, 102, 241, 0.16)
    );
}

.hunta-related-tool-action-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.hunta-related-tool-action-icon svg {
    display: block;
    width: 0.95rem;
    height: 0.95rem;
    color: currentColor;
    stroke: currentColor;
    stroke-width: 2.25;
    transition: transform var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-related-tool-action:hover .hunta-related-tool-action-icon svg {
    transform: translateX(2px);
}


/* ============================================================
   DARK MODE
   ============================================================ */

[data-bs-theme="dark"] .hunta-related-tools-card,
.dark .hunta-related-tools-card {
    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(99, 102, 241, 0.1),
            transparent 34%
        ),
        var(--hunta-surface, #111827);

    border-color: var(--hunta-border, rgba(148, 163, 184, 0.14));
}

[data-bs-theme="dark"] .hunta-related-tool-card,
.dark .hunta-related-tool-card {
    background: var(--hunta-surface-soft, #172033);
    border-color: var(--hunta-border, rgba(148, 163, 184, 0.14));
}

[data-bs-theme="dark"] .hunta-related-tool-card:hover,
.dark .hunta-related-tool-card:hover {
    background: var(--hunta-surface, #111827);
    border-color: rgba(129, 140, 248, 0.3);

    box-shadow:
        0 18px 40px rgba(0, 0, 0, 0.22),
        0 0 0 1px rgba(129, 140, 248, 0.04);
}

[data-bs-theme="dark"] .hunta-related-tools-view-all,
.dark .hunta-related-tools-view-all {
    background: rgba(255, 255, 255, 0.035);
    border-color: var(--hunta-border, rgba(148, 163, 184, 0.16));
}

[data-bs-theme="dark"] .hunta-related-tools-view-all:hover,
.dark .hunta-related-tools-view-all:hover {
    background: rgba(99, 102, 241, 0.1);
    border-color: rgba(129, 140, 248, 0.3);
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 767.98px) {

    .hunta-related-tools-section {
        margin-top: 3rem;
        margin-bottom: 3rem;
    }

    .hunta-related-tools-card {
        padding: 1.25rem;
        border-radius: 1.25rem;
    }

    .hunta-related-tools-header {
        align-items: stretch;
        flex-direction: column;
        gap: 1.25rem;
        margin-bottom: 1.5rem;
    }

    .hunta-related-tools-title {
        font-size: 1.45rem;
    }

    .hunta-related-tools-description {
        font-size: 0.9rem;
    }

    .hunta-related-tools-view-all {
        align-self: flex-start;
    }

    .hunta-related-tools-grid {
        grid-template-columns: 1fr;
        gap: 0.85rem;
    }

    .hunta-related-tool-card {
        min-height: 0;
        padding: 1.1rem;
    }

    .hunta-related-tool-top {
        margin-bottom: 1rem;
    }
}


@media (prefers-reduced-motion: reduce) {

    .hunta-related-tool-card,
    .hunta-related-tool-icon,
    .hunta-related-tools-view-all,
    .hunta-related-tool-action,
    .hunta-related-tool-action-icon svg {
        transition: none;
    }

    .hunta-related-tool-card:hover,
    .hunta-related-tool-icon,
    .hunta-related-tools-view-all:hover {
        transform: none;
    }
}
 
 
/* ============================================================
   HUNTA — TOOL TAGS
   SEO / discovery section
   Fully scoped to #tool-tags
   ============================================================ */

.hunta-tags-section {
    position: relative;
    margin-top: 4rem;
    margin-bottom: 4rem;
}


/* ============================================================
   MAIN CARD
   ============================================================ */

.hunta-tags-card {
    position: relative;
    overflow: hidden;

    padding: clamp(1.5rem, 3vw, 2.5rem);

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.16));
    border-radius: var(--hunta-radius-lg, 1.5rem);

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(99, 102, 241, 0.07),
            transparent 34%
        ),
        var(--hunta-surface, #ffffff);

    box-shadow:
        var(--hunta-shadow-sm, 0 8px 30px rgba(15, 23, 42, 0.06));
}


/* ============================================================
   HEADER
   ============================================================ */

.hunta-tags-header {
    max-width: 760px;
    margin-bottom: 1.75rem;
}


.hunta-tags-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    margin-bottom: 0.75rem;

    color: var(--hunta-primary, #6366f1);

    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    line-height: 1.2;
    text-transform: uppercase;
}


.hunta-tags-eyebrow-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.7rem;
    height: 1.7rem;

    border: 1px solid rgba(99, 102, 241, 0.16);
    border-radius: 0.55rem;

    background: rgba(99, 102, 241, 0.08);
}


/*
 * Lucide converts:
 *
 * <i data-lucide="tags"></i>
 *
 * into:
 *
 * <svg ...></svg>
 *
 * Explicit SVG rules ensure the icon remains visible.
 */

.hunta-tags-eyebrow-icon svg {
    display: block;
    width: 0.9rem;
    height: 0.9rem;

    color: currentColor;
    stroke: currentColor;
    stroke-width: 2.25;
}


.hunta-tags-title {
    margin: 0;

    color: var(--hunta-text, #0f172a);

    font-size: clamp(1.5rem, 2.5vw, 2rem);
    font-weight: 800;
    letter-spacing: -0.035em;
    line-height: 1.15;
}


.hunta-tags-description {
    max-width: 680px;

    margin: 0.75rem 0 0;

    color: var(--hunta-text-muted, #64748b);

    font-size: 0.95rem;
    line-height: 1.7;
}


/* ============================================================
   TAG LIST
   ============================================================ */

.hunta-tags-list {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}


/* ============================================================
   TAG LINK
   ============================================================ */

.hunta-tag-link {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    min-height: 2.55rem;
    padding: 0.55rem 0.65rem 0.55rem 0.75rem;

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.2));
    border-radius: 999px;

    background: var(--hunta-surface-soft, #f8fafc);

    color: var(--hunta-text, #0f172a);

    font-size: 0.82rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;

    transition:
        transform var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        border-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        background var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        box-shadow var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}


.hunta-tag-link:hover {
    transform: translateY(-2px);

    border-color: rgba(99, 102, 241, 0.28);

    background: rgba(99, 102, 241, 0.07);

    color: var(--hunta-primary, #6366f1);

    box-shadow:
        0 8px 18px rgba(15, 23, 42, 0.06);
}


.hunta-tag-link:focus-visible {
    outline: none;

    box-shadow:
        var(
            --hunta-focus-ring,
            0 0 0 4px rgba(99, 102, 241, 0.16)
        );
}


/* ============================================================
   TAG ICON
   ============================================================ */

.hunta-tag-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.45rem;
    height: 1.45rem;

    flex: 0 0 auto;

    border-radius: 50%;

    background: rgba(99, 102, 241, 0.1);

    color: var(--hunta-primary, #6366f1);
}


/* Critical: style generated Lucide SVG */

.hunta-tag-icon svg {
    display: block;

    width: 0.75rem;
    height: 0.75rem;

    max-width: 100%;

    color: currentColor;
    stroke: currentColor;
    stroke-width: 2.25;
}


/* ============================================================
   TAG NAME
   ============================================================ */

.hunta-tag-name {
    min-width: 0;
    overflow: hidden;

    text-overflow: ellipsis;
    white-space: nowrap;
}


/* ============================================================
   ARROW
   ============================================================ */

.hunta-tag-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.35rem;
    height: 1.35rem;

    flex: 0 0 auto;

    border-radius: 50%;

    background: transparent;

    color: var(--hunta-text-muted, #64748b);

    transition:
        transform var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        background var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}


.hunta-tag-arrow svg {
    display: block;

    width: 0.7rem;
    height: 0.7rem;

    color: currentColor;
    stroke: currentColor;
    stroke-width: 2.25;
}


.hunta-tag-link:hover .hunta-tag-arrow {
    transform: translate(1px, -1px);

    background: rgba(99, 102, 241, 0.1);

    color: var(--hunta-primary, #6366f1);
}


/* ============================================================
   DARK MODE
   ============================================================ */

[data-bs-theme="dark"] .hunta-tags-card,
.dark .hunta-tags-card {
    border-color: var(--hunta-border, rgba(148, 163, 184, 0.14));

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(99, 102, 241, 0.1),
            transparent 35%
        ),
        var(--hunta-surface, #111827);
}


[data-bs-theme="dark"] .hunta-tag-link,
.dark .hunta-tag-link {
    border-color: var(--hunta-border, rgba(148, 163, 184, 0.15));

    background: var(--hunta-surface-soft, #172033);

    color: var(--hunta-text, #f1f5f9);
}


[data-bs-theme="dark"] .hunta-tag-link:hover,
.dark .hunta-tag-link:hover {
    border-color: rgba(129, 140, 248, 0.3);

    background: rgba(99, 102, 241, 0.1);

    color: #a5b4fc;

    box-shadow:
        0 10px 24px rgba(0, 0, 0, 0.2);
}


[data-bs-theme="dark"] .hunta-tag-icon,
.dark .hunta-tag-icon {
    background: rgba(129, 140, 248, 0.12);

    color: #a5b4fc;
}


[data-bs-theme="dark"] .hunta-tag-arrow,
.dark .hunta-tag-arrow {
    color: var(--hunta-text-muted, #94a3b8);
}


[data-bs-theme="dark"] .hunta-tag-link:hover .hunta-tag-arrow,
.dark .hunta-tag-link:hover .hunta-tag-arrow {
    background: rgba(129, 140, 248, 0.12);

    color: #a5b4fc;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 767.98px) {

    .hunta-tags-section {
        margin-top: 3rem;
        margin-bottom: 3rem;
    }

    .hunta-tags-card {
        padding: 1.25rem;

        border-radius: 1.25rem;
    }

    .hunta-tags-header {
        margin-bottom: 1.4rem;
    }

    .hunta-tags-title {
        font-size: 1.45rem;
    }

    .hunta-tags-description {
        font-size: 0.9rem;
    }

    .hunta-tags-list {
        gap: 0.55rem;
    }

    .hunta-tag-link {
        min-height: 2.45rem;

        padding: 0.5rem 0.6rem 0.5rem 0.65rem;

        font-size: 0.78rem;
    }
}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-tag-link,
    .hunta-tag-arrow {
        transition: none;
    }

    .hunta-tag-link:hover {
        transform: none;
    }

    .hunta-tag-link:hover .hunta-tag-arrow {
        transform: none;
    }
}
 
 
/* ============================================================
   HUNTA — BLOG PAGE
   Scoped exclusively to the blog page.
   Depends on app-modern.css design tokens.
   ============================================================ */


/* ============================================================
   HERO
   ============================================================ */

.hunta-blog-hero {
    position: relative;
    overflow: hidden;

    padding: clamp(3.5rem, 7vw, 6rem) 0;

    border-bottom: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.12));

    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(99, 102, 241, 0.13),
            transparent 45%
        ),
        var(--hunta-surface, #ffffff);
}

.hunta-blog-hero::before {
    content: "";
    position: absolute;
    inset: 0;

    pointer-events: none;

    background-image:
        linear-gradient(
            rgba(99, 102, 241, 0.035) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(99, 102, 241, 0.035) 1px,
            transparent 1px
        );

    background-size: 42px 42px;

    mask-image: linear-gradient(
        to bottom,
        black,
        transparent 85%
    );
}

.hunta-blog-hero-inner {
    position: relative;
    z-index: 1;

    max-width: 850px;
    margin: 0 auto;

    text-align: center;
}

.hunta-blog-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;

    margin-bottom: 1.15rem;
    padding: 0.45rem 0.75rem 0.45rem 0.5rem;

    border: 1px solid rgba(99, 102, 241, 0.16);
    border-radius: 999px;

    background: rgba(99, 102, 241, 0.07);

    color: var(--hunta-primary, #6366f1);

    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hunta-blog-hero-badge-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.7rem;
    height: 1.7rem;

    border-radius: 50%;

    background: rgba(99, 102, 241, 0.12);
}

.hunta-blog-hero-badge-icon svg {
    width: 0.85rem;
    height: 0.85rem;

    stroke: currentColor;
    stroke-width: 2.25;
}

.hunta-blog-hero-title {
    margin: 0;

    color: var(--hunta-title, #0f172a);

    font-size: clamp(2.25rem, 5vw, 4.25rem);
    font-weight: 850;
    letter-spacing: -0.055em;
    line-height: 1.02;
}

.hunta-blog-hero-description {
    max-width: 700px;

    margin: 1.25rem auto 0;

    color: var(--hunta-text-muted, #64748b);

    font-size: clamp(0.98rem, 1.5vw, 1.1rem);
    line-height: 1.75;
}

.hunta-blog-hero-decoration {
    display: flex;
    justify-content: center;
    gap: 0.35rem;

    margin-top: 1.75rem;
}

.hunta-blog-hero-decoration span {
    display: block;

    width: 0.35rem;
    height: 0.35rem;

    border-radius: 50%;

    background: var(--hunta-primary, #6366f1);

    opacity: 0.35;
}

.hunta-blog-hero-decoration span:nth-child(2) {
    width: 1.25rem;
    border-radius: 999px;
    opacity: 0.8;
}


/* ============================================================
   CONTENT
   ============================================================ */

.hunta-blog-content {
    padding: 3rem 0 5rem;
}

.hunta-blog-content-card {
    min-width: 0;
}


/* ============================================================
   LIST HEADER
   ============================================================ */

.hunta-blog-list-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 2rem;
    margin-bottom: 2rem;
}

.hunta-blog-list-heading {
    min-width: 0;
}

.hunta-blog-list-eyebrow {
    display: block;

    margin-bottom: 0.45rem;

    color: var(--hunta-primary, #6366f1);

    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.hunta-blog-list-heading h2 {
    margin: 0;

    color: var(--hunta-text, #0f172a);

    font-size: clamp(1.5rem, 2.5vw, 2rem);
    font-weight: 800;
    letter-spacing: -0.035em;
}

.hunta-blog-list-heading p {
    margin: 0.4rem 0 0;

    color: var(--hunta-text-muted, #64748b);

    font-size: 0.84rem;
}

.hunta-blog-list-heading p strong {
    color: var(--hunta-text, #0f172a);
}


/* ============================================================
   SORT
   ============================================================ */

.hunta-blog-sort {
    flex: 0 0 auto;
}

.hunta-blog-sort-control {
    position: relative;

    display: flex;
    align-items: center;

    min-width: 180px;
    height: 2.75rem;

    padding: 0 0.75rem;

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.18));
    border-radius: 0.8rem;

    background: var(--hunta-surface, #ffffff);

    color: var(--hunta-text-muted, #64748b);
}

.hunta-blog-sort-control > svg:first-child {
    flex: 0 0 auto;

    width: 0.9rem;
    height: 0.9rem;

    margin-right: 0.5rem;
}

.hunta-blog-sort-control select {
    width: 100%;
    height: 100%;

    appearance: none;
    border: 0;
    outline: 0;

    background: transparent;

    color: var(--hunta-text, #0f172a);

    font-size: 0.8rem;
    font-weight: 700;

    cursor: pointer;
}

.hunta-blog-sort-control select:focus-visible {
    box-shadow: none;
}

.hunta-blog-sort-chevron {
    position: absolute;
    right: 0.7rem;

    width: 0.8rem;
    height: 0.8rem;

    pointer-events: none;
}


/* ============================================================
   BLOG GRID
   ============================================================ */

.hunta-blog-grid {
    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 1.25rem;
}


/* ============================================================
   ARTICLE CARD
   ============================================================ */

.hunta-blog-card {
    display: flex;
    min-width: 0;

    flex-direction: column;

    overflow: hidden;

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.16));
    border-radius: var(--hunta-radius-lg, 1.25rem);

    background: var(--hunta-surface, #ffffff);

    box-shadow:
        var(--hunta-shadow-sm, 0 8px 30px rgba(15, 23, 42, 0.05));

    transition:
        transform var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        border-color var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        box-shadow var(--hunta-duration, 220ms) var(--hunta-ease, ease);
}

.hunta-blog-card:hover {
    transform: translateY(-5px);

    border-color: rgba(99, 102, 241, 0.22);

    box-shadow:
        0 18px 45px rgba(15, 23, 42, 0.09);
}


/* ============================================================
   IMAGE
   ============================================================ */

.hunta-blog-card-media {
    position: relative;

    display: block;

    height: 220px;

    overflow: hidden;

    background:
        linear-gradient(
            145deg,
            rgba(99, 102, 241, 0.12),
            rgba(99, 102, 241, 0.025)
        );

    text-decoration: none;
}

.hunta-blog-card-media img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 450ms var(--hunta-ease, ease);
}

.hunta-blog-card:hover .hunta-blog-card-media img {
    transform: scale(1.045);
}

.hunta-blog-card-media-overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to bottom,
            transparent 55%,
            rgba(15, 23, 42, 0.18)
        );

    pointer-events: none;
}

.hunta-blog-card-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 100%;
}

.hunta-blog-card-placeholder span {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 4rem;
    height: 4rem;

    border: 1px solid rgba(99, 102, 241, 0.15);
    border-radius: 1rem;

    background: rgba(99, 102, 241, 0.08);

    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-card-placeholder svg {
    width: 1.65rem;
    height: 1.65rem;

    stroke: currentColor;
}


/* ============================================================
   CARD BODY
   ============================================================ */

.hunta-blog-card-body {
    display: flex;
    flex: 1;

    flex-direction: column;

    padding: 1.25rem;
}


/* ============================================================
   META
   ============================================================ */

.hunta-blog-card-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;

    gap: 0.7rem 1rem;

    margin-bottom: 0.9rem;

    color: var(--hunta-text-muted, #64748b);

    font-size: 0.68rem;
    font-weight: 650;
}

.hunta-blog-card-meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
}

.hunta-blog-card-meta svg {
    width: 0.75rem;
    height: 0.75rem;

    stroke: currentColor;
    stroke-width: 2;
}


/* ============================================================
   TITLE
   ============================================================ */

.hunta-blog-card-title {
    margin: 0;

    color: var(--hunta-text, #0f172a);

    font-size: 1.08rem;
    font-weight: 800;
    letter-spacing: -0.025em;
    line-height: 1.35;
}

.hunta-blog-card-title a {
    color: inherit;
    text-decoration: none;

    transition:
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-blog-card-title a:hover {
    color: var(--hunta-primary, #6366f1);
}


/* ============================================================
   EXCERPT
   ============================================================ */

.hunta-blog-card-excerpt {
    display: -webkit-box;

    overflow: hidden;

    margin: 0.65rem 0 0;

    color: var(--hunta-text-muted, #64748b);

    font-size: 0.84rem;
    line-height: 1.7;

    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
}


/* ============================================================
   CARD FOOTER
   ============================================================ */

.hunta-blog-card-footer {
    margin-top: auto;
    padding-top: 1.15rem;
}

.hunta-blog-read-link {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;

    color: var(--hunta-text, #0f172a);

    font-size: 0.78rem;
    font-weight: 800;

    text-decoration: none;

    transition:
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        gap var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-blog-read-link:hover {
    gap: 0.7rem;

    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-read-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.55rem;
    height: 1.55rem;

    border-radius: 50%;

    background: rgba(99, 102, 241, 0.09);

    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-read-icon svg {
    width: 0.75rem;
    height: 0.75rem;

    stroke: currentColor;
    stroke-width: 2.25;
}


/* ============================================================
   SIDEBARS
   ============================================================ */

.hunta-blog-sidebar {
    display: flex;
    flex-direction: column;

    gap: 1rem;

    padding-top: 1rem;
}

.hunta-blog-side-card {
    position: relative;

    overflow: hidden;

    padding: 1.25rem;

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.16));
    border-radius: var(--hunta-radius-lg, 1.25rem);

    background: var(--hunta-surface, #ffffff);

    box-shadow:
        var(--hunta-shadow-sm, 0 8px 30px rgba(15, 23, 42, 0.05));
}

.hunta-blog-side-heading {
    display: flex;
    align-items: center;
    gap: 0.65rem;

    margin-bottom: 1rem;
}

.hunta-blog-side-heading h2 {
    margin: 0;

    color: var(--hunta-text, #0f172a);

    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: -0.015em;
}

.hunta-blog-side-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 2rem;
    height: 2rem;

    flex: 0 0 auto;

    border-radius: 0.65rem;

    background: rgba(99, 102, 241, 0.09);

    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-side-icon svg {
    width: 0.95rem;
    height: 0.95rem;

    stroke: currentColor;
    stroke-width: 2.15;
}


/* ============================================================
   SEARCH
   ============================================================ */

.hunta-blog-search-field {
    display: flex;
    align-items: center;

    height: 2.9rem;

    padding-left: 0.8rem;

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.18));
    border-radius: 0.8rem;

    background: var(--hunta-surface-soft, #f8fafc);

    transition:
        border-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        box-shadow var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-blog-search-field:focus-within {
    border-color: rgba(99, 102, 241, 0.4);

    box-shadow:
        0 0 0 3px rgba(99, 102, 241, 0.1);
}

.hunta-blog-search-field > svg {
    width: 0.9rem;
    height: 0.9rem;

    flex: 0 0 auto;

    color: var(--hunta-text-muted, #64748b);
}

.hunta-blog-search-field input {
    min-width: 0;
    flex: 1;

    height: 100%;

    padding: 0 0.65rem;

    border: 0;
    outline: 0;

    background: transparent;

    color: var(--hunta-text, #0f172a);

    font-size: 0.78rem;
}

.hunta-blog-search-field input::placeholder {
    color: var(--hunta-text-muted, #64748b);
}

.hunta-blog-search-field button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 2.25rem;
    height: 2.25rem;

    margin-right: 0.3rem;

    border: 0;
    border-radius: 0.6rem;

    background: var(--hunta-primary, #6366f1);

    color: #fff;

    cursor: pointer;

    transition:
        transform var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        opacity var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-blog-search-field button:hover {
    transform: translateX(1px);
    opacity: 0.9;
}

.hunta-blog-search-field button svg {
    width: 0.85rem;
    height: 0.85rem;

    stroke: currentColor;
    stroke-width: 2.25;
}


/* ============================================================
   CATEGORIES
   ============================================================ */

.hunta-blog-category-list {
    display: flex;
    flex-direction: column;
}

.hunta-blog-category-link {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 1rem;

    padding: 0.7rem 0;

    border-bottom: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.1));

    color: var(--hunta-text-muted, #64748b);

    font-size: 0.78rem;
    font-weight: 650;

    text-decoration: none;

    transition:
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        padding var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-blog-category-link:last-child {
    border-bottom: 0;
}

.hunta-blog-category-link:hover {
    padding-left: 0.2rem;
    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-category-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 1.7rem;
    height: 1.5rem;

    padding: 0 0.4rem;

    border-radius: 999px;

    background: rgba(99, 102, 241, 0.08);

    color: var(--hunta-primary, #6366f1);

    font-size: 0.65rem;
    font-weight: 800;
}


/* ============================================================
   FEATURED ARTICLES
   ============================================================ */

.hunta-blog-featured-list {
    display: flex;
    flex-direction: column;

    gap: 0.15rem;
}

.hunta-blog-featured-link {
    display: grid;

    grid-template-columns: 1.8rem minmax(0, 1fr);

    align-items: start;

    gap: 0.55rem;

    padding: 0.55rem 0;

    color: var(--hunta-text, #0f172a);

    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.45;

    text-decoration: none;

    transition:
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-blog-featured-link:hover {
    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-featured-link.is-disabled {
    color: var(--hunta-text-muted, #64748b);
}

.hunta-blog-featured-marker {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.8rem;
    height: 1.8rem;

    border-radius: 0.55rem;

    background: rgba(99, 102, 241, 0.07);

    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-featured-marker svg {
    width: 0.75rem;
    height: 0.75rem;

    stroke: currentColor;
    stroke-width: 2.2;
}

.hunta-blog-empty-side {
    color: var(--hunta-text-muted, #64748b);

    font-size: 0.78rem;
}


/* ============================================================
   FEATURED TOOLS
   ============================================================ */

.hunta-blog-tools-list {
    display: flex;
    flex-direction: column;
}

.hunta-blog-tool-link {
    display: flex;
    align-items: center;

    gap: 0.65rem;

    padding: 0.65rem 0;

    border-bottom: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.1));

    color: var(--hunta-text, #0f172a);

    font-size: 0.77rem;
    font-weight: 700;

    text-decoration: none;

    transition:
        color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        transform var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-blog-tool-link:last-child {
    border-bottom: 0;
}

.hunta-blog-tool-link:hover {
    transform: translateX(2px);
    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-tool-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 2rem;
    height: 2rem;

    flex: 0 0 auto;

    border-radius: 0.6rem;

    background: rgba(99, 102, 241, 0.08);

    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-tool-icon svg {
    display: block;

    width: 0.9rem;
    height: 0.9rem;

    color: currentColor;
    stroke: currentColor;
    stroke-width: 2.1;
}

.hunta-blog-tool-name {
    min-width: 0;
    flex: 1;

    overflow: hidden;

    text-overflow: ellipsis;
    white-space: nowrap;
}

.hunta-blog-tool-arrow {
    display: inline-flex;

    color: var(--hunta-text-muted, #64748b);
}

.hunta-blog-tool-arrow svg {
    width: 0.75rem;
    height: 0.75rem;

    stroke: currentColor;
}


/* ============================================================
   NEWSLETTER
   ============================================================ */

.hunta-blog-newsletter {
    position: relative;
    overflow: hidden;

    padding: 1.5rem;

    border: 1px solid rgba(99, 102, 241, 0.18);
    border-radius: var(--hunta-radius-lg, 1.25rem);

    background:
        radial-gradient(
            circle at 100% 0%,
            rgba(99, 102, 241, 0.2),
            transparent 50%
        ),
        var(--hunta-surface, #ffffff);

    box-shadow:
        var(--hunta-shadow-sm, 0 8px 30px rgba(15, 23, 42, 0.05));
}

.hunta-blog-newsletter-glow {
    position: absolute;

    top: -4rem;
    right: -4rem;

    width: 8rem;
    height: 8rem;

    border-radius: 50%;

    background: rgba(99, 102, 241, 0.1);

    filter: blur(25px);

    pointer-events: none;
}

.hunta-blog-newsletter-icon {
    position: relative;
    z-index: 1;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 2.6rem;
    height: 2.6rem;

    margin-bottom: 1rem;

    border-radius: 0.8rem;

    background: rgba(99, 102, 241, 0.1);

    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-newsletter-icon svg {
    width: 1.1rem;
    height: 1.1rem;

    stroke: currentColor;
    stroke-width: 2;
}

.hunta-blog-newsletter h2 {
    position: relative;
    z-index: 1;

    margin: 0;

    color: var(--hunta-text, #0f172a);

    font-size: 1.1rem;
    font-weight: 800;
}

.hunta-blog-newsletter p {
    position: relative;
    z-index: 1;

    margin: 0.55rem 0 1rem;

    color: var(--hunta-text-muted, #64748b);

    font-size: 0.78rem;
    line-height: 1.55;
}

.hunta-blog-newsletter-form {
    position: relative;
    z-index: 1;
}

.hunta-blog-newsletter-input {
    display: block;

    width: 100%;
    height: 2.75rem;

    margin-bottom: 0.65rem;
    padding: 0 0.8rem;

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.18));
    border-radius: 0.7rem;

    outline: none;

    background: var(--hunta-surface-soft, #f8fafc);

    color: var(--hunta-text, #0f172a);

    font-size: 0.78rem;

    transition:
        border-color var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        box-shadow var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-blog-newsletter-input:focus {
    border-color: rgba(99, 102, 241, 0.4);

    box-shadow:
        0 0 0 3px rgba(99, 102, 241, 0.1);
}

.hunta-blog-newsletter-button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;

    width: 100%;
    min-height: 2.75rem;

    border: 0;
    border-radius: 0.7rem;

    background: var(--hunta-primary, #6366f1);

    color: #fff;

    font-size: 0.78rem;
    font-weight: 800;

    cursor: pointer;

    transition:
        transform var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease),
        opacity var(--hunta-duration-fast, 160ms) var(--hunta-ease, ease);
}

.hunta-blog-newsletter-button:hover {
    transform: translateY(-1px);
    opacity: 0.92;
}

.hunta-blog-newsletter-button svg {
    width: 0.8rem;
    height: 0.8rem;

    stroke: currentColor;
    stroke-width: 2.25;
}


/* ============================================================
   ADVERTISEMENT
   ============================================================ */

.hunta-blog-sidebar-ad {
    min-width: 0;
}


/* ============================================================
   EMPTY STATE
   ============================================================ */

.hunta-blog-empty {
    grid-column: 1 / -1;

    display: flex;
    align-items: center;
    flex-direction: column;

    padding: 4rem 1.5rem;

    text-align: center;
}

.hunta-blog-empty-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 4rem;
    height: 4rem;

    border-radius: 1rem;

    background: rgba(99, 102, 241, 0.08);

    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-empty-icon svg {
    width: 1.7rem;
    height: 1.7rem;

    stroke: currentColor;
}

.hunta-blog-empty h3 {
    margin: 1rem 0 0;

    color: var(--hunta-text, #0f172a);

    font-size: 1.1rem;
    font-weight: 800;
}

.hunta-blog-empty p {
    margin: 0.45rem 0 0;

    color: var(--hunta-text-muted, #64748b);

    font-size: 0.85rem;
}


/* ============================================================
   PAGINATION
   ============================================================ */

.hunta-blog-pagination {
    display: flex;
    justify-content: center;

    margin-top: 2.5rem;
}

.hunta-blog-pagination .pagination {
    gap: 0.35rem;
    margin-bottom: 0;
}

.hunta-blog-pagination .page-link {
    min-width: 2.4rem;
    height: 2.4rem;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid var(--hunta-border, rgba(148, 163, 184, 0.16));
    border-radius: 0.65rem !important;

    background: var(--hunta-surface, #ffffff);

    color: var(--hunta-text-muted, #64748b);

    font-size: 0.78rem;
    font-weight: 700;
}

.hunta-blog-pagination .page-link:hover {
    border-color: rgba(99, 102, 241, 0.25);

    background: rgba(99, 102, 241, 0.07);

    color: var(--hunta-primary, #6366f1);
}

.hunta-blog-pagination .page-item.active .page-link {
    border-color: var(--hunta-primary, #6366f1);

    background: var(--hunta-primary, #6366f1);

    color: #fff;
}

.hunta-blog-pagination .page-item.disabled .page-link {
    opacity: 0.45;
}


/* ============================================================
   DARK MODE
   ============================================================ */

[data-bs-theme="dark"] .hunta-blog-hero,
.dark .hunta-blog-hero {
    background:
        radial-gradient(
            circle at 50% 0%,
            rgba(99, 102, 241, 0.15),
            transparent 48%
        ),
        var(--hunta-surface, #0f172a);
}

[data-bs-theme="dark"] .hunta-blog-card,
[data-bs-theme="dark"] .hunta-blog-side-card,
[data-bs-theme="dark"] .hunta-blog-newsletter,
.dark .hunta-blog-card,
.dark .hunta-blog-side-card,
.dark .hunta-blog-newsletter {
    border-color: var(--hunta-border, rgba(148, 163, 184, 0.14));

    background: var(--hunta-surface, #111827);

    box-shadow:
        0 12px 35px rgba(0, 0, 0, 0.18);
}

[data-bs-theme="dark"] .hunta-blog-card:hover,
.dark .hunta-blog-card:hover {
    border-color: rgba(129, 140, 248, 0.28);

    box-shadow:
        0 20px 45px rgba(0, 0, 0, 0.25);
}

[data-bs-theme="dark"] .hunta-blog-sort-control,
[data-bs-theme="dark"] .hunta-blog-search-field,
[data-bs-theme="dark"] .hunta-blog-newsletter-input,
.dark .hunta-blog-sort-control,
.dark .hunta-blog-search-field,
.dark .hunta-blog-newsletter-input {
    border-color: var(--hunta-border, rgba(148, 163, 184, 0.15));

    background: var(--hunta-surface-soft, #172033);
}

[data-bs-theme="dark"] .hunta-blog-sort-control select,
.dark .hunta-blog-sort-control select {
    color: var(--hunta-text, #f1f5f9);
}

[data-bs-theme="dark"] .hunta-blog-card-title,
[data-bs-theme="dark"] .hunta-blog-list-heading h2,
[data-bs-theme="dark"] .hunta-blog-list-heading p strong,
[data-bs-theme="dark"] .hunta-blog-side-heading h2,
[data-bs-theme="dark"] .hunta-blog-newsletter h2,
[data-bs-theme="dark"] .hunta-blog-tool-link,
[data-bs-theme="dark"] .hunta-blog-featured-link,
.dark .hunta-blog-card-title,
.dark .hunta-blog-list-heading h2,
.dark .hunta-blog-list-heading p strong,
.dark .hunta-blog-side-heading h2,
.dark .hunta-blog-newsletter h2,
.dark .hunta-blog-tool-link,
.dark .hunta-blog-featured-link {
    color: var(--hunta-text, #f1f5f9);
}

[data-bs-theme="dark"] .hunta-blog-category-link,
[data-bs-theme="dark"] .hunta-blog-card-excerpt,
[data-bs-theme="dark"] .hunta-blog-card-meta,
[data-bs-theme="dark"] .hunta-blog-list-heading p,
[data-bs-theme="dark"] .hunta-blog-newsletter p,
.dark .hunta-blog-category-link,
.dark .hunta-blog-card-excerpt,
.dark .hunta-blog-card-meta,
.dark .hunta-blog-list-heading p,
.dark .hunta-blog-newsletter p {
    color: var(--hunta-text-muted, #94a3b8);
}

[data-bs-theme="dark"] .hunta-blog-pagination .page-link,
.dark .hunta-blog-pagination .page-link {
    border-color: var(--hunta-border, rgba(148, 163, 184, 0.15));

    background: var(--hunta-surface-soft, #172033);

    color: var(--hunta-text-muted, #94a3b8);
}

[data-bs-theme="dark"] .hunta-blog-pagination .page-item.active .page-link,
.dark .hunta-blog-pagination .page-item.active .page-link {
    border-color: var(--hunta-primary, #6366f1);

    background: var(--hunta-primary, #6366f1);

    color: #fff;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 1199.98px) {

    .hunta-blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}


@media (max-width: 991.98px) {

    .hunta-blog-sidebar {
        padding-top: 0;
    }

    .hunta-blog-content {
        padding-top: 2rem;
    }

}


@media (max-width: 767.98px) {

    .hunta-blog-hero {
        padding: 3.25rem 0 3.5rem;
    }

    .hunta-blog-hero-title {
        font-size: 2.35rem;
    }

    .hunta-blog-hero-description {
        font-size: 0.92rem;
    }

    .hunta-blog-content {
        padding: 2rem 0 3.5rem;
    }

    .hunta-blog-list-header {
        align-items: stretch;
        flex-direction: column;
        gap: 1rem;
        margin-bottom: 1.5rem;
    }

    .hunta-blog-sort-control {
        width: 100%;
    }

    .hunta-blog-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .hunta-blog-card-media {
        height: 205px;
    }

    .hunta-blog-card-body {
        padding: 1.1rem;
    }

    .hunta-blog-side-card,
    .hunta-blog-newsletter {
        padding: 1.1rem;
    }

}


@media (max-width: 479.98px) {

    .hunta-blog-hero-title {
        font-size: 2rem;
    }

    .hunta-blog-card-media {
        height: 190px;
    }

    .hunta-blog-card-meta {
        gap: 0.55rem 0.8rem;
    }

    .hunta-blog-card-meta span:last-child {
        display: none;
    }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-blog-card,
    .hunta-blog-card-media img,
    .hunta-blog-read-link,
    .hunta-blog-category-link,
    .hunta-blog-featured-link,
    .hunta-blog-tool-link,
    .hunta-blog-search-field button,
    .hunta-blog-newsletter-button {
        transition: none;
    }

    .hunta-blog-card:hover {
        transform: none;
    }

    .hunta-blog-card:hover .hunta-blog-card-media img {
        transform: none;
    }

    .hunta-blog-category-link:hover,
    .hunta-blog-tool-link:hover,
    .hunta-blog-newsletter-button:hover {
        transform: none;
    }
}
 /* ============================================================
HUNTA — BLOG ARTICLE
Scoped to the blog article page only.
============================================================ */

/* ============================================================
ARTICLE HERO
============================================================ */

.hunta-blog-article-hero {
position: relative;
overflow: hidden;
padding: clamp(4rem, 8vw, 7rem) 0 clamp(3.5rem, 7vw, 5.5rem);
background:
radial-gradient(
circle at 50% 0%,
color-mix(in srgb, var(--hunta-accent, #7c5cff) 16%, transparent),
transparent 48%
),
var(--hunta-surface, #0b0d12);
border-bottom: 1px solid var(--hunta-border, rgba(255,255,255,.08));
}

.hunta-blog-article-hero__glow {
position: absolute;
width: 420px;
height: 420px;
top: -300px;
left: 50%;
transform: translateX(-50%);
border-radius: 50%;
background: var(--hunta-accent, #7c5cff);
opacity: .08;
filter: blur(80px);
pointer-events: none;
}

.hunta-blog-article-hero__inner {
position: relative;
z-index: 1;
max-width: 920px;
margin: 0 auto;
text-align: center;
}

.hunta-blog-article-hero__eyebrow {
display: inline-flex;
align-items: center;
gap: .5rem;
margin-bottom: 1.25rem;
padding: .5rem .8rem;
border: 1px solid var(--hunta-border, rgba(255,255,255,.08));
border-radius: 999px;
background: var(--hunta-surface-soft, rgba(255,255,255,.04));
color: var(--hunta-text-soft, #aeb5c4);
font-size: .78rem;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
}

.hunta-blog-article-hero__eyebrow svg {
width: 15px;
height: 15px;
color: var(--hunta-accent, #7c5cff);
}

.hunta-blog-article-hero__title {
max-width: 900px;
margin: 0 auto 1.5rem;
color: var(--hunta-text, #fff);
font-size: clamp(2rem, 4.5vw, 4rem);
line-height: 1.08;
font-weight: 800;
letter-spacing: -.035em;
text-wrap: balance;
}

.hunta-blog-article-hero__meta {
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
gap: .65rem 1.5rem;
color: var(--hunta-text-muted, #8f98a8);
font-size: .9rem;
}

.hunta-blog-article-hero__meta span {
display: inline-flex;
align-items: center;
gap: .4rem;
}

.hunta-blog-article-hero__meta svg {
width: 15px;
height: 15px;
opacity: .8;
}

/* ============================================================
PAGE LAYOUT
============================================================ */

.hunta-blog-article-page {
padding: 3rem 0 5rem;
}

.hunta-blog-article-layout {
display: grid;
grid-template-columns: minmax(0, 220px) minmax(0, 1fr) minmax(0, 270px);
gap: 1.5rem;
align-items: start;
}

.hunta-blog-article-main {
min-width: 0;
grid-column: 2;
}

.hunta-blog-sidebar {
min-width: 0;
}

.hunta-blog-sidebar--left {
grid-column: 1;
grid-row: 1;
}

.hunta-blog-sidebar--right {
grid-column: 3;
grid-row: 1;
}

.hunta-blog-sidebar__sticky {
position: sticky;
top: 1.25rem;
display: flex;
flex-direction: column;
gap: 1rem;
}

/* ============================================================
ARTICLE CARD
============================================================ */

.hunta-blog-article-card,
.hunta-blog-comments-card,
.hunta-blog-side-card,
.hunta-blog-tools-card {
border: 1px solid var(--hunta-border, rgba(255,255,255,.08));
background: var(--hunta-surface, #11141b);
box-shadow: var(--hunta-shadow-sm, 0 10px 30px rgba(0,0,0,.12));
}

.hunta-blog-article-card {
overflow: hidden;
border-radius: var(--hunta-radius-lg, 1.25rem);
}

.hunta-blog-article-cover {
position: relative;
overflow: hidden;
aspect-ratio: 16 / 8;
background: var(--hunta-surface-soft, #171b23);
}

.hunta-blog-article-cover::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(
to bottom,
transparent 55%,
rgba(0,0,0,.16)
);
pointer-events: none;
}

.hunta-blog-article-cover img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}

.hunta-blog-article-body {
padding: clamp(1.5rem, 4vw, 3.25rem);
}

/* ============================================================
ARTICLE TYPOGRAPHY
============================================================ */

.hunta-blog-content {
max-width: 780px;
margin: 0 auto;
color: var(--hunta-text-soft, #c4c9d4);
font-size: 1.04rem;
line-height: 1.85;
}

.hunta-blog-content > *:first-child {
margin-top: 0;
}

.hunta-blog-content > *:last-child {
margin-bottom: 0;
}

.hunta-blog-content h2,
.hunta-blog-content h3,
.hunta-blog-content h4,
.hunta-blog-content h5,
.hunta-blog-content h6 {
margin-top: 2.5rem;
margin-bottom: 1rem;
color: var(--hunta-text, #fff);
line-height: 1.25;
font-weight: 750;
letter-spacing: -.02em;
}

.hunta-blog-content h2 {
font-size: clamp(1.55rem, 3vw, 2rem);
}

.hunta-blog-content h3 {
font-size: 1.45rem;
}

.hunta-blog-content h4 {
font-size: 1.25rem;
}

.hunta-blog-content p {
margin-bottom: 1.35rem;
}

.hunta-blog-content a {
color: var(--hunta-accent, #7c5cff);
font-weight: 650;
text-decoration: underline;
text-decoration-color: color-mix(
in srgb,
var(--hunta-accent, #7c5cff) 35%,
transparent
);
text-underline-offset: 3px;
}

.hunta-blog-content a:hover {
text-decoration-color: currentColor;
}

.hunta-blog-content ul,
.hunta-blog-content ol {
margin: 0 0 1.5rem;
padding-left: 1.5rem;
}

.hunta-blog-content li {
margin-bottom: .5rem;
}

.hunta-blog-content blockquote {
margin: 2rem 0;
padding: 1.25rem 1.5rem;
border-left: 3px solid var(--hunta-accent, #7c5cff);
border-radius: 0 var(--hunta-radius-md, .75rem) var(--hunta-radius-md, .75rem) 0;
background: var(--hunta-surface-soft, rgba(255,255,255,.04));
color: var(--hunta-text-soft, #c4c9d4);
}

.hunta-blog-content img {
display: block;
max-width: 100%;
height: auto;
margin: 2rem auto;
border-radius: var(--hunta-radius-md, .75rem);
}

.hunta-blog-content pre {
overflow-x: auto;
margin: 2rem 0;
padding: 1.25rem;
border: 1px solid var(--hunta-border, rgba(255,255,255,.08));
border-radius: var(--hunta-radius-md, .75rem);
background: #090b0f;
}

.hunta-blog-content code {
font-size: .9em;
}

.hunta-blog-content table {
width: 100%;
margin: 2rem 0;
border-collapse: collapse;
}

.hunta-blog-content th,
.hunta-blog-content td {
padding: .8rem;
border: 1px solid var(--hunta-border, rgba(255,255,255,.08));
text-align: left;
}

.hunta-blog-content th {
color: var(--hunta-text, #fff);
background: var(--hunta-surface-soft, rgba(255,255,255,.04));
}

/* ============================================================
SECTION HEADINGS
============================================================ */

.hunta-blog-comments-card {
margin-top: 1.5rem;
padding: clamp(1.35rem, 3vw, 2rem);
border-radius: var(--hunta-radius-lg, 1.25rem);
}

.hunta-blog-section-heading {
display: flex;
align-items: center;
gap: .9rem;
margin-bottom: 1.5rem;
}

.hunta-blog-section-icon {
display: inline-flex;
align-items: center;
justify-content: center;
flex: 0 0 42px;
width: 42px;
height: 42px;
border: 1px solid color-mix(
in srgb,
var(--hunta-accent, #7c5cff) 25%,
var(--hunta-border, rgba(255,255,255,.08))
);
border-radius: 12px;
background: color-mix(
in srgb,
var(--hunta-accent, #7c5cff) 10%,
transparent
);
color: var(--hunta-accent, #7c5cff);
}

.hunta-blog-section-icon svg {
width: 19px;
height: 19px;
}

.hunta-blog-section-heading h2 {
margin: 0;
color: var(--hunta-text, #fff);
font-size: 1.2rem;
font-weight: 750;
}

.hunta-blog-section-heading h2 span {
color: var(--hunta-text-muted, #8f98a8);
font-weight: 600;
}

.hunta-blog-section-heading p {
margin: .2rem 0 0;
color: var(--hunta-text-muted, #8f98a8);
font-size: .86rem;
}

/* ============================================================
COMMENT FORM
============================================================ */

.hunta-blog-comment-form {
display: flex;
flex-direction: column;
gap: 1rem;
}

.hunta-blog-form-field textarea {
display: block;
width: 100%;
min-height: 140px;
padding: 1rem 1.05rem;
border: 1px solid var(--hunta-border, rgba(255,255,255,.1));
border-radius: var(--hunta-radius-md, .8rem);
outline: none;
resize: vertical;
background: var(--hunta-surface-soft, rgba(255,255,255,.035));
color: var(--hunta-text, #fff);
font: inherit;
line-height: 1.6;
transition:
border-color var(--hunta-duration-fast, .18s) var(--hunta-ease, ease),
box-shadow var(--hunta-duration-fast, .18s) var(--hunta-ease, ease);
}

.hunta-blog-form-field textarea::placeholder {
color: var(--hunta-text-muted, #8f98a8);
}

.hunta-blog-form-field textarea:focus {
border-color: var(--hunta-accent, #7c5cff);
box-shadow: var(
--hunta-focus-ring,
0 0 0 3px rgba(124,92,255,.14)
);
}

.hunta-blog-primary-btn {
display: inline-flex;
align-items: center;
justify-content: center;
align-self: flex-start;
gap: .55rem;
min-height: 44px;
padding: .7rem 1.1rem;
border: 0;
border-radius: 999px;
background: var(--hunta-accent, #7c5cff);
color: #fff;
font-weight: 700;
cursor: pointer;
transition:
transform var(--hunta-duration-fast, .18s) var(--hunta-ease, ease),
box-shadow var(--hunta-duration-fast, .18s) var(--hunta-ease, ease);
}

.hunta-blog-primary-btn:hover {
transform: translateY(-1px);
box-shadow: var(--hunta-shadow-md, 0 12px 30px rgba(0,0,0,.16));
}

.hunta-blog-primary-btn svg {
width: 16px;
height: 16px;
}

/* ============================================================
LOGIN NOTICE
============================================================ */

.hunta-blog-login-notice {
display: flex;
align-items: center;
gap: .9rem;
padding: 1rem;
border: 1px solid var(--hunta-border, rgba(255,255,255,.08));
border-radius: var(--hunta-radius-md, .8rem);
background: var(--hunta-surface-soft, rgba(255,255,255,.035));
}

.hunta-blog-login-notice__icon {
display: flex;
align-items: center;
justify-content: center;
flex: 0 0 40px;
width: 40px;
height: 40px;
border-radius: 11px;
background: color-mix(
in srgb,
var(--hunta-accent, #7c5cff) 10%,
transparent
);
color: var(--hunta-accent, #7c5cff);
}

.hunta-blog-login-notice__icon svg {
width: 18px;
height: 18px;
}

.hunta-blog-login-notice__content p {
margin: 0 0 .25rem;
color: var(--hunta-text-soft, #c4c9d4);
font-size: .9rem;
}

.hunta-blog-login-notice__content a {
display: inline-flex;
align-items: center;
gap: .3rem;
color: var(--hunta-accent, #7c5cff);
font-size: .88rem;
font-weight: 700;
text-decoration: none;
}

.hunta-blog-login-notice__content a svg {
width: 14px;
height: 14px;
}

/* ============================================================
COMMENTS
============================================================ */

.hunta-blog-comments-list {
display: flex;
flex-direction: column;
}

.hunta-blog-comment {
display: flex;
gap: .9rem;
padding: 1.1rem 0;
border-bottom: 1px solid var(--hunta-border, rgba(255,255,255,.07));
}

.hunta-blog-comment:first-child {
padding-top: 0;
}

.hunta-blog-comment:last-child {
padding-bottom: 0;
border-bottom: 0;
}

.hunta-blog-comment__avatar {
display: flex;
align-items: center;
justify-content: center;
flex: 0 0 42px;
width: 42px;
height: 42px;
border-radius: 50%;
background: color-mix(
in srgb,
var(--hunta-accent, #7c5cff) 13%,
var(--hunta-surface-soft, #171b23)
);
color: var(--hunta-accent, #7c5cff);
font-size: .9rem;
font-weight: 800;
}

.hunta-blog-comment__content {
min-width: 0;
flex: 1;
}

.hunta-blog-comment__header {
display: flex;
align-items: baseline;
flex-wrap: wrap;
gap: .5rem .75rem;
margin-bottom: .35rem;
}

.hunta-blog-comment__header strong {
color: var(--hunta-text, #fff);
font-size: .92rem;
}

.hunta-blog-comment__header span {
color: var(--hunta-text-muted, #8f98a8);
font-size: .78rem;
}

.hunta-blog-comment__content p {
margin: 0;
color: var(--hunta-text-soft, #c4c9d4);
font-size: .92rem;
line-height: 1.65;
}

.hunta-blog-empty-comments,
.hunta-blog-side-empty {
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
gap: .6rem;
padding: 2rem 1rem;
color: var(--hunta-text-muted, #8f98a8);
text-align: center;
}

.hunta-blog-empty-comments__icon {
display: flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
border-radius: 14px;
background: var(--hunta-surface-soft, rgba(255,255,255,.04));
}

.hunta-blog-empty-comments__icon svg,
.hunta-blog-side-empty svg {
width: 20px;
height: 20px;
}

.hunta-blog-empty-comments p {
margin: 0;
font-size: .9rem;
}

/* ============================================================
PAGINATION
============================================================ */

.hunta-blog-pagination {
margin-top: 1.5rem;
padding-top: 1.25rem;
border-top: 1px solid var(--hunta-border, rgba(255,255,255,.07));
}

.hunta-blog-pagination .pagination {
margin: 0;
justify-content: center;
gap: .35rem;
}

.hunta-blog-pagination .page-link {
border-radius: 9px;
}

/* ============================================================
SIDEBAR CARDS
============================================================ */

.hunta-blog-side-card {
padding: 1.15rem;
border-radius: var(--hunta-radius-lg, 1.1rem);
}

.hunta-blog-side-card__heading {
display: flex;
align-items: center;
gap: .65rem;
margin-bottom: 1rem;
}

.hunta-blog-side-card__heading h3 {
margin: 0;
color: var(--hunta-text, #fff);
font-size: .95rem;
font-weight: 750;
}

.hunta-blog-side-card__icon {
display: flex;
align-items: center;
justify-content: center;
flex: 0 0 34px;
width: 34px;
height: 34px;
border-radius: 9px;
background: color-mix(
in srgb,
var(--hunta-accent, #7c5cff) 10%,
transparent
);
color: var(--hunta-accent, #7c5cff);
}

.hunta-blog-side-card__icon svg {
width: 16px;
height: 16px;
}

/* ============================================================
CATEGORY
============================================================ */

.hunta-blog-category-pill {
display: inline-flex;
align-items: center;
min-height: 34px;
padding: .45rem .75rem;
border: 1px solid color-mix(
in srgb,
var(--hunta-accent, #7c5cff) 25%,
var(--hunta-border, rgba(255,255,255,.08))
);
border-radius: 999px;
background: color-mix(
in srgb,
var(--hunta-accent, #7c5cff) 8%,
transparent
);
color: var(--hunta-accent, #7c5cff);
font-size: .8rem;
font-weight: 700;
}

/* ============================================================
SHARE
============================================================ */

.hunta-blog-share-list {
display: flex;
flex-direction: column;
gap: .55rem;
}

.hunta-blog-share {
display: flex;
align-items: center;
gap: .65rem;
min-height: 40px;
padding: .55rem .75rem;
border: 1px solid var(--hunta-border, rgba(255,255,255,.08));
border-radius: 10px;
background: var(--hunta-surface-soft, rgba(255,255,255,.025));
color: var(--hunta-text-soft, #c4c9d4);
font-size: .82rem;
font-weight: 650;
text-decoration: none;
transition:
transform var(--hunta-duration-fast, .18s) var(--hunta-ease, ease),
border-color var(--hunta-duration-fast, .18s) var(--hunta-ease, ease),
background var(--hunta-duration-fast, .18s) var(--hunta-ease, ease);
}

.hunta-blog-share:hover {
transform: translateX(2px);
border-color: var(--hunta-border-strong, rgba(255,255,255,.16));
color: var(--hunta-text, #fff);
}

.hunta-blog-share svg {
width: 16px;
height: 16px;
}

/* ============================================================
RELATED POSTS
============================================================ */

.hunta-blog-related-list {
display: flex;
flex-direction: column;
gap: .9rem;
}

.hunta-blog-related-item {
display: grid;
grid-template-columns: 76px minmax(0, 1fr);
gap: .7rem;
align-items: center;
}

.hunta-blog-related-item__image {
display: flex;
align-items: center;
justify-content: center;
aspect-ratio: 1 / 1;
overflow: hidden;
border-radius: 10px;
background: var(--hunta-surface-soft, #171b23);
}

.hunta-blog-related-item__image img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
transition: transform .25s var(--hunta-ease, ease);
}

.hunta-blog-related-item:hover .hunta-blog-related-item__image img {
transform: scale(1.05);
}

.hunta-blog-related-item__image--empty {
color: var(--hunta-text-muted, #8f98a8);
}

.hunta-blog-related-item__image--empty svg {
width: 18px;
height: 18px;
}

.hunta-blog-related-item__content {
min-width: 0;
}

.hunta-blog-related-item__title {
display: -webkit-box;
overflow: hidden;
color: var(--hunta-text-soft, #c4c9d4);
font-size: .82rem;
font-weight: 700;
line-height: 1.35;
text-decoration: none;
line-clamp: 3;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
}

.hunta-blog-related-item__title:hover {
color: var(--hunta-accent, #7c5cff);
}

.hunta-blog-related-item__date {
display: flex;
align-items: center;
gap: .3rem;
margin-top: .3rem;
color: var(--hunta-text-muted, #8f98a8);
font-size: .7rem;
}

.hunta-blog-related-item__date svg {
width: 12px;
height: 12px;
}

/* ============================================================
FEATURED TOOLS
============================================================ */

.hunta-blog-tools-card {
overflow: hidden;
padding: 1.25rem;
border-radius: var(--hunta-radius-lg, 1.1rem);
text-align: center;
}

.hunta-blog-tools-card__icon {
display: flex;
align-items: center;
justify-content: center;
width: 48px;
height: 48px;
margin: 0 auto .8rem;
border-radius: 14px;
background: color-mix(
in srgb,
var(--hunta-accent, #7c5cff) 12%,
transparent
);
color: var(--hunta-accent, #7c5cff);
}

.hunta-blog-tools-card__icon svg {
width: 22px;
height: 22px;
}

.hunta-blog-tools-card h3 {
margin: 0;
color: var(--hunta-text, #fff);
font-size: 1rem;
font-weight: 750;
}

.hunta-blog-tools-card > p {
margin: .45rem 0 1rem;
color: var(--hunta-text-muted, #8f98a8);
font-size: .78rem;
line-height: 1.5;
}

.hunta-blog-tools-list {
display: flex;
flex-direction: column;
gap: .4rem;
text-align: left;
}

.hunta-blog-tool-link {
display: flex;
align-items: center;
gap: .6rem;
min-width: 0;
padding: .55rem .6rem;
border: 1px solid transparent;
border-radius: 9px;
color: var(--hunta-text-soft, #c4c9d4);
font-size: .78rem;
font-weight: 650;
text-decoration: none;
transition:
background var(--hunta-duration-fast, .18s) var(--hunta-ease, ease),
border-color var(--hunta-duration-fast, .18s) var(--hunta-ease, ease),
transform var(--hunta-duration-fast, .18s) var(--hunta-ease, ease);
}

.hunta-blog-tool-link:hover {
transform: translateX(2px);
border-color: var(--hunta-border, rgba(255,255,255,.08));
background: var(--hunta-surface-soft, rgba(255,255,255,.04));
color: var(--hunta-text, #fff);
}

.hunta-blog-tool-link__icon {
display: flex;
align-items: center;
justify-content: center;
flex: 0 0 30px;
width: 30px;
height: 30px;
border-radius: 8px;
background: var(--hunta-surface-soft, rgba(255,255,255,.05));
color: var(--hunta-accent, #7c5cff);
}

.hunta-blog-tool-link__icon svg {
width: 15px;
height: 15px;
}

.hunta-blog-tool-link > span:nth-child(2) {
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.hunta-blog-tool-link__arrow {
width: 13px;
height: 13px;
margin-left: auto;
opacity: .5;
}

/* ============================================================
RESPONSIVE
============================================================ */

@media (max-width: 1199.98px) {

 
.hunta-blog-article-layout {
    grid-template-columns: 190px minmax(0, 1fr) 235px;
    gap: 1.15rem;
}
 

}

@media (max-width: 991.98px) {

 
.hunta-blog-article-layout {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.hunta-blog-article-main {
    grid-column: 1 / -1;
    grid-row: 1;
}

.hunta-blog-sidebar--left {
    grid-column: 1;
    grid-row: 2;
}

.hunta-blog-sidebar--right {
    grid-column: 2;
    grid-row: 2;
}

.hunta-blog-sidebar__sticky {
    position: static;
}
 

}

@media (max-width: 767.98px) {

 
.hunta-blog-article-hero {
    padding: 3.5rem 0 3rem;
}

.hunta-blog-article-hero__title {
    font-size: clamp(1.8rem, 8vw, 2.6rem);
}

.hunta-blog-article-hero__meta {
    gap: .55rem 1rem;
    font-size: .8rem;
}

.hunta-blog-article-page {
    padding: 1.5rem 0 3.5rem;
}

.hunta-blog-article-layout {
    display: flex;
    flex-direction: column;
}

.hunta-blog-article-main,
.hunta-blog-sidebar--left,
.hunta-blog-sidebar--right {
    width: 100%;
}

.hunta-blog-sidebar--left {
    order: 2;
}

.hunta-blog-sidebar--right {
    order: 3;
}

.hunta-blog-article-body {
    padding: 1.35rem;
}

.hunta-blog-content {
    font-size: .98rem;
    line-height: 1.75;
}

.hunta-blog-article-cover {
    aspect-ratio: 16 / 10;
}

.hunta-blog-comment__avatar {
    flex-basis: 38px;
    width: 38px;
    height: 38px;
}
 

}

@media (max-width: 479.98px) {

 
.hunta-blog-article-hero__meta {
    display: grid;
    grid-template-columns: 1fr 1fr;
    justify-items: start;
    text-align: left;
}

.hunta-blog-section-heading {
    align-items: flex-start;
}

.hunta-blog-primary-btn {
    width: 100%;
}
 

}

/* ============================================================
LIGHT MODE
============================================================ */

[data-bs-theme="light"] .hunta-blog-article-hero,
html:not(.dark) .hunta-blog-article-hero {
background:
radial-gradient(
circle at 50% 0%,
color-mix(in srgb, var(--hunta-accent, #7c5cff) 9%, transparent),
transparent 48%
),
var(--hunta-surface, #fff);
}

[data-bs-theme="light"] .hunta-blog-article-card,
[data-bs-theme="light"] .hunta-blog-comments-card,
[data-bs-theme="light"] .hunta-blog-side-card,
[data-bs-theme="light"] .hunta-blog-tools-card,
html:not(.dark) .hunta-blog-article-card,
html:not(.dark) .hunta-blog-comments-card,
html:not(.dark) .hunta-blog-side-card,
html:not(.dark) .hunta-blog-tools-card {
background: var(--hunta-surface, #fff);
box-shadow: var(--hunta-shadow-sm, 0 8px 25px rgba(15,23,42,.06));
}

/* ============================================================
REDUCED MOTION
============================================================ */

@media (prefers-reduced-motion: reduce) {

 
.hunta-blog-related-item__image img,
.hunta-blog-share,
.hunta-blog-tool-link,
.hunta-blog-primary-btn,
.hunta-blog-form-field textarea {
    transition: none;
}
 

}

/* ============================================================
HUNTA — CONTACT PAGE
contact-modern.css

DEPENDS ON:

* app-modern.css

SCOPE:

* Contact page only
  ============================================================ */

/* ============================================================
PAGE
============================================================ */

.hunta-contact-page {
position: relative;
overflow: hidden;
background: var(--hunta-bg, #f7f8fb);
color: var(--hunta-text, #111827);
}

/* ============================================================
HERO
============================================================ */

.hunta-contact-hero {
position: relative;
isolation: isolate;
overflow: hidden;
padding: clamp(4.5rem, 8vw, 7rem) 0 clamp(4rem, 7vw, 6rem);
background:
radial-gradient(
circle at 50% 0%,
rgba(99, 102, 241, 0.18),
transparent 42%
),
var(--hunta-surface, #111827);
color: #fff;
}

.hunta-contact-hero__inner {
position: relative;
z-index: 2;
max-width: 820px;
margin-inline: auto;
text-align: center;
}

.hunta-contact-hero__glow {
position: absolute;
z-index: -1;
width: 420px;
height: 420px;
border-radius: 50%;
pointer-events: none;
filter: blur(80px);
opacity: .28;
}

.hunta-contact-hero__glow--one {
top: -240px;
left: 10%;
background: var(--hunta-accent, #6366f1);
}

.hunta-contact-hero__glow--two {
right: 5%;
bottom: -300px;
background: #2563eb;
}

.hunta-contact-hero__eyebrow {
display: inline-flex;
align-items: center;
gap: .55rem;
margin-bottom: 1.25rem;
padding: .5rem .8rem .5rem .55rem;
border: 1px solid rgba(255,255,255,.14);
border-radius: 999px;
background: rgba(255,255,255,.07);
color: var(--hunta-text-soft, #fff);
font-size: .78rem;
font-weight: 700;
letter-spacing: .04em;
}

.hunta-contact-hero__eyebrow-icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 1.8rem;
height: 1.8rem;
border-radius: 50%;
background: rgba(255,255,255,.1);
}

.hunta-contact-hero__eyebrow-icon svg {
width: 1rem;
height: 1rem;
}

.hunta-contact-hero__title {
margin: 0;
color: #7c5cff;
font-size: clamp(2.35rem, 5vw, 4.5rem);
font-weight: 800;
line-height: 1.04;
letter-spacing: -.045em;
}

.hunta-contact-hero__description {
max-width: 700px;
margin: 1.25rem auto 0;
color: var(--hunta-text-muted, rgba(255,255,255,.75)) ;
font-size: clamp(1rem, 1.8vw, 1.15rem);
line-height: 1.75;
}

/* ============================================================
MAIN CONTACT SECTION
============================================================ */

.hunta-contact-section {
padding: clamp(3.5rem, 7vw, 6rem) 0;
}

.hunta-contact-grid {
display: grid;
grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
gap: clamp(2rem, 6vw, 5.5rem);
align-items: start;
}

/* ============================================================
INFORMATION SIDE
============================================================ */

.hunta-contact-info {
padding-top: .5rem;
}

.hunta-contact-section-heading__eyebrow {
display: inline-block;
margin-bottom: .65rem;
color: var(--hunta-accent, #6366f1);
font-size: .75rem;
font-weight: 800;
letter-spacing: .08em;
text-transform: uppercase;
}

.hunta-contact-section-heading h2 {
margin: 0;
color: var(--hunta-text, #111827);
font-size: clamp(1.8rem, 3vw, 2.55rem);
font-weight: 800;
line-height: 1.12;
letter-spacing: -.035em;
}

.hunta-contact-section-heading p {
max-width: 540px;
margin: 1rem 0 0;
color: var(--hunta-text-muted, #6b7280);
font-size: .98rem;
line-height: 1.75;
}

/* ============================================================
INFO CARDS
============================================================ */

.hunta-contact-info-list {
display: grid;
gap: .8rem;
margin-top: 2rem;
}

.hunta-contact-info-card {
display: flex;
align-items: center;
gap: 1rem;
padding: 1.1rem;
border: 1px solid var(--hunta-border, #e5e7eb);
border-radius: var(--hunta-radius-md, 16px);
background: var(--hunta-surface, #fff);
box-shadow: var(--hunta-shadow-sm, 0 4px 18px rgba(0,0,0,.05));
transition:
transform var(--hunta-duration, 180ms) var(--hunta-ease, ease),
border-color var(--hunta-duration, 180ms) var(--hunta-ease, ease),
box-shadow var(--hunta-duration, 180ms) var(--hunta-ease, ease);
}

.hunta-contact-info-card:hover {
transform: translateY(-2px);
border-color: var(--hunta-border-strong, #d1d5db);
box-shadow: var(--hunta-shadow-md, 0 12px 30px rgba(0,0,0,.08));
}

.hunta-contact-info-card__icon {
flex: 0 0 auto;
display: inline-flex;
align-items: center;
justify-content: center;
width: 3rem;
height: 3rem;
border: 1px solid color-mix(
in srgb,
var(--hunta-accent, #6366f1) 20%,
transparent
);
border-radius: 13px;
background: color-mix(
in srgb,
var(--hunta-accent, #6366f1) 9%,
transparent
);
color: var(--hunta-accent, #6366f1);
}

.hunta-contact-info-card__icon svg {
width: 1.25rem;
height: 1.25rem;
}

.hunta-contact-info-card__content {
min-width: 0;
}

.hunta-contact-info-card__content h3 {
margin: 0 0 .25rem;
color: var(--hunta-text, #111827);
font-size: .92rem;
font-weight: 750;
}

.hunta-contact-info-card__content p {
margin: 0;
color: var(--hunta-text-muted, #6b7280);
font-size: .88rem;
line-height: 1.5;
overflow-wrap: anywhere;
}

/* ============================================================
INFORMATION NOTE
============================================================ */

.hunta-contact-info-note {
display: flex;
align-items: flex-start;
gap: .85rem;
margin-top: 1.25rem;
padding: 1rem;
border: 1px solid color-mix(
in srgb,
var(--hunta-accent, #6366f1) 16%,
var(--hunta-border, #e5e7eb)
);
border-radius: var(--hunta-radius-md, 16px);
background: color-mix(
in srgb,
var(--hunta-accent, #6366f1) 5%,
var(--hunta-surface, #fff)
);
}

.hunta-contact-info-note__icon {
flex: 0 0 auto;
display: inline-flex;
align-items: center;
justify-content: center;
width: 2.35rem;
height: 2.35rem;
border-radius: 10px;
background: var(--hunta-accent, #6366f1);
color: #fff;
}

.hunta-contact-info-note__icon svg {
width: 1rem;
height: 1rem;
}

.hunta-contact-info-note strong {
display: block;
margin-bottom: .15rem;
color: var(--hunta-text, #111827);
font-size: .85rem;
}

.hunta-contact-info-note p {
margin: 0;
color: var(--hunta-text-muted, #6b7280);
font-size: .78rem;
line-height: 1.55;
}

/* ============================================================
FORM CARD
============================================================ */

.hunta-contact-form-card {
position: relative;
padding: clamp(1.35rem, 4vw, 2.25rem);
border: 1px solid var(--hunta-border, #e5e7eb);
border-radius: var(--hunta-radius-lg, 22px);
background: var(--hunta-surface, #fff);
box-shadow: var(--hunta-shadow-md, 0 14px 40px rgba(0,0,0,.07));
}

.hunta-contact-form-card__header {
display: flex;
align-items: center;
gap: .9rem;
margin-bottom: 1.75rem;
}

.hunta-contact-form-card__icon {
flex: 0 0 auto;
display: inline-flex;
align-items: center;
justify-content: center;
width: 3rem;
height: 3rem;
border-radius: 12px;
background: var(--hunta-accent, #6366f1);
color: #fff;
}

.hunta-contact-form-card__icon svg {
width: 1.2rem;
height: 1.2rem;
}

.hunta-contact-form-card__header h2 {
margin: 0;
color: var(--hunta-text, #111827);
font-size: 1.25rem;
font-weight: 800;
}

.hunta-contact-form-card__header p {
margin: .25rem 0 0;
color: var(--hunta-text-muted, #6b7280);
font-size: .82rem;
}

/* ============================================================
ALERT
============================================================ */

.hunta-contact-alert {
display: flex;
align-items: center;
gap: .7rem;
margin-bottom: 1.25rem;
padding: .85rem 1rem;
border-radius: 12px;
font-size: .85rem;
font-weight: 600;
}

.hunta-contact-alert--success {
border: 1px solid rgba(16,185,129,.2);
background: rgba(16,185,129,.08);
color: #047857;
}

.hunta-contact-alert__icon {
display: inline-flex;
}

.hunta-contact-alert svg {
width: 1.1rem;
height: 1.1rem;
}

/* ============================================================
FORM
============================================================ */

.hunta-contact-form {
display: grid;
gap: 1.15rem;
}

.hunta-contact-form__row {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 1rem;
}

.hunta-contact-field {
min-width: 0;
}

.hunta-contact-field label {
display: block;
margin-bottom: .5rem;
color: var(--hunta-text, #111827);
font-size: .8rem;
font-weight: 700;
}

.hunta-contact-input-wrap,
.hunta-contact-textarea-wrap {
position: relative;
}

.hunta-contact-input-wrap > svg {
position: absolute;
z-index: 2;
top: 50%;
left: 1rem;
width: 1rem;
height: 1rem;
color: var(--hunta-text-muted, #9ca3af);
transform: translateY(-50%);
pointer-events: none;
}

.hunta-contact-input-wrap input {
width: 100%;
min-height: 3.05rem;
padding: .75rem 1rem .75rem 2.8rem;
border: 1px solid var(--hunta-border, #e5e7eb);
border-radius: 12px;
outline: 0;
background: var(--hunta-surface-soft, #f9fafb);
color: var(--hunta-text, #111827);
font: inherit;
font-size: .88rem;
transition:
border-color var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease),
box-shadow var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease),
background var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease);
}

.hunta-contact-input-wrap input::placeholder,
.hunta-contact-textarea-wrap textarea::placeholder {
color: var(--hunta-text-muted, #9ca3af);
}

.hunta-contact-input-wrap input:focus,
.hunta-contact-textarea-wrap textarea:focus {
border-color: var(--hunta-accent, #6366f1);
background: var(--hunta-surface, #fff);
box-shadow: 0 0 0 4px color-mix(
in srgb,
var(--hunta-accent, #6366f1) 12%,
transparent
);
}

.hunta-contact-textarea-wrap textarea {
width: 100%;
min-height: 170px;
padding: 1rem;
padding-right: 2.8rem;
border: 1px solid var(--hunta-border, #e5e7eb);
border-radius: 12px;
outline: 0;
resize: vertical;
background: var(--hunta-surface-soft, #f9fafb);
color: var(--hunta-text, #111827);
font: inherit;
font-size: .88rem;
line-height: 1.65;
transition:
border-color var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease),
box-shadow var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease),
background var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease);
}

.hunta-contact-textarea-wrap > svg {
position: absolute;
top: 1rem;
right: 1rem;
width: 1rem;
height: 1rem;
color: var(--hunta-text-muted, #9ca3af);
pointer-events: none;
}

.hunta-contact-field__error {
margin-top: .4rem;
color: var(--hunta-danger, #dc2626);
font-size: .76rem;
font-weight: 600;
}

/* ============================================================
FORM FOOTER
============================================================ */

.hunta-contact-form__footer {
display: flex;
align-items: center;
justify-content: space-between;
gap: 1rem;
padding-top: .25rem;
}

.hunta-contact-form__footer p {
display: flex;
align-items: center;
gap: .4rem;
max-width: 55%;
margin: 0;
color: var(--hunta-text-muted, #6b7280);
font-size: .72rem;
line-height: 1.45;
}

.hunta-contact-form__footer p svg {
flex: 0 0 auto;
width: .9rem;
height: .9rem;
}

.hunta-contact-submit {
display: inline-flex;
align-items: center;
justify-content: center;
gap: .65rem;
min-height: 3rem;
padding: .75rem 1.25rem;
border: 1px solid transparent;
border-radius: 12px;
background: var(--hunta-accent, #6366f1);
color: #fff;
font: inherit;
font-size: .84rem;
font-weight: 750;
cursor: pointer;
transition:
transform var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease),
box-shadow var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease),
background var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease);
}

.hunta-contact-submit:hover {
transform: translateY(-1px);
box-shadow: 0 10px 24px color-mix(
in srgb,
var(--hunta-accent, #6366f1) 25%,
transparent
);
}

.hunta-contact-submit:focus-visible {
outline: 0;
box-shadow: var(--hunta-focus-ring, 0 0 0 4px rgba(99,102,241,.18));
}

.hunta-contact-submit svg {
width: 1rem;
height: 1rem;
transition: transform 140ms ease;
}

.hunta-contact-submit:hover svg {
transform: translateX(2px);
}

/* ============================================================
CTA
============================================================ */

.hunta-contact-cta {
position: relative;
isolation: isolate;
overflow: hidden;
padding: clamp(3.5rem, 7vw, 5.5rem) 0;
border-top: 1px solid var(--hunta-border, #e5e7eb);
background: var(--hunta-surface-soft, #f9fafb);
}

.hunta-contact-cta__glow {
position: absolute;
z-index: -1;
top: -260px;
left: 50%;
width: 520px;
height: 520px;
border-radius: 50%;
background: var(--hunta-accent, #6366f1);
opacity: .07;
filter: blur(100px);
transform: translateX(-50%);
}

.hunta-contact-cta__inner {
max-width: 720px;
margin-inline: auto;
text-align: center;
}

.hunta-contact-cta__icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 3.2rem;
height: 3.2rem;
margin-bottom: 1rem;
border: 1px solid color-mix(
in srgb,
var(--hunta-accent, #6366f1) 18%,
var(--hunta-border, #e5e7eb)
);
border-radius: 14px;
background: color-mix(
in srgb,
var(--hunta-accent, #6366f1) 8%,
var(--hunta-surface, #fff)
);
color: var(--hunta-accent, #6366f1);
}

.hunta-contact-cta__icon svg {
width: 1.3rem;
height: 1.3rem;
}

.hunta-contact-cta h2 {
margin: 0;
color: var(--hunta-text, #111827);
font-size: clamp(1.8rem, 4vw, 2.7rem);
font-weight: 800;
letter-spacing: -.035em;
}

.hunta-contact-cta p {
max-width: 600px;
margin: .9rem auto 1.5rem;
color: var(--hunta-text-muted, #6b7280);
font-size: .95rem;
line-height: 1.7;
}

.hunta-contact-cta__button {
display: inline-flex;
align-items: center;
gap: .6rem;
min-height: 3rem;
padding: .75rem 1.25rem;
border-radius: 12px;
background: var(--hunta-accent, #6366f1);
color: #fff;
text-decoration: none;
font-size: .84rem;
font-weight: 750;
transition:
transform var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease),
box-shadow var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease);
}

.hunta-contact-cta__button:hover {
color: #fff;
transform: translateY(-2px);
box-shadow: 0 12px 28px color-mix(
in srgb,
var(--hunta-accent, #6366f1) 22%,
transparent
);
}

.hunta-contact-cta__button svg {
width: 1rem;
height: 1rem;
}

/* ============================================================
DARK THEME
Supports Hunta's data-theme system from app.blade.php.
============================================================ */

html[data-theme="dark"] .hunta-contact-page,
.dark .hunta-contact-page {
background: var(--hunta-bg, #090d14);
}

html[data-theme="dark"] .hunta-contact-section,
.dark .hunta-contact-section {
background: var(--hunta-bg, #090d14);
}

html[data-theme="dark"] .hunta-contact-info-card,
.dark .hunta-contact-info-card,
html[data-theme="dark"] .hunta-contact-form-card,
.dark .hunta-contact-form-card {
border-color: var(--hunta-border, rgba(255,255,255,.09));
background: var(--hunta-surface, #111722);
}

html[data-theme="dark"] .hunta-contact-info-note,
.dark .hunta-contact-info-note {
border-color: rgba(129,140,248,.16);
background: rgba(99,102,241,.06);
}

html[data-theme="dark"] .hunta-contact-input-wrap input,
.dark .hunta-contact-input-wrap input,
html[data-theme="dark"] .hunta-contact-textarea-wrap textarea,
.dark .hunta-contact-textarea-wrap textarea {
border-color: var(--hunta-border, rgba(255,255,255,.1));
background: var(--hunta-surface-soft, #0d131d);
}

html[data-theme="dark"] .hunta-contact-input-wrap input:focus,
.dark .hunta-contact-input-wrap input:focus,
html[data-theme="dark"] .hunta-contact-textarea-wrap textarea:focus,
.dark .hunta-contact-textarea-wrap textarea:focus {
background: var(--hunta-surface, #111722);
}

html[data-theme="dark"] .hunta-contact-cta,
.dark .hunta-contact-cta {
border-color: var(--hunta-border, rgba(255,255,255,.08));
background: var(--hunta-surface, #111722);
}

/* ============================================================
RESPONSIVE
============================================================ */

@media (max-width: 991.98px) {

   
.hunta-contact-grid {
    grid-template-columns: 1fr;
    gap: 3rem;
}

.hunta-contact-info {
    max-width: 760px;
    margin-inline: auto;
    width: 100%;
}

.hunta-contact-form-wrap {
    max-width: 760px;
    width: 100%;
    margin-inline: auto;
}
   

}

@media (max-width: 767.98px) {

   
.hunta-contact-hero {
    padding: 4rem 0 3.5rem;
}

.hunta-contact-hero__title {
    font-size: clamp(2.15rem, 10vw, 3rem);
}

.hunta-contact-section {
    padding: 3rem 0;
}

.hunta-contact-form__row {
    grid-template-columns: 1fr;
}

.hunta-contact-form__footer {
    align-items: stretch;
    flex-direction: column;
}

.hunta-contact-form__footer p {
    max-width: none;
}

.hunta-contact-submit {
    width: 100%;
}

.hunta-contact-cta {
    padding: 3.5rem 0;
}
   

}

@media (max-width: 479.98px) {

   
.hunta-contact-hero__eyebrow {
    font-size: .7rem;
}

.hunta-contact-form-card {
    padding: 1.1rem;
    border-radius: 18px;
}

.hunta-contact-info-card {
    padding: .9rem;
}

.hunta-contact-info-card__icon {
    width: 2.7rem;
    height: 2.7rem;
}
   

}

/* ============================================================
REDUCED MOTION
============================================================ */

@media (prefers-reduced-motion: reduce) {

 
.hunta-contact-info-card,
.hunta-contact-submit,
.hunta-contact-submit svg,
.hunta-contact-cta__button {
    transition: none;
}
 

}
/* ============================================================
HUNTA — ABOUT PAGE
about-modern.css

DEPENDS ON:

* app-modern.css

SCOPE:

* About page only
  ============================================================ */

/* ============================================================
PAGE
============================================================ */

.hunta-about-page {
overflow: hidden;
background: var(--hunta-bg, #f7f8fb);
color: var(--hunta-text, #111827);
}

/* ============================================================
HERO
============================================================ */

.hunta-about-hero {
position: relative;
isolation: isolate;
overflow: hidden;
padding: clamp(4.5rem, 8vw, 7rem) 0;
background:
radial-gradient(
circle at 20% 0%,
rgba(99, 102, 241, .2),
transparent 38%
),
radial-gradient(
circle at 85% 100%,
rgba(6, 182, 212, .13),
transparent 36%
),
var(--hunta-surface, #111827);
color: #fff;
}

.hunta-about-hero__inner {
position: relative;
z-index: 2;
max-width: 850px;
margin-inline: auto;
text-align: center;
}

.hunta-about-hero__glow {
position: absolute;
z-index: -1;
width: 430px;
height: 430px;
border-radius: 50%;
filter: blur(100px);
opacity: .2;
pointer-events: none;
}

.hunta-about-hero__glow--one {
top: -260px;
left: 5%;
background: #6366f1;
}

.hunta-about-hero__glow--two {
right: -100px;
bottom: -300px;
background: #06b6d4;
}

.hunta-about-hero__eyebrow {
display: inline-flex;
align-items: center;
gap: .55rem;
margin-bottom: 1.25rem;
padding: .5rem .85rem .5rem .55rem;
border: 1px solid rgba(255,255,255,.14);
border-radius: 999px;
background: rgba(255,255,255,.07);
color: rgba(255,255,255,.82);
font-size: .76rem;
font-weight: 750;
letter-spacing: .04em;
}

.hunta-about-hero__eyebrow-icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 1.8rem;
height: 1.8rem;
border-radius: 50%;
background: rgba(255,255,255,.1);
}

.hunta-about-hero__eyebrow-icon svg {
width: 1rem;
height: 1rem;
}

.hunta-about-hero__title {
margin: 0;
color: var(--hunta-title);
font-size: clamp(2.5rem, 6vw, 5rem);
font-weight: 850;
line-height: 1.02;
letter-spacing: -.055em;
}

.hunta-about-hero__description {
max-width: 720px;
margin: 1.35rem auto 0;
color: var(--hunta-text-muted, rgba(255,255,255,.75));
font-size: clamp(1rem, 1.8vw, 1.15rem);
line-height: 1.8;
}

/* ============================================================
SECTION COMMONS
============================================================ */

.hunta-about-section-eyebrow {
display: inline-block;
margin-bottom: .65rem;
color: var(--hunta-accent, #6366f1);
font-size: .72rem;
font-weight: 800;
letter-spacing: .09em;
text-transform: uppercase;
}

.hunta-about-section-heading {
max-width: 700px;
margin: 0 auto 3rem;
text-align: center;
}

.hunta-about-section-heading h2,
.hunta-about-mission__content h2,
.hunta-about-why__heading h2 {
margin: 0;
color: var(--hunta-text, #111827);
font-size: clamp(1.85rem, 4vw, 2.75rem);
font-weight: 820;
line-height: 1.1;
letter-spacing: -.04em;
}

.hunta-about-section-heading p {
margin: .9rem 0 0;
color: var(--hunta-text-muted, #6b7280);
font-size: .96rem;
line-height: 1.7;
}

/* ============================================================
MISSION
============================================================ */

.hunta-about-mission {
padding: clamp(4rem, 8vw, 7rem) 0;
}

.hunta-about-mission__grid {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(320px, .75fr);
gap: clamp(2.5rem, 7vw, 7rem);
align-items: center;
}

.hunta-about-mission__content {
max-width: 650px;
}

.hunta-about-mission__text {
margin-top: 1.25rem;
}

.hunta-about-mission__text p {
margin: 0 0 1rem;
color: var(--hunta-text-muted, #6b7280);
font-size: .98rem;
line-height: 1.85;
}

.hunta-about-mission__text p:last-child {
margin-bottom: 0;
}

/* ============================================================
INNOVATION CARD
============================================================ */

.hunta-about-innovation {
position: relative;
isolation: isolate;
overflow: hidden;
padding: clamp(2rem, 5vw, 3.25rem);
border: 1px solid var(--hunta-border, #e5e7eb);
border-radius: var(--hunta-radius-lg, 22px);
background: var(--hunta-surface, #fff);
box-shadow: var(--hunta-shadow-md, 0 14px 40px rgba(0,0,0,.07));
}

.hunta-about-innovation__pattern {
position: absolute;
z-index: -1;
top: -100px;
right: -100px;
width: 250px;
height: 250px;
border-radius: 50%;
background: var(--hunta-accent, #6366f1);
opacity: .07;
filter: blur(5px);
}

.hunta-about-innovation__icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 4rem;
height: 4rem;
margin-bottom: 1.5rem;
border-radius: 16px;
background: color-mix(
in srgb,
var(--hunta-accent, #6366f1) 10%,
transparent
);
color: var(--hunta-accent, #6366f1);
}

.hunta-about-innovation__icon svg {
width: 1.7rem;
height: 1.7rem;
}

.hunta-about-innovation__eyebrow {
display: block;
margin-bottom: .45rem;
color: var(--hunta-text-muted, #6b7280);
font-size: .7rem;
font-weight: 750;
letter-spacing: .08em;
text-transform: uppercase;
}

.hunta-about-innovation h3 {
margin: 0 0 .65rem;
color: var(--hunta-text, #111827);
font-size: 1.45rem;
font-weight: 800;
letter-spacing: -.025em;
}

.hunta-about-innovation p {
margin: 0;
color: var(--hunta-text-muted, #6b7280);
font-size: .88rem;
line-height: 1.7;
}

/* ============================================================
VALUES
============================================================ */

.hunta-about-values {
padding: clamp(4rem, 8vw, 7rem) 0;
border-top: 1px solid var(--hunta-border, #e5e7eb);
border-bottom: 1px solid var(--hunta-border, #e5e7eb);
background: var(--hunta-surface-soft, #f9fafb);
}

.hunta-about-values__grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 1rem;
}

.hunta-about-value-card {
position: relative;
overflow: hidden;
min-height: 280px;
padding: 1.75rem;
border: 1px solid var(--hunta-border, #e5e7eb);
border-radius: var(--hunta-radius-lg, 22px);
background: var(--hunta-surface, #fff);
box-shadow: var(--hunta-shadow-sm, 0 4px 18px rgba(0,0,0,.04));
transition:
transform var(--hunta-duration, 180ms) var(--hunta-ease, ease),
border-color var(--hunta-duration, 180ms) var(--hunta-ease, ease),
box-shadow var(--hunta-duration, 180ms) var(--hunta-ease, ease);
}

.hunta-about-value-card:hover {
transform: translateY(-4px);
border-color: var(--hunta-border-strong, #d1d5db);
box-shadow: var(--hunta-shadow-md, 0 14px 35px rgba(0,0,0,.08));
}

.hunta-about-value-card__icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 3.1rem;
height: 3.1rem;
margin-bottom: 2rem;
border-radius: 13px;
background: color-mix(
in srgb,
var(--hunta-accent, #6366f1) 9%,
transparent
);
color: var(--hunta-accent, #6366f1);
}

.hunta-about-value-card__icon svg {
width: 1.3rem;
height: 1.3rem;
}

.hunta-about-value-card__number {
position: absolute;
top: 1.5rem;
right: 1.5rem;
color: var(--hunta-text-muted, #9ca3af);
font-size: .68rem;
font-weight: 800;
letter-spacing: .08em;
opacity: .65;
}

.hunta-about-value-card h3 {
margin: 0 0 .65rem;
color: var(--hunta-text, #111827);
font-size: 1.15rem;
font-weight: 800;
}

.hunta-about-value-card p {
margin: 0;
color: var(--hunta-text-muted, #6b7280);
font-size: .86rem;
line-height: 1.7;
}

/* ============================================================
WHY CHOOSE US
============================================================ */

.hunta-about-why {
padding: clamp(4rem, 8vw, 7rem) 0;
}

.hunta-about-why__grid {
display: grid;
grid-template-columns: minmax(260px, .65fr) minmax(0, 1.35fr);
gap: clamp(2.5rem, 7vw, 7rem);
align-items: start;
}

.hunta-about-why__heading {
position: sticky;
top: 2rem;
}

.hunta-about-why__heading h2 {
max-width: 360px;
}

.hunta-about-why__accent {
display: flex;
gap: .3rem;
margin-top: 1.5rem;
}

.hunta-about-why__accent span {
display: block;
width: 2.3rem;
height: 3px;
border-radius: 999px;
background: var(--hunta-accent, #6366f1);
}

.hunta-about-why__accent span:nth-child(2) {
width: 1rem;
opacity: .55;
}

.hunta-about-why__accent span:nth-child(3) {
width: .45rem;
opacity: .3;
}

.hunta-about-why__list {
display: grid;
gap: .75rem;
}

.hunta-about-why-item {
display: flex;
align-items: flex-start;
gap: 1rem;
padding: 1.2rem;
border: 1px solid transparent;
border-radius: 16px;
transition:
background var(--hunta-duration, 180ms) var(--hunta-ease, ease),
border-color var(--hunta-duration, 180ms) var(--hunta-ease, ease),
transform var(--hunta-duration, 180ms) var(--hunta-ease, ease);
}

.hunta-about-why-item:hover {
border-color: var(--hunta-border, #e5e7eb);
background: var(--hunta-surface-soft, #f9fafb);
transform: translateX(3px);
}

.hunta-about-why-item__icon {
flex: 0 0 auto;
display: inline-flex;
align-items: center;
justify-content: center;
width: 2.3rem;
height: 2.3rem;
border-radius: 10px;
background: rgba(16,185,129,.1);
color: var(--hunta-success, #10b981);
}

.hunta-about-why-item__icon svg {
width: 1rem;
height: 1rem;
}

.hunta-about-why-item h3 {
margin: .1rem 0 .3rem;
color: var(--hunta-text, #111827);
font-size: .95rem;
font-weight: 800;
}

.hunta-about-why-item p {
margin: 0;
color: var(--hunta-text-muted, #6b7280);
font-size: .84rem;
line-height: 1.65;
}

/* ============================================================
STATISTICS
============================================================ */

.hunta-about-stats {
padding: 0 0 clamp(4rem, 8vw, 7rem);
}

.hunta-about-stats__card {
display: grid;
grid-template-columns: repeat(4, minmax(0, 1fr));
overflow: hidden;
border: 1px solid var(--hunta-border, #e5e7eb);
border-radius: var(--hunta-radius-lg, 22px);
background: var(--hunta-surface, #fff);
box-shadow: var(--hunta-shadow-sm, 0 4px 18px rgba(0,0,0,.04));
}

.hunta-about-stat {
position: relative;
padding: 2rem 1.25rem;
text-align: center;
}

.hunta-about-stat + .hunta-about-stat {
border-left: 1px solid var(--hunta-border, #e5e7eb);
}

.hunta-about-stat strong {
display: block;
color: var(--hunta-accent, #6366f1);
font-size: clamp(1.7rem, 4vw, 2.5rem);
font-weight: 850;
letter-spacing: -.045em;
line-height: 1;
}

.hunta-about-stat span {
display: block;
margin-top: .55rem;
color: var(--hunta-text-muted, #6b7280);
font-size: .76rem;
font-weight: 650;
}

/* ============================================================
CTA
============================================================ */

.hunta-about-cta {
position: relative;
isolation: isolate;
overflow: hidden;
padding: clamp(4rem, 8vw, 6rem) 0;
border-top: 1px solid var(--hunta-border, #e5e7eb);
background: var(--hunta-surface-soft, #f9fafb);
}

.hunta-about-cta__glow {
position: absolute;
z-index: -1;
top: -250px;
left: 50%;
width: 520px;
height: 520px;
border-radius: 50%;
background: var(--hunta-accent, #6366f1);
opacity: .07;
filter: blur(100px);
transform: translateX(-50%);
}

.hunta-about-cta__inner {
max-width: 720px;
margin-inline: auto;
text-align: center;
}

.hunta-about-cta__icon {
display: inline-flex;
align-items: center;
justify-content: center;
width: 3.25rem;
height: 3.25rem;
margin-bottom: 1rem;
border: 1px solid color-mix(
in srgb,
var(--hunta-accent, #6366f1) 18%,
var(--hunta-border, #e5e7eb)
);
border-radius: 14px;
background: color-mix(
in srgb,
var(--hunta-accent, #6366f1) 8%,
var(--hunta-surface, #fff)
);
color: var(--hunta-accent, #6366f1);
}

.hunta-about-cta__icon svg {
width: 1.35rem;
height: 1.35rem;
}

.hunta-about-cta h2 {
margin: 0;
color: var(--hunta-text, #111827);
font-size: clamp(1.9rem, 4vw, 2.8rem);
font-weight: 830;
letter-spacing: -.045em;
}

.hunta-about-cta p {
max-width: 600px;
margin: .9rem auto 1.5rem;
color: var(--hunta-text-muted, #6b7280);
font-size: .95rem;
line-height: 1.7;
}

.hunta-about-cta__button {
display: inline-flex;
align-items: center;
gap: .6rem;
min-height: 3rem;
padding: .75rem 1.3rem;
border-radius: 12px;
background: var(--hunta-accent, #6366f1);
color: #fff;
text-decoration: none;
font-size: .84rem;
font-weight: 750;
transition:
transform var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease),
box-shadow var(--hunta-duration-fast, 140ms) var(--hunta-ease, ease);
}

.hunta-about-cta__button:hover {
color: #fff;
transform: translateY(-2px);
box-shadow: 0 12px 28px color-mix(
in srgb,
var(--hunta-accent, #6366f1) 24%,
transparent
);
}

.hunta-about-cta__button svg {
width: 1rem;
height: 1rem;
}

/* ============================================================
DARK THEME
============================================================ */

html[data-theme="dark"] .hunta-about-page,
.dark .hunta-about-page {
background: var(--hunta-bg, #090d14);
}

html[data-theme="dark"] .hunta-about-values,
.dark .hunta-about-values {
border-color: var(--hunta-border, rgba(255,255,255,.08));
background: var(--hunta-surface-soft, #0d131d);
}

html[data-theme="dark"] .hunta-about-innovation,
.dark .hunta-about-innovation,
html[data-theme="dark"] .hunta-about-value-card,
.dark .hunta-about-value-card,
html[data-theme="dark"] .hunta-about-stats__card,
.dark .hunta-about-stats__card {
border-color: var(--hunta-border, rgba(255,255,255,.09));
background: var(--hunta-surface, #111722);
}

html[data-theme="dark"] .hunta-about-why-item:hover,
.dark .hunta-about-why-item:hover {
border-color: var(--hunta-border, rgba(255,255,255,.08));
background: var(--hunta-surface-soft, #0d131d);
}

html[data-theme="dark"] .hunta-about-stat + .hunta-about-stat,
.dark .hunta-about-stat + .hunta-about-stat {
border-color: var(--hunta-border, rgba(255,255,255,.08));
}

html[data-theme="dark"] .hunta-about-cta,
.dark .hunta-about-cta {
border-color: var(--hunta-border, rgba(255,255,255,.08));
background: var(--hunta-surface, #111722);
}

/* ============================================================
RESPONSIVE
============================================================ */

@media (max-width: 991.98px) {

       
.hunta-about-mission__grid {
    grid-template-columns: 1fr;
    gap: 2.5rem;
}

.hunta-about-mission__content {
    max-width: 760px;
}

.hunta-about-values__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hunta-about-value-card:last-child {
    grid-column: 1 / -1;
    max-width: calc(50% - .5rem);
    width: 100%;
    margin-inline: auto;
}

.hunta-about-why__grid {
    grid-template-columns: 1fr;
    gap: 2.5rem;
}

.hunta-about-why__heading {
    position: static;
}

.hunta-about-why__heading h2 {
    max-width: none;
}
       

}

@media (max-width: 767.98px) {

       
.hunta-about-hero {
    padding: 4rem 0;
}

.hunta-about-hero__title {
    font-size: clamp(2.25rem, 11vw, 3.25rem);
}

.hunta-about-mission,
.hunta-about-values,
.hunta-about-why {
    padding: 3.5rem 0;
}

.hunta-about-values__grid {
    grid-template-columns: 1fr;
}

.hunta-about-value-card {
    min-height: auto;
}

.hunta-about-value-card:last-child {
    grid-column: auto;
    max-width: none;
}

.hunta-about-stats {
    padding-bottom: 3.5rem;
}

.hunta-about-stats__card {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hunta-about-stat {
    padding: 1.5rem 1rem;
}

.hunta-about-stat:nth-child(3) {
    border-top: 1px solid var(--hunta-border, #e5e7eb);
}

.hunta-about-stat:nth-child(4) {
    border-top: 1px solid var(--hunta-border, #e5e7eb);
}

.hunta-about-stat:nth-child(2n + 1) {
    border-left: 0;
}

.hunta-about-stat:nth-child(2n) {
    border-left: 1px solid var(--hunta-border, #e5e7eb);
}
       

}

@media (max-width: 479.98px) {

       
.hunta-about-hero__eyebrow {
    font-size: .69rem;
}

.hunta-about-innovation {
    padding: 1.5rem;
}

.hunta-about-value-card {
    padding: 1.4rem;
}

.hunta-about-why-item {
    padding: .9rem;
}
       

}

/* ============================================================
DARK MOBILE BORDER CORRECTION
============================================================ */

@media (max-width: 767.98px) {

       
html[data-theme="dark"] .hunta-about-stat:nth-child(3),
html[data-theme="dark"] .hunta-about-stat:nth-child(4),
.dark .hunta-about-stat:nth-child(3),
.dark .hunta-about-stat:nth-child(4) {
    border-color: var(--hunta-border, rgba(255,255,255,.08));
}
       

}

/* ============================================================
REDUCED MOTION
============================================================ */

@media (prefers-reduced-motion: reduce) {

       
.hunta-about-value-card,
.hunta-about-why-item,
.hunta-about-cta__button {
    transition: none;
}
       

}
 
/* ============================================================
   HUNTA — TOOL PRIVACY SECTION
   ============================================================ */

.hunta-privacy-section {
    --privacy-accent: var(--hunta-accent, #6366f1);
    --privacy-text: var(--hunta-title, #0f172a);
    --privacy-text-soft: var(--hunta-text-soft, #475569);
    --privacy-muted: var(--hunta-text-muted, #64748b);
    --privacy-surface: var(--hunta-surface, #ffffff);
    --privacy-surface-soft: var(--hunta-surface-soft, #f8fafc);
    --privacy-border: var(--hunta-border, #e2e8f0);
    --privacy-success: var(--hunta-success, #10b981);
}


/* ============================================================
   CARD
   ============================================================ */

.hunta-privacy-card {
    position: relative;
    overflow: hidden;

    background: var(--privacy-surface);
    border: 1px solid var(--privacy-border);
    border-radius: var(--hunta-radius-lg, 1.25rem);

    box-shadow: var(--hunta-shadow-sm, 0 8px 30px rgba(15, 23, 42, 0.06));
}


/* ============================================================
   HEADER
   ============================================================ */

.hunta-privacy-header {
    position: relative;
    padding: clamp(1.5rem, 4vw, 2.75rem);
    padding-bottom: 1.5rem;
}

.hunta-privacy-heading {
    max-width: 760px;
}


/* Eyebrow */

.hunta-privacy-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    color: var(--privacy-accent);

    font-size: 0.75rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hunta-privacy-eyebrow__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.75rem;
    height: 1.75rem;

    border: 1px solid color-mix(
        in srgb,
        var(--privacy-accent) 22%,
        transparent
    );

    border-radius: 0.55rem;

    background: color-mix(
        in srgb,
        var(--privacy-accent) 9%,
        transparent
    );
}

.hunta-privacy-eyebrow__icon svg {
    width: 0.9rem;
    height: 0.9rem;
    stroke-width: 2;
}


/* Title */

.hunta-privacy-title {
    margin: 0.8rem 0 0;

    color: var(--privacy-text);

    font-size: clamp(1.5rem, 2.5vw, 2rem);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.035em;
}


/* Description */

.hunta-privacy-description {
    max-width: 680px;

    margin: 0.75rem 0 0;

    color: var(--privacy-muted);

    font-size: 0.98rem;
    line-height: 1.7;
}


/* ============================================================
   BODY
   ============================================================ */

.hunta-privacy-body {
    padding: 0 clamp(1.5rem, 4vw, 2.75rem) clamp(1.5rem, 4vw, 2.75rem);
}


/* ============================================================
   GRID
   ============================================================ */

.hunta-privacy-grid {
    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 1rem;
}


/* ============================================================
   PRIVACY ITEM
   ============================================================ */

.hunta-privacy-item {
    position: relative;

    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: start;

    gap: 1rem;

    min-width: 0;
    padding: 1.25rem;

    border: 1px solid var(--privacy-border);
    border-radius: var(--hunta-radius-md, 0.9rem);

    background: var(--privacy-surface-soft);

    transition:
        transform var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        border-color var(--hunta-duration, 220ms) var(--hunta-ease, ease),
        box-shadow var(--hunta-duration, 220ms) var(--hunta-ease, ease);
}

.hunta-privacy-item:hover {
    transform: translateY(-2px);

    border-color: color-mix(
        in srgb,
        var(--privacy-accent) 28%,
        var(--privacy-border)
    );

    box-shadow: var(
        --hunta-shadow-sm,
        0 8px 24px rgba(15, 23, 42, 0.06)
    );
}


/* ============================================================
   ICON
   ============================================================ */

.hunta-privacy-item__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    width: 3rem;
    height: 3rem;

    border: 1px solid color-mix(
        in srgb,
        var(--privacy-accent) 18%,
        var(--privacy-border)
    );

    border-radius: 0.8rem;

    color: var(--privacy-accent);

    background: color-mix(
        in srgb,
        var(--privacy-accent) 9%,
        var(--privacy-surface)
    );
}

.hunta-privacy-item__icon svg {
    width: 1.35rem;
    height: 1.35rem;
    stroke-width: 1.9;
}


/* ============================================================
   CONTENT
   ============================================================ */

.hunta-privacy-item__content {
    min-width: 0;
}

.hunta-privacy-item__title {
    margin: 0;

    color: var(--privacy-text);

    font-size: 1rem;
    font-weight: 750;
    line-height: 1.35;
    letter-spacing: -0.015em;
}

.hunta-privacy-item__description {
    margin: 0.45rem 0 0;

    color: var(--privacy-muted);

    font-size: 0.9rem;
    line-height: 1.65;
}


/* ============================================================
   STATUS CHECK
   ============================================================ */

.hunta-privacy-item__status {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.7rem;
    height: 1.7rem;

    margin-top: 0.05rem;

    border-radius: 50%;

    color: var(--privacy-success);

    background: color-mix(
        in srgb,
        var(--privacy-success) 10%,
        var(--privacy-surface)
    );
}

.hunta-privacy-item__status svg {
    width: 0.85rem;
    height: 0.85rem;
    stroke-width: 2.5;
}


/* ============================================================
   DARK THEME
   ============================================================ */

html[data-theme="dark"] .hunta-privacy-section {
    --privacy-surface: var(--hunta-surface, #0f172a);
    --privacy-surface-soft: var(--hunta-surface-soft, #111c2e);
    --privacy-border: var(--hunta-border, #243247);
    --privacy-text: var(--hunta-text, #f8fafc);
    --privacy-text-soft: var(--hunta-text-soft, #cbd5e1);
    --privacy-muted: var(--hunta-text-muted, #94a3b8);
}

html[data-theme="dark"] .hunta-privacy-card {
    box-shadow: var(
        --hunta-shadow-sm,
        0 12px 40px rgba(0, 0, 0, 0.2)
    );
}

html[data-theme="dark"] .hunta-privacy-item {
    background: var(--privacy-surface-soft);
}

html[data-theme="dark"] .hunta-privacy-item:hover {
    border-color: color-mix(
        in srgb,
        var(--privacy-accent) 38%,
        var(--privacy-border)
    );
}


/* ============================================================
   RTL
   ============================================================ */

[dir="rtl"] .hunta-privacy-item {
    text-align: right;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 767.98px) {

    .hunta-privacy-header {
        padding: 1.35rem;
        padding-bottom: 1.25rem;
    }

    .hunta-privacy-body {
        padding: 0 1.35rem 1.35rem;
    }

    .hunta-privacy-grid {
        grid-template-columns: 1fr;
        gap: 0.85rem;
    }

    .hunta-privacy-item {
        padding: 1rem;
        gap: 0.85rem;
    }

    .hunta-privacy-item__icon {
        width: 2.75rem;
        height: 2.75rem;
    }

    .hunta-privacy-item__description {
        font-size: 0.875rem;
    }
}


@media (max-width: 479.98px) {

    .hunta-privacy-item {
        grid-template-columns: auto minmax(0, 1fr);
    }

    .hunta-privacy-item__status {
        display: none;
    }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-privacy-item {
        transition: none;
    }

    .hunta-privacy-item:hover {
        transform: none;
    }

}
 

 
/* ============================================================
   HUNTA — DASHBOARD DESIGN
   dashboard-modern.css

   SCOPE:
   - Dashboard only
   - No global Bootstrap overrides
   - Dark/light theme compatible
   ============================================================ */


/* ============================================================
   PAGE FOUNDATION
   ============================================================ */

.hunta-dashboard {
    --dashboard-accent: var(--hunta-accent, #6366f1);
    --dashboard-primary: var(--hunta-primary, #4f46e5);

    --dashboard-text: var(--hunta-text, #0f172a);
    --dashboard-text-soft: var(--hunta-text-soft, #334155);
    --dashboard-muted: var(--hunta-text-muted, #64748b);

    --dashboard-surface: var(--hunta-surface, #ffffff);
    --dashboard-surface-soft: var(--hunta-surface-soft, #f8fafc);

    --dashboard-border: var(--hunta-border, #e2e8f0);
    --dashboard-border-strong: var(--hunta-border-strong, #cbd5e1);

    --dashboard-success: var(--hunta-success, #10b981);
    --dashboard-danger: var(--hunta-danger, #ef4444);

    width: 100%;
    max-width: 1480px;
    margin: 0 auto;

    padding: clamp(2rem, 4vw, 3.5rem) 1rem clamp(3rem, 6vw, 5rem);

    color: var(--dashboard-text);
}


/* ============================================================
   HEADER
   ============================================================ */

.hunta-dashboard__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 2rem;

    margin-bottom: 2rem;
}

.hunta-dashboard__heading {
    min-width: 0;
}

.hunta-dashboard__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    color: var(--dashboard-accent);

    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.hunta-dashboard__eyebrow-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.8rem;
    height: 1.8rem;

    border: 1px solid color-mix(
        in srgb,
        var(--dashboard-accent) 20%,
        var(--dashboard-border)
    );

    border-radius: 0.55rem;

    background: color-mix(
        in srgb,
        var(--dashboard-accent) 8%,
        var(--dashboard-surface)
    );
}

.hunta-dashboard__eyebrow-icon svg {
    width: 0.9rem;
    height: 0.9rem;
}

.hunta-dashboard__title {
    margin: 0.7rem 0 0;

    color: var(--dashboard-text);

    font-size: clamp(1.8rem, 3vw, 2.5rem);
    font-weight: 850;
    line-height: 1.08;
    letter-spacing: -0.045em;
}

.hunta-dashboard__subtitle {
    max-width: 650px;

    margin: 0.6rem 0 0;

    color: var(--dashboard-muted);

    font-size: 0.95rem;
    line-height: 1.65;
}

.hunta-dashboard__tools-button {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;

    padding: 0.75rem 1rem;

    border: 1px solid var(--dashboard-border);
    border-radius: 0.75rem;

    color: var(--dashboard-text-soft);
    background: var(--dashboard-surface);

    font-size: 0.85rem;
    font-weight: 700;
    text-decoration: none;

    box-shadow: var(
        --hunta-shadow-sm,
        0 4px 18px rgba(15, 23, 42, 0.05)
    );

    transition:
        color 180ms ease,
        border-color 180ms ease,
        transform 180ms ease,
        box-shadow 180ms ease;
}

.hunta-dashboard__tools-button svg {
    width: 1rem;
    height: 1rem;
}

.hunta-dashboard__tools-button svg:last-child {
    width: 0.85rem;
    height: 0.85rem;
    opacity: 0.6;
}

.hunta-dashboard__tools-button:hover {
    color: var(--dashboard-accent);
    border-color: color-mix(
        in srgb,
        var(--dashboard-accent) 35%,
        var(--dashboard-border)
    );

    transform: translateY(-1px);

    box-shadow: var(
        --hunta-shadow-md,
        0 10px 30px rgba(15, 23, 42, 0.08)
    );
}


/* ============================================================
   THREE-COLUMN GRID
   ============================================================ */

.hunta-dashboard__grid {
    display: grid;

    grid-template-columns:
        minmax(220px, 0.82fr)
        minmax(420px, 1.55fr)
        minmax(220px, 0.82fr);

    gap: 1.25rem;

    align-items: start;
}

.hunta-dashboard__column {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;

    min-width: 0;
}

.hunta-dashboard__column--main {
    min-width: 0;
}


/* ============================================================
   BASE CARD
   ============================================================ */

.hunta-dashboard-card {
    position: relative;
    overflow: hidden;

    border: 1px solid var(--dashboard-border);
    border-radius: var(--hunta-radius-lg, 1.1rem);

    background: var(--dashboard-surface);

    box-shadow: var(
        --hunta-shadow-sm,
        0 6px 24px rgba(15, 23, 42, 0.055)
    );
}

.hunta-dashboard-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;

    padding: 1.25rem 1.25rem 0;
}

.hunta-dashboard-card__heading {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;

    min-width: 0;
}

.hunta-dashboard-card__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    width: 2.5rem;
    height: 2.5rem;

    border: 1px solid color-mix(
        in srgb,
        var(--dashboard-accent) 18%,
        var(--dashboard-border)
    );

    border-radius: 0.7rem;

    color: var(--dashboard-accent);

    background: color-mix(
        in srgb,
        var(--dashboard-accent) 8%,
        var(--dashboard-surface)
    );
}

.hunta-dashboard-card__icon svg {
    width: 1.1rem;
    height: 1.1rem;
    stroke-width: 2;
}

.hunta-dashboard-card__icon--warning {
    color: #f59e0b;

    border-color: color-mix(
        in srgb,
        #f59e0b 18%,
        var(--dashboard-border)
    );

    background: color-mix(
        in srgb,
        #f59e0b 8%,
        var(--dashboard-surface)
    );
}

.hunta-dashboard-card__title {
    margin: 0;

    color: var(--dashboard-text);

    font-size: 0.98rem;
    font-weight: 800;
    line-height: 1.3;
}

.hunta-dashboard-card__description {
    margin: 0.3rem 0 0;

    color: var(--dashboard-muted);

    font-size: 0.76rem;
    line-height: 1.5;
}

.hunta-dashboard-card__body {
    padding: 1.25rem;
}

.hunta-dashboard-card__simple-heading {
    display: flex;
    align-items: center;
    gap: 0.7rem;

    margin-bottom: 1.25rem;
}


/* ============================================================
   STATUS
   ============================================================ */

.hunta-dashboard-status {
    display: inline-flex;
    align-items: center;

    flex: 0 0 auto;

    padding: 0.45rem 0.7rem;

    border-radius: 999px;

    font-size: 0.7rem;
    font-weight: 800;
    white-space: nowrap;
}

.hunta-dashboard-status--primary {
    color: var(--dashboard-accent);

    background: color-mix(
        in srgb,
        var(--dashboard-accent) 9%,
        var(--dashboard-surface)
    );
}


/* ============================================================
   USAGE
   ============================================================ */

.hunta-usage-progress {
    margin-top: 1.25rem;
}

.hunta-usage-progress__track {
    height: 0.6rem;

    overflow: hidden;

    border-radius: 999px;

    background: color-mix(
        in srgb,
        var(--dashboard-border-strong) 55%,
        var(--dashboard-surface)
    );
}

.hunta-usage-progress__bar {
    height: 100%;

    border-radius: inherit;

    background: linear-gradient(
        90deg,
        var(--dashboard-primary),
        var(--dashboard-accent)
    );

    transition: width 500ms ease;
}

.hunta-usage-progress__meta {
    display: flex;
    justify-content: space-between;
    gap: 1rem;

    margin-top: 0.55rem;

    color: var(--dashboard-muted);

    font-size: 0.7rem;
    font-weight: 650;
}

.hunta-usage-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);

    margin-top: 1.35rem;

    border-top: 1px solid var(--dashboard-border);
}

.hunta-usage-stat {
    padding: 1rem 0.5rem 0;

    text-align: center;
}

.hunta-usage-stat + .hunta-usage-stat {
    border-left: 1px solid var(--dashboard-border);
}

.hunta-usage-stat strong {
    display: block;

    color: var(--dashboard-text);

    font-size: 1.15rem;
    font-weight: 800;
}

.hunta-usage-stat span {
    display: block;

    margin-top: 0.2rem;

    color: var(--dashboard-muted);

    font-size: 0.68rem;
}


/* ============================================================
   UNLIMITED
   ============================================================ */

.hunta-unlimited {
    padding: 1rem 0 0;

    text-align: center;
}

.hunta-unlimited__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 4rem;
    height: 4rem;

    margin-bottom: 0.8rem;

    border-radius: 1rem;

    color: var(--dashboard-accent);

    background: color-mix(
        in srgb,
        var(--dashboard-accent) 9%,
        var(--dashboard-surface)
    );
}

.hunta-unlimited__icon svg {
    width: 2rem;
    height: 2rem;
}

.hunta-unlimited h3 {
    margin: 0;

    color: var(--dashboard-text);

    font-size: 1rem;
    font-weight: 800;
}

.hunta-unlimited p {
    max-width: 260px;

    margin: 0.45rem auto 0;

    color: var(--dashboard-muted);

    font-size: 0.78rem;
    line-height: 1.6;
}


/* ============================================================
   ACCOUNT
   ============================================================ */

.hunta-account-card__body {
    padding: 1.5rem;

    text-align: center;
}

.hunta-account-avatar {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 4.25rem;
    height: 4.25rem;

    margin: 0 auto 0.85rem;

    border: 3px solid var(--dashboard-surface);

    border-radius: 50%;

    color: #ffffff;

    background: linear-gradient(
        135deg,
        var(--dashboard-primary),
        var(--dashboard-accent)
    );

    font-size: 1.4rem;
    font-weight: 850;

    box-shadow:
        0 0 0 1px color-mix(
            in srgb,
            var(--dashboard-accent) 20%,
            var(--dashboard-border)
        ),
        0 8px 24px color-mix(
            in srgb,
            var(--dashboard-accent) 18%,
            transparent
        );
}

.hunta-account-name {
    margin: 0;

    color: var(--dashboard-text);

    font-size: 1rem;
    font-weight: 800;
}

.hunta-account-email {
    margin: 0.3rem 0 0;

    color: var(--dashboard-muted);

    font-size: 0.75rem;

    overflow-wrap: anywhere;
}

.hunta-verification-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;

    margin-top: 0.85rem;
    padding: 0.4rem 0.65rem;

    border-radius: 999px;

    font-size: 0.68rem;
    font-weight: 750;
}

.hunta-verification-badge svg {
    width: 0.85rem;
    height: 0.85rem;
}

.hunta-verification-badge--verified {
    color: var(--dashboard-success);

    background: color-mix(
        in srgb,
        var(--dashboard-success) 9%,
        var(--dashboard-surface)
    );
}

.hunta-verification-badge--pending {
    color: #b45309;

    background: color-mix(
        in srgb,
        #f59e0b 11%,
        var(--dashboard-surface)
    );
}

.hunta-account-meta {
    display: grid;
    grid-template-columns: 1fr 1fr;

    margin-top: 1.35rem;

    padding-top: 1.1rem;

    border-top: 1px solid var(--dashboard-border);
}

.hunta-account-meta > div + div {
    border-left: 1px solid var(--dashboard-border);
}

.hunta-account-meta span {
    display: block;

    color: var(--dashboard-muted);

    font-size: 0.65rem;
}

.hunta-account-meta strong {
    display: block;

    margin-top: 0.25rem;

    color: var(--dashboard-text);

    font-size: 0.75rem;
    font-weight: 750;
}


/* ============================================================
   BUTTONS
   ============================================================ */

.hunta-dashboard-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;

    min-height: 2.65rem;

    padding: 0.65rem 1rem;

    border-radius: 0.7rem;

    font-size: 0.78rem;
    font-weight: 750;

    text-decoration: none;

    transition:
        transform 180ms ease,
        border-color 180ms ease,
        background 180ms ease,
        color 180ms ease,
        box-shadow 180ms ease;
}

.hunta-dashboard-button svg {
    width: 1rem;
    height: 1rem;
}

.hunta-dashboard-button--outline {
    width: 100%;
    margin-top: 1.25rem;

    border: 1px solid var(--dashboard-border-strong);

    color: var(--dashboard-text-soft);

    background: transparent;
}

.hunta-dashboard-button--outline:hover {
    color: var(--dashboard-accent);

    border-color: color-mix(
        in srgb,
        var(--dashboard-accent) 35%,
        var(--dashboard-border)
    );

    background: color-mix(
        in srgb,
        var(--dashboard-accent) 5%,
        transparent
    );

    transform: translateY(-1px);
}

.hunta-dashboard-button--primary {
    border: 1px solid var(--dashboard-primary);

    color: #ffffff;

    background: var(--dashboard-primary);

    box-shadow: 0 5px 18px color-mix(
        in srgb,
        var(--dashboard-primary) 20%,
        transparent
    );
}

.hunta-dashboard-button--primary:hover {
    color: #ffffff;

    transform: translateY(-1px);

    box-shadow: 0 8px 24px color-mix(
        in srgb,
        var(--dashboard-primary) 27%,
        transparent
    );
}

.hunta-dashboard-button--full {
    width: 100%;
    margin-top: 1.25rem;
}


/* ============================================================
   ACTIVITY
   ============================================================ */

.hunta-activity-list {
    padding: 1rem 1.25rem 1.25rem;
}

.hunta-activity-item {
    display: flex;
    align-items: flex-start;
    gap: 0.9rem;

    padding: 1rem 0;

    border-bottom: 1px solid var(--dashboard-border);
}

.hunta-activity-item:first-child {
    padding-top: 0.5rem;
}

.hunta-activity-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.hunta-activity-item__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    width: 2.25rem;
    height: 2.25rem;

    border-radius: 0.7rem;

    color: var(--dashboard-success);

    background: color-mix(
        in srgb,
        var(--dashboard-success) 9%,
        var(--dashboard-surface)
    );
}

.hunta-activity-item__icon svg {
    width: 1rem;
    height: 1rem;
    stroke-width: 2.5;
}

.hunta-activity-item__content {
    min-width: 0;
    flex: 1;
}

.hunta-activity-item__content h3 {
    margin: 0;

    color: var(--dashboard-text);

    font-size: 0.82rem;
    font-weight: 750;
}

.hunta-activity-item__content p {
    margin: 0.25rem 0 0;

    color: var(--dashboard-muted);

    font-size: 0.72rem;
}

.hunta-activity-item__content time {
    display: block;

    margin-top: 0.2rem;

    color: var(--dashboard-muted);

    font-size: 0.65rem;
}

.hunta-activity-status {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;

    flex: 0 0 auto;

    padding: 0.35rem 0.55rem;

    border-radius: 999px;

    color: var(--dashboard-success);

    background: color-mix(
        in srgb,
        var(--dashboard-success) 8%,
        var(--dashboard-surface)
    );

    font-size: 0.62rem;
    font-weight: 750;
}

.hunta-activity-status svg {
    width: 0.75rem;
    height: 0.75rem;
}


/* ============================================================
   EMPTY STATES
   ============================================================ */

.hunta-empty-state {
    padding: 2.5rem 1rem;

    text-align: center;
}

.hunta-empty-state--compact {
    padding: 1.5rem 0.5rem;
}

.hunta-empty-state__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 3.5rem;
    height: 3.5rem;

    margin-bottom: 0.85rem;

    border-radius: 0.9rem;

    color: var(--dashboard-muted);

    background: var(--dashboard-surface-soft);
}

.hunta-empty-state__icon svg {
    width: 1.5rem;
    height: 1.5rem;
}

.hunta-empty-state h3 {
    margin: 0;

    color: var(--dashboard-text);

    font-size: 0.95rem;
    font-weight: 800;
}

.hunta-empty-state p {
    max-width: 400px;

    margin: 0.45rem auto 1rem;

    color: var(--dashboard-muted);

    font-size: 0.75rem;
    line-height: 1.6;
}


/* ============================================================
   MEMBERSHIP
   ============================================================ */

.hunta-membership-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
}

.hunta-membership-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;

    color: var(--dashboard-accent);

    font-size: 0.67rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.hunta-membership-eyebrow svg {
    width: 0.8rem;
    height: 0.8rem;
}

.hunta-membership-title {
    margin: 0.35rem 0 0;

    color: var(--dashboard-text);

    font-size: 1.2rem;
    font-weight: 850;
    letter-spacing: -0.025em;
}

.hunta-membership-description {
    max-width: 600px;

    margin: 0.35rem 0 0;

    color: var(--dashboard-muted);

    font-size: 0.76rem;
    line-height: 1.6;
}

.hunta-membership-status {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;

    padding: 0.4rem 0.65rem;

    border-radius: 999px;

    font-size: 0.65rem;
    font-weight: 800;
    white-space: nowrap;
}

.hunta-membership-status svg {
    width: 0.8rem;
    height: 0.8rem;
}

.hunta-membership-status--active {
    color: var(--dashboard-success);

    background: color-mix(
        in srgb,
        var(--dashboard-success) 9%,
        var(--dashboard-surface)
    );
}

.hunta-membership-status--free {
    color: var(--dashboard-muted);

    background: var(--dashboard-surface-soft);
}

.hunta-membership-divider {
    height: 1px;

    margin: 1.25rem 0;

    background: var(--dashboard-border);
}

.hunta-membership-features {
    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 0.75rem 1.25rem;
}

.hunta-membership-feature {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;

    color: var(--dashboard-text-soft);

    font-size: 0.76rem;
    line-height: 1.45;
}

.hunta-membership-feature__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    width: 1.25rem;
    height: 1.25rem;

    border-radius: 50%;

    color: var(--dashboard-success);

    background: color-mix(
        in srgb,
        var(--dashboard-success) 9%,
        var(--dashboard-surface)
    );
}

.hunta-membership-feature__icon svg {
    width: 0.7rem;
    height: 0.7rem;
    stroke-width: 2.5;
}

.hunta-dashboard-muted {
    margin: 0;

    color: var(--dashboard-muted);

    font-size: 0.75rem;
}


/* ============================================================
   NOTIFICATIONS
   ============================================================ */

.hunta-notification-list {
    padding: 1rem 1.25rem 1.25rem;
}

.hunta-notification-item {
    display: flex;
    gap: 0.7rem;

    padding: 0.85rem 0;

    border-bottom: 1px solid var(--dashboard-border);
}

.hunta-notification-item:first-child {
    padding-top: 0.4rem;
}

.hunta-notification-item:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.hunta-notification-item__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    width: 2rem;
    height: 2rem;

    border-radius: 0.6rem;

    color: #f59e0b;

    background: color-mix(
        in srgb,
        #f59e0b 9%,
        var(--dashboard-surface)
    );
}

.hunta-notification-item__icon svg {
    width: 0.9rem;
    height: 0.9rem;
}

.hunta-notification-item__content {
    min-width: 0;
}

.hunta-notification-item__content h3 {
    margin: 0;

    color: var(--dashboard-text);

    font-size: 0.75rem;
    font-weight: 750;
    line-height: 1.4;
}

.hunta-notification-item__content p {
    margin: 0.25rem 0 0;

    color: var(--dashboard-muted);

    font-size: 0.68rem;
    line-height: 1.55;
}

.hunta-notification-item__content time {
    display: block;

    margin-top: 0.25rem;

    color: var(--dashboard-muted);

    font-size: 0.62rem;
}


/* ============================================================
   CAPABILITIES
   ============================================================ */

.hunta-capabilities {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

.hunta-capability {
    display: flex;
    align-items: center;
    gap: 0.7rem;

    padding: 0.65rem 0;

    border-bottom: 1px solid var(--dashboard-border);
}

.hunta-capability:last-child {
    border-bottom: 0;
}

.hunta-capability__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 auto;

    width: 2rem;
    height: 2rem;

    border-radius: 0.55rem;

    color: var(--dashboard-success);

    background: color-mix(
        in srgb,
        var(--dashboard-success) 8%,
        var(--dashboard-surface)
    );
}

.hunta-capability__icon svg {
    width: 0.9rem;
    height: 0.9rem;
}

.hunta-capability > div {
    min-width: 0;
}

.hunta-capability strong {
    display: block;

    color: var(--dashboard-text);

    font-size: 0.72rem;
    font-weight: 750;
    line-height: 1.35;
}

.hunta-capability span:not(.hunta-capability__icon) {
    display: block;

    margin-top: 0.1rem;

    color: var(--dashboard-muted);

    font-size: 0.64rem;
}


/* ============================================================
   QUICK LINKS
   ============================================================ */

.hunta-quick-links {
    display: flex;
    flex-direction: column;
}

.hunta-quick-link {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 0.65rem;

    width: 100%;

    padding: 0.72rem 0;

    border: 0;
    border-bottom: 1px solid var(--dashboard-border);

    color: var(--dashboard-text-soft);

    background: transparent;

    font: inherit;
    font-size: 0.74rem;
    font-weight: 700;

    text-align: start;
    text-decoration: none;

    cursor: pointer;

    transition:
        color 160ms ease,
        padding 160ms ease;
}

.hunta-quick-link:last-child {
    border-bottom: 0;
}

.hunta-quick-link > span {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.9rem;
    height: 1.9rem;

    border-radius: 0.55rem;

    color: var(--dashboard-muted);

    background: var(--dashboard-surface-soft);
}

.hunta-quick-link > span svg {
    width: 0.9rem;
    height: 0.9rem;
}

.hunta-quick-link > svg {
    width: 0.8rem;
    height: 0.8rem;

    color: var(--dashboard-muted);

    transition: transform 160ms ease;
}

.hunta-quick-link:hover {
    color: var(--dashboard-accent);
    padding-left: 0.2rem;
}

.hunta-quick-link:hover > span {
    color: var(--dashboard-accent);

    background: color-mix(
        in srgb,
        var(--dashboard-accent) 8%,
        var(--dashboard-surface)
    );
}

.hunta-quick-link:hover > svg {
    color: var(--dashboard-accent);
    transform: translateX(2px);
}

.hunta-quick-link--danger:hover {
    color: var(--dashboard-danger);
}

.hunta-quick-link--danger:hover > span {
    color: var(--dashboard-danger);

    background: color-mix(
        in srgb,
        var(--dashboard-danger) 8%,
        var(--dashboard-surface)
    );
}


/* ============================================================
   DARK THEME
   ============================================================ */

html[data-theme="dark"] .hunta-dashboard {
    --dashboard-surface: var(--hunta-surface, #0f172a);
    --dashboard-surface-soft: var(--hunta-surface-soft, #111c2e);

    --dashboard-border: var(--hunta-border, #243247);
    --dashboard-border-strong: var(--hunta-border-strong, #334155);

    --dashboard-text: var(--hunta-text, #f8fafc);
    --dashboard-text-soft: var(--hunta-text-soft, #cbd5e1);
    --dashboard-muted: var(--hunta-text-muted, #94a3b8);
}

html[data-theme="dark"] .hunta-dashboard-card {
    box-shadow:
        0 12px 35px rgba(0, 0, 0, 0.16);
}

html[data-theme="dark"] .hunta-dashboard__tools-button {
    box-shadow:
        0 8px 25px rgba(0, 0, 0, 0.16);
}


/* ============================================================
   RTL
   ============================================================ */

[dir="rtl"] .hunta-dashboard {
    direction: rtl;
}

[dir="rtl"] .hunta-usage-stat + .hunta-usage-stat {
    border-left: 0;
    border-right: 1px solid var(--dashboard-border);
}

[dir="rtl"] .hunta-account-meta > div + div {
    border-left: 0;
    border-right: 1px solid var(--dashboard-border);
}

[dir="rtl"] .hunta-quick-link:hover {
    padding-left: 0;
    padding-right: 0.2rem;
}

[dir="rtl"] .hunta-quick-link:hover > svg {
    transform: translateX(-2px);
}


/* ============================================================
   TABLET
   ============================================================ */

@media (max-width: 1199.98px) {

    .hunta-dashboard__grid {
        grid-template-columns:
            minmax(220px, 0.8fr)
            minmax(400px, 1.4fr);
    }

    .hunta-dashboard__column:last-child {
        grid-column: 1 / -1;

        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;
    }

    .hunta-dashboard__column:last-child
    .hunta-quick-links-card {
        grid-column: span 1;
    }

}


/* ============================================================
   SMALL TABLET / LARGE MOBILE
   ============================================================ */

@media (max-width: 900px) {

    .hunta-dashboard__grid {
        grid-template-columns: 1fr;
    }

    .hunta-dashboard__column:last-child {
        grid-column: auto;

        display: flex;
        flex-direction: column;
    }

    .hunta-dashboard__column--main {
        order: 2;
    }

    .hunta-dashboard__column:first-child {
        order: 1;
    }

    .hunta-dashboard__column:last-child {
        order: 3;
    }

    .hunta-membership-features {
        grid-template-columns: 1fr 1fr;
    }

}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 639.98px) {

    .hunta-dashboard {
        padding:
            1.5rem
            0.85rem
            3rem;
    }

    .hunta-dashboard__header {
        align-items: flex-start;
        flex-direction: column;

        gap: 1rem;

        margin-bottom: 1.25rem;
    }

    .hunta-dashboard__header-action,
    .hunta-dashboard__tools-button {
        width: 100%;
    }

    .hunta-dashboard__tools-button {
        justify-content: center;
    }

    .hunta-dashboard__grid {
        gap: 0.9rem;
    }

    .hunta-dashboard__column {
        gap: 0.9rem;
    }

    .hunta-dashboard-card__header {
        padding: 1rem 1rem 0;
    }

    .hunta-dashboard-card__body {
        padding: 1rem;
    }

    .hunta-activity-list,
    .hunta-notification-list {
        padding: 0.85rem 1rem 1rem;
    }

    .hunta-membership-header {
        flex-direction: column;
    }

    .hunta-membership-features {
        grid-template-columns: 1fr;
    }

    .hunta-activity-status {
        display: none;
    }

    .hunta-dashboard-card__description {
        max-width: 220px;
    }

}


/* ============================================================
   VERY SMALL SCREENS
   ============================================================ */

@media (max-width: 420px) {

    .hunta-dashboard__title {
        font-size: 1.75rem;
    }

    .hunta-dashboard-card__heading {
        gap: 0.6rem;
    }

    .hunta-dashboard-card__icon {
        width: 2.25rem;
        height: 2.25rem;
    }

    .hunta-dashboard-status {
        font-size: 0.62rem;
    }

    .hunta-activity-item {
        gap: 0.65rem;
    }

    .hunta-activity-item__icon {
        width: 2rem;
        height: 2rem;
    }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-dashboard *,
    .hunta-dashboard *::before,
    .hunta-dashboard *::after {
        scroll-behavior: auto !important;
        transition: none !important;
        animation: none !important;
    }

}
 
/* ============================================================
   HUNTA — AUTHENTICATION DESIGN
   auth-modern.css

   SCOPE:
   - Login
   - Register
   - Password authentication pages
   - Auth-specific components only
   ============================================================ */


/* ============================================================
   VARIABLES
   ============================================================ */

.hunta-auth-page {
    --auth-accent: var(--hunta-accent, #6366f1);
    --auth-primary: var(--hunta-primary, #4f46e5);

    --auth-text: var(--hunta-text, #0f172a);
    --auth-text-soft: var(--hunta-text-soft, #334155);
    --auth-muted: var(--hunta-text-muted, #64748b);

    --auth-surface: var(--hunta-surface, #ffffff);
    --auth-surface-soft: var(--hunta-surface-soft, #f8fafc);

    --auth-border: var(--hunta-border, #e2e8f0);
    --auth-border-strong: var(--hunta-border-strong, #cbd5e1);

    --auth-success: var(--hunta-success, #10b981);
    --auth-danger: var(--hunta-danger, #ef4444);

    position: relative;
    isolation: isolate;

    min-height: min(
        820px,
        calc(100vh - 5rem)
    );

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    padding: clamp(2.5rem, 6vw, 5rem) 1rem;
}


/* ============================================================
   BACKGROUND
   ============================================================ */

.hunta-auth-background {
    position: absolute;
    inset: 0;

    z-index: -1;

    overflow: hidden;

    pointer-events: none;
}

.hunta-auth-background__glow {
    position: absolute;

    width: 28rem;
    height: 28rem;

    border-radius: 50%;

    filter: blur(80px);

    opacity: 0.12;
}

.hunta-auth-background__glow--one {
    top: -12rem;
    left: calc(50% - 25rem);

    background: var(--auth-accent);
}

.hunta-auth-background__glow--two {
    right: calc(50% - 25rem);
    bottom: -14rem;

    background: #06b6d4;
}

.hunta-auth-background__grid {
    position: absolute;
    inset: 0;

    opacity: 0.32;

    background-image:
        linear-gradient(
            to right,
            color-mix(
                in srgb,
                var(--auth-border) 45%,
                transparent
            ) 1px,
            transparent 1px
        ),
        linear-gradient(
            to bottom,
            color-mix(
                in srgb,
                var(--auth-border) 45%,
                transparent
            ) 1px,
            transparent 1px
        );

    background-size: 42px 42px;

    mask-image: linear-gradient(
        to bottom,
        transparent,
        black 18%,
        black 82%,
        transparent
    );
}


/* ============================================================
   CONTAINER
   ============================================================ */

.hunta-auth-container {
    width: 100%;
    max-width: 470px;

    margin: 0 auto;
}


/* ============================================================
   AUTH CARD
   ============================================================ */

.hunta-auth-card {
    position: relative;

    padding: clamp(1.5rem, 5vw, 2.5rem);

    border: 1px solid var(--auth-border);

    border-radius: var(--hunta-radius-lg, 1.35rem);

    background: color-mix(
        in srgb,
        var(--auth-surface) 94%,
        transparent
    );

    box-shadow:
        var(
            --hunta-shadow-floating,
            0 25px 70px rgba(15, 23, 42, 0.12)
        );

    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
}


/* ============================================================
   HEADER
   ============================================================ */

.hunta-auth-header {
    text-align: center;

    margin-bottom: 2rem;
}

.hunta-auth-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 3.75rem;
    height: 3.75rem;

    margin: 0 auto 1rem;

    border: 1px solid color-mix(
        in srgb,
        var(--auth-accent) 22%,
        var(--auth-border)
    );

    border-radius: 1rem;

    color: var(--auth-accent);

    background: color-mix(
        in srgb,
        var(--auth-accent) 9%,
        var(--auth-surface)
    );

    box-shadow:
        0 10px 30px color-mix(
            in srgb,
            var(--auth-accent) 12%,
            transparent
        );
}

.hunta-auth-icon svg {
    width: 1.65rem;
    height: 1.65rem;
    stroke-width: 1.8;
}

.hunta-auth-eyebrow {
    display: inline-block;

    color: var(--auth-accent);

    font-size: 0.7rem;
    font-weight: 800;
    line-height: 1;

    letter-spacing: 0.09em;
    text-transform: uppercase;
}

.hunta-auth-title {
    margin: 0.7rem 0 0;

    color: var(--auth-text);

    font-size: clamp(1.7rem, 5vw, 2.1rem);
    font-weight: 850;
    line-height: 1.1;

    letter-spacing: -0.045em;
}

.hunta-auth-subtitle {
    max-width: 360px;

    margin: 0.65rem auto 0;

    color: var(--auth-muted);

    font-size: 0.86rem;
    line-height: 1.65;
}


/* ============================================================
   ALERT
   ============================================================ */

.hunta-auth-alert {
    display: flex;
    align-items: flex-start;
    gap: 0.65rem;

    margin-bottom: 1.35rem;
    padding: 0.8rem 0.9rem;

    border: 1px solid transparent;
    border-radius: 0.75rem;

    font-size: 0.76rem;
    line-height: 1.5;
}

.hunta-auth-alert__icon {
    display: inline-flex;

    flex: 0 0 auto;
}

.hunta-auth-alert__icon svg {
    width: 1rem;
    height: 1rem;
}

.hunta-auth-alert--success {
    color: var(--auth-success);

    border-color: color-mix(
        in srgb,
        var(--auth-success) 20%,
        var(--auth-border)
    );

    background: color-mix(
        in srgb,
        var(--auth-success) 8%,
        var(--auth-surface)
    );
}


/* ============================================================
   FORM
   ============================================================ */

.hunta-auth-form {
    display: flex;
    flex-direction: column;

    gap: 1.15rem;
}

.hunta-auth-field {
    min-width: 0;
}

.hunta-auth-label {
    display: block;

    margin-bottom: 0.45rem;

    color: var(--auth-text-soft);

    font-size: 0.78rem;
    font-weight: 750;
}


/* ============================================================
   INPUT
   ============================================================ */

.hunta-auth-input-wrap {
    position: relative;
}

.hunta-auth-input-icon {
    position: absolute;

    top: 50%;
    left: 0.95rem;

    display: inline-flex;

    transform: translateY(-50%);

    color: var(--auth-muted);

    pointer-events: none;

    z-index: 2;
}

.hunta-auth-input-icon svg {
    width: 1rem;
    height: 1rem;

    stroke-width: 1.8;
}

.hunta-auth-input {
    display: block;

    width: 100%;

    min-height: 3.05rem;

    padding: 0.75rem 0.9rem 0.75rem 2.75rem;

    border: 1px solid var(--auth-border-strong);

    border-radius: 0.75rem;

    outline: none;

    color: var(--auth-text);

    background: var(--auth-surface);

    font: inherit;
    font-size: 0.84rem;

    transition:
        border-color 180ms ease,
        box-shadow 180ms ease,
        background 180ms ease;
}

.hunta-auth-input::placeholder {
    color: var(--auth-muted);

    opacity: 0.75;
}

.hunta-auth-input:hover {
    border-color: color-mix(
        in srgb,
        var(--auth-accent) 25%,
        var(--auth-border-strong)
    );
}

.hunta-auth-input:focus {
    border-color: var(--auth-accent);

    box-shadow:
        0 0 0 3px color-mix(
            in srgb,
            var(--auth-accent) 13%,
            transparent
        );
}

.hunta-auth-input--error {
    border-color: var(--auth-danger);
}

.hunta-auth-input--error:focus {
    box-shadow:
        0 0 0 3px color-mix(
            in srgb,
            var(--auth-danger) 12%,
            transparent
        );
}


/* ============================================================
   VALIDATION
   ============================================================ */

.hunta-auth-error {
    display: flex;
    align-items: flex-start;
    gap: 0.35rem;

    margin-top: 0.45rem;

    color: var(--auth-danger);

    font-size: 0.7rem;
    line-height: 1.45;
}

.hunta-auth-error svg {
    flex: 0 0 auto;

    width: 0.85rem;
    height: 0.85rem;

    margin-top: 0.05rem;
}


/* ============================================================
   OPTIONS
   ============================================================ */

.hunta-auth-options {
    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 1rem;

    margin-top: 0.05rem;
}

.hunta-auth-checkbox {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;

    color: var(--auth-muted);

    font-size: 0.72rem;

    cursor: pointer;
    user-select: none;
}

.hunta-auth-checkbox input {
    position: absolute;

    width: 1px;
    height: 1px;

    opacity: 0;
    pointer-events: none;
}

.hunta-auth-checkbox__box {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 1.05rem;
    height: 1.05rem;

    border: 1px solid var(--auth-border-strong);
    border-radius: 0.3rem;

    color: #ffffff;

    background: var(--auth-surface);

    transition:
        border-color 160ms ease,
        background 160ms ease;
}

.hunta-auth-checkbox__box svg {
    width: 0.7rem;
    height: 0.7rem;

    opacity: 0;

    stroke-width: 3;
}

.hunta-auth-checkbox input:checked + .hunta-auth-checkbox__box {
    border-color: var(--auth-accent);

    background: var(--auth-accent);
}

.hunta-auth-checkbox input:checked + .hunta-auth-checkbox__box svg {
    opacity: 1;
}

.hunta-auth-checkbox input:focus-visible + .hunta-auth-checkbox__box {
    box-shadow:
        0 0 0 3px color-mix(
            in srgb,
            var(--auth-accent) 14%,
            transparent
        );
}


/* ============================================================
   LINKS
   ============================================================ */

.hunta-auth-link {
    color: var(--auth-accent);

    font-size: 0.72rem;
    font-weight: 700;

    text-decoration: none;

    transition:
        color 160ms ease,
        opacity 160ms ease;
}

.hunta-auth-link:hover {
    color: var(--auth-primary);

    text-decoration: underline;
    text-underline-offset: 3px;
}

.hunta-auth-link--strong {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
}

.hunta-auth-link--strong svg {
    width: 0.75rem;
    height: 0.75rem;
}


/* ============================================================
   SUBMIT
   ============================================================ */

.hunta-auth-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;

    width: 100%;

    min-height: 3.15rem;

    margin-top: 0.15rem;

    padding: 0.8rem 1rem;

    border: 1px solid var(--auth-primary);
    border-radius: 0.8rem;

    color: #ffffff;

    background: linear-gradient(
        135deg,
        var(--auth-primary),
        var(--auth-accent)
    );

    font: inherit;
    font-size: 0.84rem;
    font-weight: 800;

    cursor: pointer;

    box-shadow:
        0 8px 24px color-mix(
            in srgb,
            var(--auth-primary) 20%,
            transparent
        );

    transition:
        transform 180ms ease,
        box-shadow 180ms ease,
        filter 180ms ease;
}

.hunta-auth-submit svg {
    width: 1rem;
    height: 1rem;

    transition: transform 180ms ease;
}

.hunta-auth-submit:hover {
    color: #ffffff;

    transform: translateY(-1px);

    filter: brightness(1.04);

    box-shadow:
        0 11px 30px color-mix(
            in srgb,
            var(--auth-primary) 28%,
            transparent
        );
}

.hunta-auth-submit:hover svg {
    transform: translateX(2px);
}

.hunta-auth-submit:active {
    transform: translateY(0);
}


/* ============================================================
   DIVIDER
   ============================================================ */

.hunta-auth-divider {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 0.8rem;

    margin: 1.5rem 0;
}

.hunta-auth-divider span {
    height: 1px;

    background: var(--auth-border);
}

.hunta-auth-divider small {
    color: var(--auth-muted);

    font-size: 0.68rem;
    font-weight: 650;
}


/* ============================================================
   GOOGLE BUTTON
   ============================================================ */

.hunta-google-button {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;

    width: 100%;

    min-height: 3.05rem;

    padding: 0.7rem 1rem;

    border: 1px solid var(--auth-border-strong);
    border-radius: 0.8rem;

    color: var(--auth-text);

    background: var(--auth-surface);

    font-size: 0.82rem;
    font-weight: 750;

    text-decoration: none;

    transition:
        transform 180ms ease,
        border-color 180ms ease,
        background 180ms ease,
        box-shadow 180ms ease;
}

.hunta-google-button:hover {
    color: var(--auth-text);

    border-color: color-mix(
        in srgb,
        var(--auth-text) 20%,
        var(--auth-border-strong)
    );

    background: var(--auth-surface-soft);

    transform: translateY(-1px);

    box-shadow:
        0 7px 20px rgba(15, 23, 42, 0.07);
}

.hunta-google-button__logo {
    flex: 0 0 auto;
}


/* ============================================================
   REGISTER
   ============================================================ */

.hunta-auth-register {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;

    margin-top: 1.5rem;
    padding-top: 1.35rem;

    border-top: 1px solid var(--auth-border);

    color: var(--auth-muted);

    font-size: 0.72rem;
    text-align: center;
}


/* ============================================================
   DARK THEME
   ============================================================ */

html[data-theme="dark"] .hunta-auth-page {
    --auth-surface: var(--hunta-surface, #0f172a);
    --auth-surface-soft: var(--hunta-surface-soft, #111c2e);

    --auth-border: var(--hunta-border, #243247);
    --auth-border-strong: var(--hunta-border-strong, #334155);

    --auth-text: var(--hunta-text, #f8fafc);
    --auth-text-soft: var(--hunta-text-soft, #cbd5e1);
    --auth-muted: var(--hunta-text-muted, #94a3b8);
}

html[data-theme="dark"] .hunta-auth-card {
    box-shadow:
        0 25px 70px rgba(0, 0, 0, 0.28);
}

html[data-theme="dark"] .hunta-auth-input {
    background: color-mix(
        in srgb,
        var(--auth-surface-soft) 65%,
        var(--auth-surface)
    );
}

html[data-theme="dark"] .hunta-google-button:hover {
    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.2);
}


/* ============================================================
   RTL
   ============================================================ */

[dir="rtl"] .hunta-auth-page {
    direction: rtl;
}

[dir="rtl"] .hunta-auth-input {
    padding-left: 0.9rem;
    padding-right: 2.75rem;
}

[dir="rtl"] .hunta-auth-input-icon {
    left: auto;
    right: 0.95rem;
}

[dir="rtl"] .hunta-auth-submit svg {
    transform: rotate(180deg);
}

[dir="rtl"] .hunta-auth-submit:hover svg {
    transform: rotate(180deg) translateX(2px);
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 575.98px) {

    .hunta-auth-page {
        min-height: auto;

        padding:
            2rem
            0.85rem
            3rem;
    }

    .hunta-auth-card {
        padding: 1.35rem;

        border-radius: 1.1rem;
    }

    .hunta-auth-header {
        margin-bottom: 1.5rem;
    }

    .hunta-auth-icon {
        width: 3.35rem;
        height: 3.35rem;
    }

    .hunta-auth-title {
        font-size: 1.65rem;
    }

    .hunta-auth-options {
        align-items: flex-start;
    }

}


/* ============================================================
   VERY SMALL SCREENS
   ============================================================ */

@media (max-width: 380px) {

    .hunta-auth-options {
        flex-direction: column;
        gap: 0.7rem;
    }

    .hunta-auth-register {
        flex-direction: column;
        gap: 0.2rem;
    }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-auth-page *,
    .hunta-auth-page *::before,
    .hunta-auth-page *::after {
        transition: none !important;
        animation: none !important;
    }

}
 
 
/* ============================================================
   HUNTA — AUTHENTICATION DESIGN
   auth-modern.css

   USED BY:
   - Login
   - Register
   - Authentication-related pages

   SCOPE:
   - .hunta-auth-*
   ============================================================ */


/* ============================================================
   AUTH PAGE
   ============================================================ */

.hunta-auth-page {
    position: relative;
    isolation: isolate;
    min-height: calc(100vh - 80px);
    min-height: calc(100svh - 80px);

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 64px 20px;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 50% 0%,
            color-mix(in srgb, var(--hunta-accent) 8%, transparent),
            transparent 34%
        ),
        var(--hunta-bg, var(--hunta-surface-soft));
}


/* ============================================================
   BACKDROP
   ============================================================ */

.hunta-auth-backdrop {
    position: absolute;
    inset: 0;
    z-index: -1;

    pointer-events: none;
    overflow: hidden;
}

.hunta-auth-orb {
    position: absolute;

    width: 420px;
    height: 420px;

    border-radius: 50%;

    filter: blur(80px);
    opacity: .14;

    background: var(--hunta-accent);
}

.hunta-auth-orb--one {
    top: -240px;
    left: 8%;

    animation: huntaAuthFloatOne 12s ease-in-out infinite;
}

.hunta-auth-orb--two {
    right: 4%;
    bottom: -260px;

    width: 360px;
    height: 360px;

    opacity: .09;

    animation: huntaAuthFloatTwo 15s ease-in-out infinite;
}

.hunta-auth-grid {
    position: absolute;
    inset: 0;

    opacity: .32;

    background-image:
        linear-gradient(
            to right,
            color-mix(in srgb, var(--hunta-border) 48%, transparent) 1px,
            transparent 1px
        ),
        linear-gradient(
            to bottom,
            color-mix(in srgb, var(--hunta-border) 48%, transparent) 1px,
            transparent 1px
        );

    background-size: 64px 64px;

    mask-image: linear-gradient(
        to bottom,
        black,
        transparent 75%
    );

    -webkit-mask-image: linear-gradient(
        to bottom,
        black,
        transparent 75%
    );
}


/* ============================================================
   CONTAINER
   ============================================================ */

.hunta-auth-container {
    position: relative;

    width: min(100%, 500px);

    margin-inline: auto;
}


/* ============================================================
   CARD
   ============================================================ */

.hunta-auth-card {
    position: relative;

    width: 100%;

    padding: 42px;

    border: 1px solid var(--hunta-border);
    border-radius: 28px;

    background:
        linear-gradient(
            145deg,
            color-mix(in srgb, var(--hunta-surface) 96%, white 4%),
            var(--hunta-surface)
        );

    box-shadow:
        0 30px 80px rgba(0, 0, 0, .12),
        0 8px 28px rgba(0, 0, 0, .06);

    overflow: hidden;

    animation: huntaAuthCardIn .55s var(--hunta-ease, ease) both;
}

.hunta-auth-card::before {
    content: "";

    position: absolute;
    inset: 0 0 auto;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            color-mix(in srgb, var(--hunta-accent) 55%, transparent),
            transparent
        );

    opacity: .9;
}

.hunta-auth-card::after {
    content: "";

    position: absolute;

    width: 220px;
    height: 220px;

    top: -160px;
    right: -100px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            color-mix(in srgb, var(--hunta-accent) 8%, transparent),
            transparent 70%
        );

    pointer-events: none;
}


/* ============================================================
   HEADER
   ============================================================ */

.hunta-auth-header {
    position: relative;
    z-index: 1;

    text-align: center;

    margin-bottom: 34px;
}

.hunta-auth-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 62px;
    height: 62px;

    margin-bottom: 18px;

    border: 1px solid
        color-mix(in srgb, var(--hunta-accent) 22%, var(--hunta-border));

    border-radius: 18px;

    color: var(--hunta-accent);

    background:
        color-mix(
            in srgb,
            var(--hunta-accent) 9%,
            var(--hunta-surface)
        );

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .06);

    animation: huntaAuthIconIn .55s .08s var(--hunta-ease, ease) both;
}

.hunta-auth-icon svg {
    width: 28px;
    height: 28px;

    stroke-width: 1.8;
}

.hunta-auth-eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    margin-bottom: 9px;

    color: var(--hunta-accent);

    font-size: .72rem;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.hunta-auth-eyebrow-dot {
    width: 6px;
    height: 6px;

    border-radius: 50%;

    background: currentColor;

    box-shadow: 0 0 0 4px
        color-mix(in srgb, currentColor 10%, transparent);
}

.hunta-auth-title {
    margin: 0;

    color: var(--hunta-text);

    font-size: clamp(1.75rem, 4vw, 2.15rem);
    font-weight: 750;
    line-height: 1.12;
    letter-spacing: -.035em;
}

.hunta-auth-subtitle {
    max-width: 390px;

    margin: 12px auto 0;

    color: var(--hunta-text-muted);

    font-size: .94rem;
    line-height: 1.65;
}


/* ============================================================
   FORM
   ============================================================ */

.hunta-auth-form {
    position: relative;
    z-index: 1;
}

.hunta-auth-field {
    margin-bottom: 20px;
}

.hunta-auth-field--last {
    margin-bottom: 25px;
}

.hunta-auth-label {
    display: block;

    margin-bottom: 8px;

    color: var(--hunta-text);

    font-size: .84rem;
    font-weight: 650;
    line-height: 1.3;
}

.hunta-auth-input-wrap {
    position: relative;

    display: flex;
    align-items: center;
}

.hunta-auth-input {
    width: 100%;
    min-height: 52px;

    padding: 0 48px 0 46px;

    border: 1px solid var(--hunta-border);
    border-radius: 14px;

    outline: none;

    color: var(--hunta-text);
    background: var(--hunta-surface-soft);

    font: inherit;
    font-size: .94rem;

    transition:
        border-color var(--hunta-duration-fast, .18s) ease,
        box-shadow var(--hunta-duration-fast, .18s) ease,
        background var(--hunta-duration-fast, .18s) ease,
        transform var(--hunta-duration-fast, .18s) ease;
}

.hunta-auth-input::placeholder {
    color: var(--hunta-text-muted);
    opacity: .72;
}

.hunta-auth-input:hover {
    border-color: var(--hunta-border-strong);
}

.hunta-auth-input:focus {
    border-color: var(--hunta-accent);

    background: var(--hunta-surface);

    box-shadow:
        0 0 0 4px
        color-mix(in srgb, var(--hunta-accent) 12%, transparent);

    transform: translateY(-1px);
}

.hunta-auth-input-icon {
    position: absolute;
    left: 16px;
    z-index: 2;

    width: 18px;
    height: 18px;

    color: var(--hunta-text-muted);

    pointer-events: none;

    transition:
        color var(--hunta-duration-fast, .18s) ease,
        transform var(--hunta-duration-fast, .18s) ease;
}

.hunta-auth-input-wrap:focus-within .hunta-auth-input-icon {
    color: var(--hunta-accent);

    transform: scale(1.05);
}


/* ============================================================
   PASSWORD TOGGLE
   ============================================================ */

.hunta-auth-password-toggle {
    position: absolute;
    right: 10px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 34px;
    height: 34px;

    padding: 0;

    border: 0;
    border-radius: 9px;

    color: var(--hunta-text-muted);
    background: transparent;

    cursor: pointer;

    transition:
        color var(--hunta-duration-fast, .18s) ease,
        background var(--hunta-duration-fast, .18s) ease;
}

.hunta-auth-password-toggle:hover {
    color: var(--hunta-text);

    background:
        color-mix(
            in srgb,
            var(--hunta-text) 7%,
            transparent
        );
}

.hunta-auth-password-toggle:focus-visible {
    outline: 2px solid var(--hunta-accent);
    outline-offset: 2px;
}

.hunta-auth-password-toggle svg {
    width: 17px;
    height: 17px;
}


/* ============================================================
   VALIDATION
   ============================================================ */

.hunta-auth-field.has-error .hunta-auth-input {
    border-color: var(--hunta-danger);
}

.hunta-auth-field.has-error .hunta-auth-input:focus {
    box-shadow:
        0 0 0 4px
        color-mix(in srgb, var(--hunta-danger) 12%, transparent);
}

.hunta-auth-error {
    display: flex;
    align-items: flex-start;
    gap: 7px;

    margin-top: 8px;

    color: var(--hunta-danger);

    font-size: .78rem;
    line-height: 1.45;
}

.hunta-auth-error svg {
    flex: 0 0 auto;

    width: 15px;
    height: 15px;

    margin-top: 1px;
}


/* ============================================================
   SUBMIT BUTTON
   ============================================================ */

.hunta-auth-submit {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: space-between;

    width: 100%;
    min-height: 54px;

    padding: 0 17px 0 20px;

    border: 1px solid
        color-mix(in srgb, var(--hunta-accent) 80%, transparent);

    border-radius: 14px;

    color: #fff;

    background:
        linear-gradient(
            135deg,
            var(--hunta-accent),
            color-mix(in srgb, var(--hunta-accent) 76%, #000)
        );

    box-shadow:
        0 10px 24px
        color-mix(in srgb, var(--hunta-accent) 22%, transparent);

    cursor: pointer;

    font: inherit;
    font-size: .94rem;
    font-weight: 700;

    overflow: hidden;

    transition:
        transform var(--hunta-duration-fast, .18s) ease,
        box-shadow var(--hunta-duration-fast, .18s) ease,
        filter var(--hunta-duration-fast, .18s) ease;
}

.hunta-auth-submit::before {
    content: "";

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            110deg,
            transparent 20%,
            rgba(255,255,255,.14) 50%,
            transparent 80%
        );

    transform: translateX(-120%);

    transition: transform .65s ease;
}

.hunta-auth-submit:hover {
    transform: translateY(-2px);

    box-shadow:
        0 15px 30px
        color-mix(in srgb, var(--hunta-accent) 28%, transparent);

    filter: brightness(1.04);
}

.hunta-auth-submit:hover::before {
    transform: translateX(120%);
}

.hunta-auth-submit:active {
    transform: translateY(0);
}

.hunta-auth-submit:focus-visible {
    outline: 3px solid
        color-mix(in srgb, var(--hunta-accent) 28%, transparent);

    outline-offset: 3px;
}

.hunta-auth-submit-content {
    position: relative;
    z-index: 1;

    display: inline-flex;
    align-items: center;
    gap: 9px;
}

.hunta-auth-submit-content svg {
    width: 18px;
    height: 18px;
}

.hunta-auth-submit-arrow {
    position: relative;
    z-index: 1;

    width: 18px;
    height: 18px;

    transition: transform var(--hunta-duration-fast, .18s) ease;
}

.hunta-auth-submit:hover .hunta-auth-submit-arrow {
    transform: translateX(3px);
}


/* ============================================================
   ACCOUNT SWITCH
   ============================================================ */

.hunta-auth-switch {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 5px;

    margin-top: 24px;

    color: var(--hunta-text-muted);

    font-size: .84rem;
    line-height: 1.5;
}

.hunta-auth-link {
    display: inline-flex;
    align-items: center;
    gap: 4px;

    color: var(--hunta-accent);

    font-weight: 700;
    text-decoration: none;

    transition:
        color var(--hunta-duration-fast, .18s) ease,
        gap var(--hunta-duration-fast, .18s) ease;
}

.hunta-auth-link:hover {
    color: var(--hunta-primary, var(--hunta-accent));
    gap: 6px;
}

.hunta-auth-link svg {
    width: 14px;
    height: 14px;
}


/* ============================================================
   FOOTER
   ============================================================ */

.hunta-auth-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;

    margin-top: 18px;

    color: var(--hunta-text-muted);

    font-size: .72rem;
    opacity: .7;
}

.hunta-auth-footer > span:first-child {
    font-weight: 700;
}

.hunta-auth-footer-dot {
    opacity: .55;
}


/* ============================================================
   DARK MODE
   ============================================================ */

html[data-theme="dark"] .hunta-auth-page {
    --hunta-bg: #080b10;

    background:
        radial-gradient(
            circle at 50% 0%,
            color-mix(in srgb, var(--hunta-accent) 11%, transparent),
            transparent 38%
        ),
        #080b10;
}

html[data-theme="dark"] .hunta-auth-card {
    background:
        linear-gradient(
            145deg,
            color-mix(in srgb, var(--hunta-surface) 97%, white 3%),
            var(--hunta-surface)
        );

    box-shadow:
        0 30px 90px rgba(0, 0, 0, .42),
        0 8px 28px rgba(0, 0, 0, .24);
}

html[data-theme="dark"] .hunta-auth-input {
    background:
        color-mix(
            in srgb,
            var(--hunta-surface-soft) 88%,
            #000 12%
        );
}

html[data-theme="dark"] .hunta-auth-grid {
    opacity: .2;
}


/* ============================================================
   LIGHT MODE
   ============================================================ */

html[data-theme="light"] .hunta-auth-page {
    --hunta-bg: #f7f9fc;
}

html[data-theme="light"] .hunta-auth-card {
    background: rgba(255, 255, 255, .94);

    box-shadow:
        0 28px 70px rgba(18, 27, 45, .10),
        0 5px 18px rgba(18, 27, 45, .05);
}

html[data-theme="light"] .hunta-auth-input {
    background: #f8fafc;
}


/* ============================================================
   RTL
   ============================================================ */

[dir="rtl"] .hunta-auth-input {
    padding-right: 46px;
    padding-left: 48px;
}

[dir="rtl"] .hunta-auth-input-icon {
    right: 16px;
    left: auto;
}

[dir="rtl"] .hunta-auth-password-toggle {
    right: auto;
    left: 10px;
}

[dir="rtl"] .hunta-auth-submit-arrow {
    transform: scaleX(-1);
}

[dir="rtl"] .hunta-auth-submit:hover .hunta-auth-submit-arrow {
    transform: scaleX(-1) translateX(3px);
}

[dir="rtl"] .hunta-auth-link svg {
    transform: scaleX(-1);
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 575.98px) {

    .hunta-auth-page {
        min-height: calc(100vh - 68px);
        min-height: calc(100svh - 68px);

        padding: 30px 14px;
    }

    .hunta-auth-card {
        padding: 30px 22px;

        border-radius: 22px;
    }

    .hunta-auth-header {
        margin-bottom: 28px;
    }

    .hunta-auth-icon {
        width: 56px;
        height: 56px;

        margin-bottom: 15px;

        border-radius: 16px;
    }

    .hunta-auth-icon svg {
        width: 25px;
        height: 25px;
    }

    .hunta-auth-title {
        font-size: 1.7rem;
    }

    .hunta-auth-subtitle {
        font-size: .88rem;
    }

    .hunta-auth-input {
        min-height: 50px;
    }

    .hunta-auth-submit {
        min-height: 52px;
    }

    .hunta-auth-footer {
        margin-top: 14px;
    }

    .hunta-auth-orb {
        opacity: .08;
    }

}


/* ============================================================
   SMALL MOBILE
   ============================================================ */

@media (max-width: 380px) {

    .hunta-auth-page {
        padding-inline: 10px;
    }

    .hunta-auth-card {
        padding: 26px 18px;
    }

    .hunta-auth-switch {
        font-size: .8rem;
    }

}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .hunta-auth-card,
    .hunta-auth-icon,
    .hunta-auth-orb--one,
    .hunta-auth-orb--two {
        animation: none !important;
    }

    .hunta-auth-input,
    .hunta-auth-submit,
    .hunta-auth-submit-arrow,
    .hunta-auth-password-toggle,
    .hunta-auth-link {
        transition: none !important;
    }

    .hunta-auth-submit::before {
        display: none;
    }

}


/* ============================================================
   ANIMATIONS
   ============================================================ */

@keyframes huntaAuthCardIn {

    from {
        opacity: 0;
        transform: translateY(18px) scale(.985);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }

}

@keyframes huntaAuthIconIn {

    from {
        opacity: 0;
        transform: translateY(10px) scale(.9);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }

}

@keyframes huntaAuthFloatOne {

    0%,
    100% {
        transform: translate3d(0, 0, 0);
    }

    50% {
        transform: translate3d(35px, 22px, 0);
    }

}

@keyframes huntaAuthFloatTwo {

    0%,
    100% {
        transform: translate3d(0, 0, 0);
    }

    50% {
        transform: translate3d(-25px, -20px, 0);
    }

}
 
 
/* ============================================================
   WATERMARK — INSPECTOR TEXT CONTROLS
   ============================================================ */

.hunta-inspector-field {
    margin-bottom: 18px;
}

.hunta-inspector-label {
    display: block;

    margin-bottom: 8px;

    color: var(--hunta-text);

    font-size: .78rem;
    font-weight: 700;
    line-height: 1.3;
}

.hunta-inspector-input {
    display: block;

    width: 100%;

    border: 1px solid var(--hunta-border);
    border-radius: 11px;

    outline: none;

    color: var(--hunta-text);
    background: var(--hunta-surface-soft);

    font: inherit;
    font-size: .86rem;

    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}

.hunta-inspector-textarea {
    min-height: 82px;

    padding: 11px 12px;

    resize: vertical;

    line-height: 1.5;
}

.hunta-inspector-input::placeholder {
    color: var(--hunta-text-muted);
    opacity: .7;
}

.hunta-inspector-input:hover {
    border-color: var(--hunta-border-strong);
}

.hunta-inspector-input:focus {
    border-color: var(--hunta-accent);

    background: var(--hunta-surface);

    box-shadow:
        0 0 0 3px
        color-mix(
            in srgb,
            var(--hunta-accent) 12%,
            transparent
        );
}


/* ============================================================
   RANGE
   ============================================================ */

.hunta-inspector-range {
    display: block;

    width: 100%;

    accent-color: var(--hunta-accent);

    cursor: pointer;
}

.hunta-inspector-range-value {
    margin-top: 6px;

    color: var(--hunta-text-muted);

    font-size: .72rem;
    font-weight: 600;

    text-align: right;
}


/* ============================================================
   DARK MODE
   ============================================================ */

html[data-theme="dark"] .hunta-inspector-input {
    background:
        color-mix(
            in srgb,
            var(--hunta-surface-soft) 88%,
            #000 12%
        );
}

html[data-theme="dark"] .hunta-inspector-input:focus {
    background: var(--hunta-surface);
}


/* ============================================================
   RTL
   ============================================================ */

[dir="rtl"] .hunta-inspector-range-value {
    text-align: left;
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 767.98px) {

    .hunta-inspector-textarea {
        min-height: 76px;
    }

}
 
