/* FT Corporate — native V4.76 identity, integrated into the existing stylesheet. */

:root {
    --ink: #0d2235;
    --text-main: #f5fbff;
    --grad-brand: linear-gradient(135deg, #3fd9c9 0%, #4d78f5 50%, #8d5ef9 100%);
    --topbar-h: 70px;
    --fortress-bg: #060915;
    --fortress-glass: rgba(255, 255, 255, .075);
    --fortress-glass-strong: rgba(255, 255, 255, .11);
    --fortress-line: rgba(255, 255, 255, .14);
    --fortress-text: #f7fbff;
    --fortress-muted: rgba(224, 241, 250, .72);
    --fortress-aqua: #74f0e3;
    --fortress-blue: #91aaff;
    --fortress-shadow: 0 30px 88px rgba(0, 0, 0, .28);
}

.ft-skip-link {
    position: fixed;
    left: 12px;
    top: 12px;
    z-index: 3000;
    min-height: 42px;
    padding: 0 16px;
    border: 2px solid #131417;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    background: #ffffff;
    font-weight: 800;
    text-decoration: none;
    transform: translateY(-160%);
    opacity: 0;
    box-shadow: 0 10px 28px rgba(0,0,0,0.18);
    color: #131417;
}

.ft-skip-link:focus {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
    outline: 3px solid rgba(77, 120, 245, .46);
    outline-offset: 3px;
}

.ultra-view>.topbar {
    position: sticky;
    top: 0;
    z-index: 100;
    -webkit-backdrop-filter: blur(18px) saturate(.8) brightness(1.5);
    backdrop-filter: blur(18px) saturate(.8) brightness(1.5);
    transform: translateY(0);
    transition: transform .5s cubic-bezier(0.19, 0.79, 0.36, 1);
    border-bottom-color: rgba(206, 212, 226, .13);
    background-color: #000000;
    background-image: none;
}

.ultra-view>.topbar.is-scroll-hidden:not(.is-mobile-menu-open):not(:focus-within) {
    transform: translateY(calc(-100% - 1px));
}

.ultra-view>.topbar .topbar__inner {
    width: min(1200px, calc(100% - 32px));
    min-height: 70px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.ultra-view>.topbar .brand {
    display: flex;
    align-items: center;
    gap: 11px;
    font-weight: 900;
    font-size: 15px;
    letter-spacing: -.03em;
    transition: opacity .2s ease;
    line-height: 1;
    color: #ffffff;
}

.ultra-view>.topbar .brand__mark,
.ft-demo-brand-mark {
    flex: 0 0 40px;
    height: 40px;
    border-radius: 13px;
    position: relative;
    overflow: hidden;
    background: var(--grad-brand);
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
    border-color: #454856;
    box-shadow: 0 0 0 1px rgba(199,201,210,.12);
}

.ultra-view>.topbar .brand__mark::before,
.ft-demo-brand-mark::before {
    content: "";
    position: absolute;
    border-radius: 26px;
    background: rgba(255, 255, 255, .95);
    width: 26px;
    height: 7px;
    left: 7px;
    top: 11px;
    transform: rotate(-12deg);
}

.ultra-view>.topbar .brand__mark::after,
.ft-demo-brand-mark::after {
    content: "";
    position: absolute;
    border-radius: 26px;
    background: rgba(255, 255, 255, .95);
    width: 21px;
    height: 7px;
    right: 6px;
    bottom: 11px;
    transform: rotate(12deg);
}

.ultra-view>.topbar .brand small {
    display: block;
    font-size: 9.5px;
    letter-spacing: .14em;
    text-transform: uppercase;
    font-weight: 700;
    margin-top: 3px;
    color: #c2c5cc;
}

.ultra-view>.topbar .topnav {
    display: none;
    gap: 25.5px;
    align-items: center;
    font-size: 12.5px;
    font-weight: 700;
}

.ultra-view>.topbar .topnav a {
    transition: opacity .2s ease;
    color: #7ad9f8;
}

.ultra-view>.topbar .topnav .topnav__cta {
    position: relative;
    padding: 10px 12px;
    border-radius: 26px;
    background: var(--ink);
    opacity: 1;
    transition: transform 0.17s ease-out;
    background-color: hsl(139.41deg 58.62% 54.51%);
    background-image: none;
    border-color: hsl(139.41deg 58.62% 54.51%);
    color: #000000;
    box-shadow: 0 12px 30px rgba(0,0,0,.20);
}

.ultra-view>.topbar .topnav .topnav__cta::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.17s ease-out;
    box-shadow: 0 3px 23px -3px rgba(0,0,0,0.25);
}

.ultra-view>.topbar .mobile-topbar-actions {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
}

.ultra-view>.topbar .mobile-menu-toggle,
.ultra-view>.topbar .mobile-topbar-cta {
    min-height: 38px;
    padding: 0 13px;
    border: 1px solid;
    border-radius: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 10.5px;
    font-weight: 900;
    white-space: nowrap;
}

.ultra-view>.topbar .mobile-menu-toggle {
    appearance: none;
    background: none hsl(227.37deg 12.26% 30.39%);
    letter-spacing: .06em;
    color: #ffffff;
    border-color: hsl(227.37deg 12.26% 30.39%);
}

.ultra-view>.topbar .mobile-topbar-cta {
    background: var(--ink);
    letter-spacing: 0;
    background-color: hsl(139.41deg 58.62% 54.51%);
    background-image: none;
    border-color: hsl(139.41deg 58.62% 54.51%);
    color: #000000;
    box-shadow: 0 12px 30px rgba(0,0,0,.20);
}

.ultra-view>.topbar .mobile-menu-panel {
    position: absolute;
    left: 50%;
    top: calc(100% + 8px);
    width: min(420px, calc(100% - 25px));
    padding: 10px;
    border-radius: 22px;
    display: grid;
    gap: 4px;
    background: none #1e1f26;
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, -8px);
    transition: opacity .2s ease, transform .2s ease, visibility 0s linear .2s;
    color: #ffffff;
    border-color: #454856;
}

.ultra-view>.topbar.is-mobile-menu-open .mobile-menu-panel {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translate(-50%, 0);
    transition-delay: 0s;
}

.ultra-view>.topbar .mobile-menu-panel a {
    min-height: 54px;
    padding: 0 14px;
    border: 0;
    border-radius: 14px;
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 14px;
    font-weight: 820;
    color: #e8e9ee;
}

.ultra-view>.topbar .mobile-menu-panel a:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: -2px;
    height: 1px;
    background: none rgba(77,191,239,0.1);
}

.ultra-view>.topbar .mobile-menu-panel__icon {
    flex: 0 0 auto;
    width: 34px;
    height: 34px;
    border: 1px solid #454856;
    border-radius: 11px;
    display: grid;
    place-items: center;
    background: none hsl(222.86deg 13.73% 20%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.92);
    color: var(--fortress-muted);
}

.ultra-view>.topbar .mobile-menu-panel__icon svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

@media (hover: none) and (pointer: coarse) {
:focus:not(:focus-visible) {
    outline: 0;
}

}
html,
body {
    height: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-touch-callout: none;
    margin: 0;
    overflow: hidden;
    background: #f5fafe;
    color: var(--text-main);
    --ft-font-stack: Inter, -apple-system, BlinkMacSystemFont, "Noto Sans JP", "Segoe UI", sans-serif;
    font-family: var(--ft-font-stack);
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

a {
    color: inherit;
    text-decoration: none;
}

button,
textarea {
    font: inherit;
}

button {
    cursor: pointer;
}

.ultra-sandbox {
    height: 100svh;
    overflow: hidden;
    position: relative;
}

.ultra-view {
    height: 100%;
    background: var(--fortress-bg);
    overflow-x: hidden;
    overflow-y: auto;
    perspective: 8px;
    perspective-origin: 50% 50%;
    scroll-behavior: smooth;
    scroll-timeline-name: --ft-page-scroll;
}

.ultra-view[tabindex="-1"]:focus {
    outline: 0;
}

.section-3d.hero#top {
    --ms-ring-before-top-a: .060;
    --ms-ring-before-bottom-a: .040;
    --ms-ring-after-a: .40;
    --ms-ring-signal-a: .32;
    --ms-ring-matrix-a: .06;
    --ms-ring-rot: 0;
    --ms-ring-scale: 1;
    position: relative;
    transform-style: preserve-3d;
}

.hero#top .layer {
    position: absolute;
    inset: 0;
}

.hero#top .l-deep-bg {
    transform: translateZ(-11.7px) scale(2.5);
    transform-style: preserve-3d;
    z-index: 1;
    pointer-events: none;
}

.hero#top .l-mid-elements {
    transform: translateZ(-4px) scale(1.5);
    transform-style: preserve-3d;
    z-index: 2;
    pointer-events: none;
}

.hero#top .l-foreground {
    position: relative;
    transform: translateZ(0);
    z-index: 3;
}

:where(.product-intro, .features-scene, .quality-scene, .section, .premium, .cta, .footer) {
    --ft-font-stack: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
    font-family: var(--ft-font-stack);
    line-height: 1.75;
}

.parallax-scene {
    position: relative;
    transform-style: preserve-3d;
    isolation: isolate;
    overflow-x: clip;
}

.depth-layer {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.depth-front {
    position: relative;
    z-index: 5;
}

.parallax-driver {
    --depth-z: 0px;
    --depth-scale: 1;
    transform: translate3d(0, 0, var(--depth-z)) scale(var(--depth-scale));
    transform-style: preserve-3d;
}

.depth-9 {
    --depth-z: -560px;
    --depth-scale: 1.51;
}

.depth-7 {
    --depth-z: -330px;
    --depth-scale: 1.30;
}

.depth-6 {
    --depth-z: -245px;
    --depth-scale: 1.22;
}

.depth-5 {
    --depth-z: -175px;
    --depth-scale: 1.16;
}

.depth-4 {
    --depth-z: -115px;
    --depth-scale: 1.105;
}

.depth-3 {
    --depth-z: -70px;
    --depth-scale: 1.064;
}

.depth-2 {
    --depth-z: -32px;
    --depth-scale: 1.029;
}

.parallax-scene .parallax-driver,
.product-intro .parallax-driver {
    animation: ft-css-parallax-y both linear;
    animation-range: entry 0% exit 100%;
}

.product-intro .parallax-driver {
    animation-timeline: --intro-view;
}

.features-scene .parallax-driver {
    animation-timeline: --features-view;
}

[data-parallax-speed="0.34"] {
    --css-parallax-range: 465px;
}

[data-parallax-speed="0.24"] {
    --css-parallax-range: 309px;
}

[data-parallax-speed="0.20"] {
    --css-parallax-range: 275px;
}

[data-parallax-speed="0.15"] {
    --css-parallax-range: 205px;
}

[data-parallax-speed="0.11"] {
    --css-parallax-range: 150px;
}

[data-parallax-speed="0.08"] {
    --css-parallax-range: 114px;
}

[data-parallax-speed="0.07"] {
    --css-parallax-range: clamp(150px, 18vw, 200px);
}

[data-parallax-speed="0.05"] {
    --css-parallax-range: 70px;
}

[data-parallax-speed="0.04"] {
    --css-parallax-range: 100px;
}

[data-parallax-speed="-0.025"] {
    --css-parallax-range: -35px;
}

.features-scene .feature-card-layer {
    --css-parallax-range: 0px;
}

@keyframes ft-css-parallax-y {
    from {
        transform: translate3d(0, calc(-1 * var(--css-parallax-range)), var(--depth-z)) scale(var(--depth-scale));
    }

    to {
        transform: translate3d(0, var(--css-parallax-range), var(--depth-z)) scale(var(--depth-scale));
    }
}

.reveal:not(:where(.quality-score-fragment, .translator-coverage, .cta>.cta-box)) {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity .9s cubic-bezier(0.39, 0.3, 0.24, 1), transform .7s cubic-bezier(0.39, 0.3, 0.24, 1);
}

.reveal.in:not(:where(.quality-score-fragment, .translator-coverage, .cta>.cta-box)) {
    opacity: 1;
    transform: translateY(0);
}

.reveal-d1 {
    transition-delay: .1s;
}

.reveal-d2 {
    transition-delay: .2s;
}

.reveal-d3 {
    transition-delay: .3s;
}

.reveal-d4 {
    transition-delay: .4s;
}

.hero#top .btn,
.cta .btn {
    min-height: 55px;
    min-width: 190px;
    padding: 0 20px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    color: #061421;
    background: linear-gradient(135deg, var(--fortress-aqua), var(--fortress-blue));
    font-size: 15px;
    font-weight: 700;
}

.contact-box__link {
    min-height: 55px;
    min-width: 190px;
    padding: 0 20px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
    font-size: 15px;
    font-weight: 700;
}

.cta .btn {
    box-shadow: 0 5px 50px 0px rgba(98,205,124,0.2);
}

.hero#top .btn {
    font-weight: 500;
}

.hero#top .btn--primary,
.cta .btn--primary {
    position: relative;
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(0,0,0,.20);
    background-color: hsl(139.41deg 58.62% 54.51%);
    background-image: none;
    color: #000000;
    border-color: hsl(139.41deg 58.62% 54.51%);
    text-shadow: none;
}

.hero#top .btn--primary::before,
.cta .btn--primary::before {
    content: "";
    position: absolute;
    inset: -55% auto -55% -38%;
    width: 34%;
    border-radius: inherit;
    background: linear-gradient(105deg, transparent, rgba(255, 255, 255, .72), transparent);
    transform: skewX(-18deg) translateX(-220%);
    opacity: 0;
    pointer-events: none;
}

.hero#top .btn--primary>.ft-primary-cta-arrow,
.cta .btn--primary>.ft-primary-cta-arrow {
    transition: transform .16s ease;
    transform: translateX(2px);
}

.hero#top .btn--primary:active>.ft-primary-cta-arrow,
.cta .btn--primary:active>.ft-primary-cta-arrow {
    transform: translateX(4px);
}

@keyframes ft-primary-cta-sweep {
    from {
        transform: skewX(-18deg) translateX(-220%);
        opacity: 0;
    }

    18% {
        opacity: .72;
    }

    to {
        transform: skewX(-18deg) translateX(520%);
        opacity: 0;
    }
}

.section__inner {
    --section-inline-gutter: 20px;
    width: min(1180px, calc(100% - 40px));
    margin: auto;
}

.section-kicker {
    text-align: center;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .17em;
    text-transform: uppercase;
    margin: 0 auto 16px;
    color: rgb(var(--ft-v4-accent, 199,201,210));
}

.cta-box .section-kicker {
    text-align: center;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .17em;
    text-transform: uppercase;
    margin: 0 auto 16px;
    color: #b5ee8a;
}

.section-title {
    text-align: center;
    margin: 0 auto 23px;
    max-width: clamp(390px, 85vw, 800px);
    font-size: clamp(37px, 4.6vw, 65px);
    line-height: 1.07;
    letter-spacing: -.055em;
    font-weight: 700;
}

.section-lead {
    text-align: center;
    font-size: 16px;
    max-width: 812px;
    margin: 0 auto;
    line-height: 1.75;
    font-weight: 500;
    margin-top: 18px;
    color: var(--fortress-muted);
}

.product-number-parallax {
    display: flow-root;
}

.product-number {
    view-timeline-name: --meaning-view;
    view-timeline-axis: block;
    font-size: clamp(146px, 18vw, 245px);
    line-height: .72;
    font-weight: 900;
    user-select: none;
}

.product-number__text {
    display: flex;
    flex-direction: column;
    align-items: center;
    transform-origin: 50% 70%;
    animation: ft-meaning-in both linear;
    animation-timeline: --meaning-view;
    animation-range: entry 0% cover 52%;
}

.product-number__line {
    position: relative;
    display: block;
    width: max-content;
    white-space: nowrap;
    background: linear-gradient(96deg, #4dbfef 0%, #729fee 32%, #c66798 67%, #fadd5a 88%, #4dbfef 100%) transparent;
    background-size: 180% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    animation: ft-meaning-gradient both linear;
    animation-timeline: --meaning-view;
    animation-range: entry 0% cover 52%;
}

@keyframes ft-meaning-in {
    from {
        opacity: .16;
        letter-spacing: -.03em;
        transform: translate3d(0, 130px, 0) scale(.88);
    }

    to {
        opacity: 1;
        letter-spacing: -.085em;
        transform: translate3d(0, 0, 0) scale(1);
    }
}

.product-number__line:first-child {
    animation: ft-meaning-line-shift both linear,
        ft-meaning-gradient both linear;
    animation-timeline: --meaning-view, --meaning-view;
    animation-range: entry 0% cover 80%, entry 0% cover 80%;
}

@keyframes ft-meaning-line-shift {
    from {
        transform: translate3d(150px, 0, 0);
    }

    to {
        transform: translate3d(0, 0, 0);
    }
}

@keyframes ft-meaning-gradient {
    from {
        background-position: 8% 50%;
    }

    to {
        background-position: 84% 50%;
    }
}

.features-scene {
    --ft-card-flip-x: 68;
    --ft-card-flip-y: 24;
    --ft-card-lift: 92;
    --ft-card-scale: .92;
    --ft-card-opacity: .12;
    view-timeline-name: --features-view;
    z-index: 9;
    margin-top: -1px;
    padding: clamp(47px, 7.5vw, 125px) 0 clamp(108px, 13.8vw, 200px);
}

.features__back {
    inset: 4% -6% 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(150px, 26vw, 390px);
    font-weight: 960;
    letter-spacing: -.1em;
    white-space: nowrap;
    user-select: none;
    color: rgba(77, 191, 239, .060);
}

.features-marquee {
    width: 100%;
    min-width: 0;
}

.features-marquee__track {
    display: flex;
    width: max-content;
    transform: translate3d(-25%, 0, 0);
    animation: ft-features-fortress-marquee 48s linear infinite;
    animation-play-state: paused;
}

.features-marquee__group {
    display: flex;
}

.features-marquee__group>span {
    display: block;
    flex: 0 0 auto;
    padding-inline-end: .34em;
}

.features-scene.is-fortress-marquee-running .features-marquee__track {
    animation-play-state: running;
}

@keyframes ft-features-fortress-marquee {
    from {
        transform: translate3d(-25%, 0, 0);
    }

    to {
        transform: translate3d(-75%, 0, 0);
    }
}

.features__mid {
    inset: 12% -6% 2%;
}

.depth-ring {
    position: absolute;
    border-radius: 50%;
    isolation: isolate;
    border: 1px solid rgba(255, 255, 255, .08);
}

.depth-ring::before {
    content: "";
    position: absolute;
    inset: calc(-1 * var(--depth-ring-spread));
    border-radius: 50%;
    z-index: -1;
    background: var(--depth-ring-fill);
}

.depth-ring--1 {
    --depth-ring-spread: 85px;
    width: clamp(340px, 42vw, 540px);
    height: clamp(340px, 42vw, 540px);
    left: -160px;
    top: 115px;
    --depth-ring-fill: rgba(77,191,239,.027);
    border-color: rgba(77,191,239,.36);
}

.depth-ring--2 {
    --depth-ring-spread: 70px;
    width: clamp(270px, 32vw, 410px);
    height: clamp(270px, 32vw, 410px);
    right: -85px;
    bottom: 230px;
    --depth-ring-fill: rgba(186,129,184,.027);
    border-color: rgba(181,116,216,.34);
}

.feature-copy__signature {
    width: fit-content;
    margin: 0 auto 20px;
    padding: 10px 14px 9px;
    border: 1px solid #454856;
    border-radius: 26px;
    background: none hsl(222.86deg 13.73% 20%);
    font-size: 12px;
    font-weight: 600;
    line-height: 1.5;
    color: var(--fortress-muted);
}

.feature-copy .section-lead {
    max-width: 830px;
}

.feature-card-grid {
    position: relative;
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-rows: 1fr;
    gap: 18px;
    z-index: 4;
    margin-top: 60px;
}

.feature-card-layer {
    --depth-z: 0px;
    --depth-scale: 1;
    position: relative;
    pointer-events: none;
}

.depth-card {
    --card-direction: -1;
    position: relative;
    height: 100%;
    opacity: var(--ft-card-opacity);
    transform: perspective(1000px) translate3d(0, calc(var(--ft-card-lift) * 1px), 0) rotateX(calc(var(--ft-card-flip-x) * 1deg)) rotateY(calc(var(--card-direction) * var(--ft-card-flip-y) * 1deg)) scale(var(--ft-card-scale));
    transform-origin: 50% 72%;
    transform-style: preserve-3d;
    backface-visibility: hidden;
    animation: ft-depth-card-css 1s both linear;
    animation-timeline: view(block);
    animation-range: entry 0% cover 42%;
    letter-spacing: -0.2px;
    color: #ffffff;
    background-color: transparent;
    background-image: none;
}

.feature-card-layer--2 .depth-card,
.feature-card-layer--4 .depth-card,
.feature-card-layer--6 .depth-card {
    --card-direction: 1;
}

@keyframes ft-depth-card-css {
    from {
        opacity: var(--ft-card-opacity);
        transform: perspective(1000px) translate3d(0, calc(var(--ft-card-lift) * 1px), 0) rotateX(calc(var(--ft-card-flip-x) * 1deg)) rotateY(calc(var(--card-direction) * var(--ft-card-flip-y) * 1deg)) scale(var(--ft-card-scale));
    }

    to {
        opacity: 1;
        transform: perspective(1000px) translate3d(0, 0, 0) rotateX(0deg) rotateY(0deg) scale(1);
    }
}

.depth-card__surface {
    position: relative;
    height: 100%;
    padding: clamp(20px, 2vw, 26px);
    border-radius: 26px;
    background: radial-gradient(ellipse at 14% 12%, rgba(var(--ft-v4-accent, 110,176,214), .17), transparent 38%),
        radial-gradient(ellipse at 92% 88%, rgba(var(--ft-v4-accent, 110,176,214), .06), transparent 45%),
        linear-gradient(145deg, #32343c, #2d3039 70%) #2d3039;
    border: 1px solid rgba(var(--ft-v4-accent, 110,176,214), .32);
}

.feature-card-layer--1 {
    z-index: 6;
    --ft-v4-accent: 98,205,124;
}

.feature-card-layer--5 {
    z-index: 6;
    --ft-v4-accent: 255,184,130;
}

.feature-card-layer--2 {
    z-index: 7;
    --ft-v4-accent: 77,191,239;
}

.feature-card-layer--4 {
    z-index: 7;
    --ft-v4-accent: 234,138,181;
}

.feature-card-layer--3 {
    z-index: 5;
    --ft-v4-accent: 181,116,216;
}

.feature-card-layer--6 {
    z-index: 5;
    --ft-v4-accent: 255,216,102;
}

.depth-card--core .depth-card__surface {
    background: radial-gradient(ellipse at 14% 12%, rgba(var(--ft-v4-accent, 98,205,124), .18), transparent 37%),
        radial-gradient(ellipse at 92% 88%, rgba(var(--ft-v4-accent, 98,205,124), .06), transparent 43%),
        linear-gradient(145deg, #32353d, #2d3039 72%) #2d3039;
    border-color: rgba(var(--ft-v4-accent, 98,205,124), .32);
}

.feature-card__eyebrow {
    margin: 0 0 13px;
    font-weight: 900;
    letter-spacing: .16em;
    text-transform: uppercase;
}

.depth-card--core .feature-card__eyebrow {
    color: rgb(var(--ft-v4-accent, 199,201,210));
}

.icon {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    margin: 10px;
    font-size: 22px;
    background: linear-gradient(135deg, rgba(98,205,124,0.18), rgba(77,191,239,0.18)) transparent;
    border: 1px solid rgba(255, 255, 255, .12);
}

.depth-card h3 {
    font-size: 20px;
    margin: 0 0 10px;
    letter-spacing: -.028em;
    line-height: 1.3;
    color: #ffffff;
}

.depth-card p {
    margin: 0;
    font-size: 13px;
    line-height: 1.68;
    font-weight: 500;
    color: var(--fortress-muted);
}

.quality-scene {
    position: relative;
    z-index: 8;
    padding: clamp(65px, 9vw, 100px) 0 clamp(78px, 12vw, 105px);
}

.quality__deep {
    inset: -20% -4% -14%;
    overflow: hidden;
    background: none #181a1e;
}

.quality__deep::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255, 255, 255, .027) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .027) 1px, transparent 1px);
    background-size: 34px 34px;
    mask-image: linear-gradient(180deg, transparent 2%, #000 17%, #000 83%, transparent 98%);
    opacity: .62;
}

.quality-depth-type {
    position: absolute;
    font-size: clamp(118px, 18vw, 286px);
    line-height: .78;
    font-weight: 960;
    letter-spacing: -.085em;
    white-space: nowrap;
    user-select: none;
    color: rgba(255, 255, 255, .032);
}

.quality-depth-type--1 {
    left: -4%;
    top: 17.7%;
}

.quality-depth-type--2 {
    right: -7%;
    bottom: 10.5%;
}

.quality__mid {
    inset: -9% -9%;
    overflow: hidden;
}

.quality-orbit,
.quality-crosshair {
    position: absolute;
    border-radius: 50%;
}

.quality-orbit {
    border: 1px solid rgba(255, 255, 255, .075);
    opacity: .34;
    transform: rotate(var(--quality-acquire-rotate)) scale(var(--quality-acquire-scale));
    box-shadow: 0 0 0 76px rgba(255,255,255,0.01),
        0 0 0 152px rgba(255,255,255,0.005);
}

.quality-orbit::after {
    content: "";
    position: absolute;
    inset: 12%;
    border: 1px dashed rgba(199,201,210,.10);
    border-radius: inherit;
}

.quality-orbit--1 {
    --quality-acquire-rotate: -9deg;
    --quality-acquire-scale: .96;
    width: 610px;
    height: 610px;
    right: -65px;
    top: 2%;
}

.quality-orbit--2 {
    --quality-acquire-rotate: 8deg;
    --quality-acquire-scale: .95;
    width: 420px;
    height: 420px;
    left: -70px;
    bottom: 8%;
}

.quality-crosshair {
    width: 150px;
    height: 150px;
    border: 1px solid rgba(199,201,210,.12);
    opacity: .18;
    transform: translate3d(var(--quality-acquire-x), var(--quality-acquire-y), 0) scale(.90);
}

.quality-crosshair::before,
.quality-crosshair::after {
    content: "";
    position: absolute;
    background: rgba(145, 170, 255, .10);
}

.quality-crosshair::before {
    left: 50%;
    top: -36px;
    width: 1px;
    height: calc(100% + 72px);
    background-color: rgba(199,201,210,.10);
    background-image: none;
}

.quality-crosshair::after {
    top: 50%;
    left: -36px;
    width: calc(100% + 72px);
    height: 1px;
    background-color: rgba(199,201,210,.10);
    background-image: none;
}

.quality-crosshair--1 {
    --quality-acquire-x: -10px;
    --quality-acquire-y: 7px;
    left: 13%;
    top: 21%;
}

.quality-crosshair--2 {
    --quality-acquire-x: 11px;
    --quality-acquire-y: -8px;
    right: 18%;
    bottom: 22%;
}

.quality-score-fragment {
    position: absolute;
    font-size: clamp(50px, 7vw, 104px);
    font-weight: 950;
    letter-spacing: -.07em;
    font-variant-numeric: tabular-nums;
    color: rgba(77, 191, 239, .09);
}

.quality-score-fragment--1 {
    right: 12%;
    top: 18%;
}

.quality-score-fragment--2 {
    left: 7%;
    top: 48%;
}

.quality-score-fragment--3 {
    right: 7%;
    bottom: 20%;
}

.quality-score-fragment::after {
    position: absolute;
    inset: 0;
    color: transparent;
    opacity: 0;
    pointer-events: none;
    text-shadow: 0 0 22px rgba(98,205,124,.28);
}

.quality-score-fragment--1::after {
    content: "98.7";
}

.quality-score-fragment--2::after {
    content: "98.0";
}

.quality-score-fragment--3::after {
    content: "97.3";
}

.quality-scene:has(.quality-intro__problem.in) .quality-orbit {
    animation: ft-quality-orbit-acquire 1.05s cubic-bezier(.16, 1, .3, 1) forwards;
}

.quality-scene:has(.quality-intro__problem.in) .quality-crosshair {
    animation: ft-quality-crosshair-acquire .88s .18s cubic-bezier(.16, 1, .3, 1) forwards;
}

.quality-scene:has(.quality-intro__problem.in) .quality-score-fragment--1::after {
    animation: ft-quality-score-glow 1s 1s cubic-bezier(0.22, 0.92, 0.58, 1);
}

.quality-score-fragment--2.reveal.in::after,
.quality-score-fragment--3.reveal.in::after {
    animation: ft-quality-score-glow 1s 0.35s cubic-bezier(0.22, 0.92, 0.58, 1);
}

@keyframes ft-quality-orbit-acquire {
    from {
        opacity: .34;
        transform: rotate(var(--quality-acquire-rotate)) scale(var(--quality-acquire-scale));
    }

    to {
        opacity: 1;
        transform: none;
    }
}

@keyframes ft-quality-crosshair-acquire {
    from {
        opacity: .18;
        transform: translate3d(var(--quality-acquire-x), var(--quality-acquire-y), 0) scale(.90);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

@keyframes ft-quality-score-glow {
    0% {
        opacity: 0;
    }

    30% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.quality-intro {
    text-align: center;
}

.quality-intro__problem {
    width: min(880px, 100%);
    margin: 0 auto;
    font-size: clamp(21px, 2.2vw, 29px);
    line-height: 1.55;
    font-weight: 900;
    letter-spacing: -.03em;
    color: #ffffff;
}

.quality-evaluation-proof {
    width: min(1000px, 100%);
    margin: 42px auto;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
    gap: 12px;
    text-align: left;
}

.quality-evaluation-proof article {
    position: relative;
    overflow: hidden;
    padding: 26px;
    border: 1px solid #454856;
    border-radius: 16px;
    background: radial-gradient(ellipse at 14% 10%, rgba(255,255,255,.032), transparent 36%),
        radial-gradient(ellipse at 94% 90%, rgba(199,201,210,.025), transparent 45%),
        linear-gradient(145deg, #30323a, #2d3039 76%) #2d3039;
    transform: translateY(0);
    opacity: 1;
    box-shadow: 0 28px 82px rgba(0,0,0,0.22);
}

.quality-evaluation-proof article::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, transparent 34%, rgba(255,255,255,.05) 50%, transparent 65%) transparent;
    transform: translateX(-130%);
}

.quality-evaluation-proof article.in::after {
    animation: quality-proof-scan 1.7s .45s ease-out both;
}

@keyframes quality-proof-scan {
    to {
        transform: translateX(130%);
    }
}

.quality-evaluation-proof span,
.quality-evaluation-proof strong,
.quality-evaluation-proof small {
    display: block;
}

.quality-evaluation-proof span {
    color: var(--fortress-aqua);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.quality-evaluation-proof strong {
    margin-top: 8px;
    font-size: 20px;
    line-height: 1.45;
    font-weight: 700;
}

.quality-evaluation-proof small {
    margin-top: 7px;
    font-size: 13px;
    line-height: 1.68;
    font-weight: 600;
    color: var(--fortress-muted);
}

.quality-eyebrow {
    margin: 0 0 8px;
    color: var(--fortress-aqua);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .17em;
    text-transform: uppercase;
}

.benchmark-browser {
    position: relative;
    margin-top: 42px;
    padding: clamp(26px, 3.8vw, 32px);
    overflow: hidden;
    border: 1px solid #454856;
    border-radius: 26px;
    background: radial-gradient(ellipse at 14% 10%, rgba(255,255,255,.032), transparent 36%),
        radial-gradient(ellipse at 94% 90%, rgba(199,201,210,.025), transparent 45%),
        linear-gradient(145deg, #30323a, #2d3039 76%) #2d3039;
    box-shadow: 0 28px 82px rgba(0,0,0,0.22);
}

.benchmark-browser__result>p:last-child {
    margin: 10px 0 0;
    font-size: 13px;
    line-height: 1.75;
    font-weight: 600;
    color: var(--fortress-muted);
}

.benchmark-browser__head {
    position: relative;
    z-index: 1;
}

.benchmark-browser__result h3 {
    margin: 0;
    font-size: clamp(22px, 2.4vw, 32px);
    line-height: 1.22;
    letter-spacing: -.04em;
    color: #ffffff;
}

.quality-stack-chart {
    --quality-stack-inline-pad: clamp(18px, 2vw, 22px);
    margin-top: 26px;
    padding: var(--quality-stack-inline-pad);
    border: 1px solid #454856;
    border-radius: 26px;
    background: none #1e1f26;
    box-shadow: 0 24px 60px rgba(0,0,0,0.22);
}

.quality-stack-chart__viewport {
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 6px;
    scrollbar-width: none;
    scroll-snap-type: x proximity;
    overscroll-behavior-inline: contain;
}

.quality-stack-chart__viewport::-webkit-scrollbar,
.benchmark-rank-tabs--compact::-webkit-scrollbar,
.plan-rail::-webkit-scrollbar {
    display: none;
}

.quality-stack-chart__scrollbar {
    height: 9px;
    margin: var(--rail-margin, 14px 2px 0);
    padding: 2.5px;
    overflow: hidden;
    border-radius: 26px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.045),
        inset 0 0 16px rgba(0,0,0,0.2);
    background-color: #1e1f26;
    background-image: none;
}

.plan-rail__scrollbar {
    height: 9px;
    margin: var(--rail-margin, 14px 2px 0);
    padding: 2.5px;
    overflow: hidden;
    border-radius: 26px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.045),
        inset 0 0 16px rgba(0,0,0,0.2);
}

.mobile-rail__scrollbar,
.benchmark-rank-tabs__scrollbar {
    height: 9px;
    margin: var(--rail-margin, 14px 2px 0);
    padding: 2.5px;
    overflow: hidden;
    border-radius: 26px;
}

.quality-stack-chart__scrollbar-thumb,
.plan-rail__scrollbar-thumb,
.mobile-rail__scrollbar-thumb {
    width: 38%;
    height: 100%;
    display: block;
    border-radius: inherit;
    background-color: transparent;
    background-image: var(--rail-thumb-background, linear-gradient(90deg, rgba(98,205,124,0.92), rgba(77,191,239,0.92) 70%, rgba(198,103,152,0.9)));
    box-shadow: var(--rail-thumb-shadow,
            0 0 16px rgba(98,205,124,0.24),
            inset 0 1px 0 rgba(255,255,255,0.52));
}

.benchmark-rank-tabs__scrollbar-thumb {
    width: 38%;
    height: 100%;
    display: block;
    border-radius: inherit;
}

.mobile-rail__scrollbar {
    display: none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.045),
        inset 0 0 16px rgba(0,0,0,0.2);
}

.benchmark-inspector__content-scrollbar {
    display: none;
    background-color: #1e1f26;
    background-image: none;
}

.quality-stack-chart__viewport.is-mouse-draggable {
    cursor: grab;
    scroll-snap-type: none;
}

.quality-stack-chart__viewport.is-mouse-draggable.is-dragging {
    cursor: grabbing;
    user-select: none;
}

.quality-stack-chart__viewport.is-mouse-draggable.is-dragging .quality-stack-bar {
    pointer-events: none;
}

.quality-stack-chart__bars {
    min-width: max-content;
    display: flex;
    gap: 18px;
    padding: 0 8px 0 2px;
    background-image: linear-gradient(to top, rgba(255, 255, 255, .08) 1px, transparent 1px),
        linear-gradient(to top, rgba(255, 255, 255, .08) 1px, transparent 1px),
        linear-gradient(to top, rgba(255, 255, 255, .08) 1px, transparent 1px),
        linear-gradient(to top, rgba(255, 255, 255, .08) 1px, transparent 1px);
    background-size: 100% 25%, 100% 50%, 100% 75%, 100% 100%;
    background-position: left bottom;
    background-repeat: no-repeat;
}

.quality-stack-bar {
    position: relative;
    width: clamp(98px, calc(72px + 4.5vw), 112px);
    display: grid;
    grid-template-rows: clamp(22px, 2vw, 24px) clamp(240px, 20vw, 268px) clamp(66px, 5vw, 68px);
    gap: 6px;
    padding: 0;
    border: 0;
    background: none;
    text-align: center;
    scroll-snap-align: start;
}

.quality-stack-bar__value {
    align-self: end;
    font-size: 15px;
    line-height: 1;
    font-weight: 850;
    letter-spacing: -.02em;
    font-variant-numeric: tabular-nums;
    color: #ffffff;
}

.quality-stack-bar__track {
    position: relative;
    padding: 0 clamp(9px, 1vw, 11px) 8px;
    display: flex;
    align-items: end;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 16px;
    background: rgba(255, 255, 255, .04);
    transition: border-color .25s;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.quality-stack-bar__track::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease;
    box-shadow: 0 20px 38px rgba(0,0,0,0.2),
        0 0 18px rgba(98,205,124,0.1),
        inset 0 1px 0 rgba(255,255,255,0.042);
}

.quality-stack-bar__baseline {
    position: absolute;
    left: 9px;
    right: 9px;
    bottom: 8px;
    height: 1px;
    background: rgba(255, 255, 255, .12);
}

.quality-stack-bar__stack {
    width: 100%;
    max-width: clamp(34px, 3vw, 42px);
    display: flex;
    flex-direction: column;
    justify-content: end;
    overflow: hidden;
    border-radius: 12px 12px 5px 5px;
    transform: scaleY(0);
    transform-origin: 50% 100%;
    box-shadow: 0 18px 30px rgba(0,0,0,0.18);
}

.quality-stack-chart.is-chart-active .quality-stack-bar__stack {
    animation: quality-stack-rise .78s cubic-bezier(.22, .61, .36, 1) forwards;
    animation-delay: calc(var(--rank-index, 0) * 40ms + 120ms);
}

.quality-stack-chart.is-chart-active .quality-stack-bar__stack.is-rise-complete,
.quality-stack-chart .quality-stack-bar:nth-child(n+9) .quality-stack-bar__stack {
    animation: none;
    transform: none;
}

@keyframes quality-stack-rise {
    from {
        transform: scaleY(0);
    }

    to {
        transform: none;
    }
}

.quality-stack-bar__segment {
    position: relative;
    width: 100%;
    min-height: 3px;
    cursor: pointer;
    transition: filter .16s ease,
        opacity .16s ease;
}

.quality-stack-bar__segment::after {
    content: "";
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity .16s ease;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.38);
}

@media (hover: none) and (pointer: coarse) and (any-hover: none) {
html.ft-touch-device .quality-stack-bar__segment:active,
html.ft-touch-device .quality-stack-bar[aria-selected="true"] .quality-stack-bar__segment.is-selected {
    z-index: 1;
    filter: brightness(1.28) saturate(1.14);
}

html.ft-touch-device .quality-stack-bar__segment:active::after,
html.ft-touch-device .quality-stack-bar[aria-selected="true"] .quality-stack-bar__segment.is-selected::after {
    opacity: 1;
}

html.ft-touch-device .quality-stack-bar[aria-selected="true"] .quality-stack-bar__stack:has(.quality-stack-bar__segment.is-selected) .quality-stack-bar__segment:not(.is-selected):not(:active) {
    opacity: .72;
    filter: brightness(.78) saturate(.82);
}

}
.quality-stack-bar__segment.is-test01 {
    background: none #62cd7c;
}

.quality-stack-chart__legend .is-test01 {
    background: linear-gradient(180deg, rgba(98,205,124,0.96), rgba(98,205,124,0.92)) transparent;
}

.quality-stack-bar__segment.is-test02 {
    background: none #4dbfef;
}

.quality-stack-chart__legend .is-test02 {
    background: linear-gradient(180deg, rgba(77,191,239,0.96), rgba(77,191,239,0.92)) transparent;
}

.quality-stack-bar__segment.is-test03 {
    background: none #c66798;
}

.quality-stack-chart__legend .is-test03 {
    background: linear-gradient(180deg, rgba(198,103,152,0.96), rgba(198,103,152,0.92)) transparent;
}

.quality-stack-bar__name {
    display: block;
    font-size: 10.5px;
    line-height: 1.35;
    overflow-wrap: anywhere;
    color: var(--fortress-muted);
}

.quality-stack-bar__badge {
    position: absolute;
    top: 31px;
    right: 8px;
    min-width: 34px;
    height: 24px;
    padding: 0 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 26px;
    background: none #62cd7c;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .14em;
    color: #131417;
    box-shadow: 0 8px 16px rgba(0,0,0,.13);
}

.quality-stack-bar.is-reference .quality-stack-bar__track {
    background: rgba(255, 255, 255, .03);
    border-color: rgba(164,170,182,0.06);
}

.quality-stack-bar[aria-selected="true"] .quality-stack-bar__track {
    border-color: #62cd7c;
    box-shadow: 0 0 0 2px rgba(98,205,124,.30);
}

.quality-stack-bar[aria-selected="true"] .quality-stack-bar__value,
.quality-stack-bar[aria-selected="true"] .quality-stack-bar__name {
    color: #ffffff;
}

.quality-stack-bar.is-fortress .quality-stack-bar__name-service {
    font-weight: 850;
    color: #62cd7c;
    text-shadow: none;
}

.quality-stack-bar.is-fortress .quality-stack-bar__name-separator,
.quality-stack-bar.is-fortress .quality-stack-bar__name-model {
    font-weight: 600;
    text-shadow: none;
    color: var(--fortress-muted);
}

.quality-stack-bar.is-fortress[aria-selected="true"] .quality-stack-bar__name-separator,
.quality-stack-bar.is-fortress[aria-selected="true"] .quality-stack-bar__name-model {
    color: #ffffff;
}

.quality-stack-chart__legend {
    margin: 0 0 18px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px 16px;
    font-size: 13px;
    color: var(--fortress-muted);
}

.quality-stack-chart__legend span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.quality-stack-chart__legend i {
    width: 16px;
    height: 16px;
    border-radius: 4.5px;
}

.quality-stack-chart__legend .is-fortress {
    min-width: 32px;
    height: 20px;
    padding: 0 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 26px;
    background: none #62cd7c;
    font-size: 9px;
    line-height: 1;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .12em;
    color: #131417;
    box-shadow: 0 8px 16px rgba(0,0,0,.13);
}

.quality-stack-chart__direction {
    position: relative;
    margin: 0 6px 14px;
    padding-bottom: 9px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 850;
    letter-spacing: .08em;
    color: var(--fortress-muted);
}

.quality-stack-chart__direction::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 1px;
    left: 0;
    height: 1px;
    background: linear-gradient(90deg, rgba(77,191,239,.57), rgba(199,201,210,.25)) transparent;
}

.quality-stack-chart__direction::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: -2px;
    border-top: 4px solid transparent;
    border-bottom: 4px solid transparent;
    border-left: 6px solid rgba(224, 241, 250, .24);
}

.quality-stack-chart__direction span:first-child {
    color: #7ad9f8;
}

.benchmark-inspector {
    margin-top: 22px;
    padding: clamp(20px, 3vw, 32px);
    border: 1px solid #454856;
    border-radius: 26px;
    background: none #1e1f26;
    box-shadow: 0 26px 72px rgba(0,0,0,0.22),
        inset 0 1px 0 rgba(255,255,255,0.045);
}

.benchmark-inspector__selector {
    margin-bottom: 22px;
    padding-bottom: 18px;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "tabs"
        "scrollbar";
    gap: 10px;
    border-bottom: 1px solid rgba(255, 255, 255, .09);
}

.benchmark-rank-tabs--compact {
    grid-area: tabs;
    min-width: 0;
    display: flex;
    flex-wrap: nowrap;
    gap: 4px;
    overflow-x: auto;
    padding: 5px;
    border: 1px solid #454856;
    border-radius: 10px;
    background: none #131417;
    scrollbar-width: none;
    overscroll-behavior-inline: contain;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.035),
        inset 0 0 18px rgba(0,0,0,0.12);
}

.benchmark-rank-tabs__scrollbar {
    --rail-margin: 0;
    grid-area: scrollbar;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.045),
        inset 0 0 16px rgba(0,0,0,0.2);
    background-color: #1e1f26;
    background-image: none;
}

.benchmark-rank-tabs__scrollbar-thumb {
    background-color: transparent;
    background-image: var(--rail-thumb-background, linear-gradient(90deg, rgba(98,205,124,0.92), rgba(77,191,239,0.92) 70%, rgba(198,103,152,0.9)));
    box-shadow: var(--rail-thumb-shadow,
            0 0 16px rgba(98,205,124,0.24),
            inset 0 1px 0 rgba(255,255,255,0.52));
    --rail-thumb-background: linear-gradient(90deg, #62cd7c, #62cd7c);
    --rail-thumb-shadow: 0 0 12px rgba(98, 205, 124, .12);
}

.benchmark-rank-chip {
    position: relative;
    flex: 0 0 auto;
    min-width: 64px;
    min-height: 42px;
    padding: 8px 12px;
    display: grid;
    place-items: center;
    border: 1px solid transparent;
    border-radius: 14px;
    background: transparent;
    box-shadow: none;
    transition: color .2s ease, background .2s ease, border-color .2s ease;
    color: var(--fortress-muted);
}

.benchmark-rank-chip.is-podium {
    min-width: 76px;
    padding-left: 30px;
}

.benchmark-rank-chip__badge {
    position: absolute;
    left: 7px;
    top: 50%;
    width: 20px;
    height: 20px;
    border: 1px solid rgba(255, 255, 255, .52);
    border-radius: 26px;
    display: grid;
    place-items: center;
    transform: translateY(-50%);
    font-size: 10px;
    line-height: 1;
    font-weight: 950;
    letter-spacing: 0;
    box-shadow: 0 4px 10px rgba(0,0,0,0.22),
        inset 0 1px 0 rgba(255,255,255,0.68);
}

.benchmark-rank-chip.is-rank-1 .benchmark-rank-chip__badge {
    color: #4a2d00;
    border-color: rgba(255, 239, 151, .86);
    background: linear-gradient(145deg, #fff4a9, #d99c24 72%, #aa6f0d);
}

.benchmark-rank-chip.is-rank-2 .benchmark-rank-chip__badge {
    color: #243442;
    background: linear-gradient(145deg, #f8fbff, #b8c4d1 70%, #4dbfef) transparent;
    border-color: rgba(69,72,86,0.82);
}

.benchmark-rank-chip.is-rank-3 .benchmark-rank-chip__badge {
    color: #3d1e0c;
    border-color: rgba(255, 213, 182, .74);
    background: linear-gradient(145deg, #f6c39d, #b96f40 70%, #844321);
}

.benchmark-rank-chip b {
    font-size: 12px;
    line-height: 1;
}

.benchmark-rank-chip.is-fortress {
    color: #62cd7c;
}

.benchmark-rank-chip.is-reference {
    color: var(--fortress-muted);
}

.benchmark-rank-chip[aria-selected="true"] {
    background: none #62cd7c;
    color: #131417;
    border-color: #62cd7c;
    box-shadow: 0 6px 16px rgba(0,0,0,.18);
}

.benchmark-rank-chip.is-fortress[aria-selected="true"] {
    background: none #62cd7c;
    color: #131417;
    border-color: #62cd7c;
    box-shadow: 0 6px 16px rgba(0,0,0,.18);
}

.benchmark-inspector__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
}

.benchmark-inspector__title-group {
    min-width: 0;
    flex: 1 1 auto;
}

.benchmark-inspector__eyebrow-row {
    min-width: 0;
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.benchmark-inspector__eyebrow-row .quality-eyebrow {
    margin: 0;
}

.benchmark-inspector__eyebrow-row .badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 20px;
    padding: 3px 8px;
    border-radius: 999px;
    font-size: 8px;
    line-height: 1;
    font-weight: 900;
    letter-spacing: .05em;
    white-space: nowrap;
}

.benchmark-inspector__eyebrow-row .b-ft {
    background: none #62cd7c;
    color: #131417;
}

.benchmark-inspector__eyebrow-row .b-llm {
    background: none #c66798;
    color: #131417;
}

.benchmark-inspector__eyebrow-row .b-web {
    background: none #4dbfef;
    color: #131417;
}

.benchmark-inspector__eyebrow-row .b-app {
    background: none #fadd5a;
    color: #131417;
}

.benchmark-inspector__head h4 {
    height: 2.44em;
    margin: 0;
    overflow-y: auto;
    font-size: clamp(21px, 2.5vw, 31px);
    line-height: 1.22;
    letter-spacing: -.04em;
    color: #ffffff;
}

.benchmark-inspector__score {
    flex: 0 0 auto;
    text-align: right;
}

.benchmark-inspector__score>span {
    display: block;
    font-size: 10px;
    line-height: 1.3;
    font-weight: 900;
    letter-spacing: .08em;
    color: var(--fortress-muted);
}

.benchmark-inspector__score>strong {
    font-size: 42px;
    line-height: 1;
    font-weight: 960;
    letter-spacing: -.06em;
    color: #ffffff;
}

.benchmark-inspector__score>small {
    font-size: 10px;
    font-weight: 800;
    color: var(--fortress-muted);
}

.benchmark-test-tabs {
    margin-top: 22px;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.benchmark-test-tabs button {
    position: relative;
    min-width: 0;
    min-height: 68px;
    padding: 12px 14px;
    overflow: hidden;
    isolation: isolate;
    border: 1px solid #454856;
    border-radius: 16px;
    background: none hsl(222.86deg 13.73% 20%);
    text-align: left;
    transition: border-color .2s ease, color .2s ease;
    --score-accent: 77, 191, 239;
    color: var(--fortress-muted);
}

.benchmark-test-tabs button::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    background: linear-gradient(145deg, rgba(var(--score-accent), .067), rgba(255, 255, 255, .0103));
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s ease;
}

.benchmark-test-tabs button span,
.benchmark-test-tabs button b {
    position: relative;
    z-index: 1;
    display: block;
}

.benchmark-test-tabs button span {
    font-size: 10px;
    line-height: 1.25;
    font-weight: 900;
    letter-spacing: .06em;
}

.benchmark-test-tabs button b {
    margin-top: 5px;
    font-size: 19px;
    line-height: 1;
    font-weight: 950;
    font-variant-numeric: tabular-nums;
}

.benchmark-inspector__grid {
    margin-top: 12px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
    align-items: start;
    gap: 12px;
}

.benchmark-axis-stack {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 12px;
}

.benchmark-reference {
    height: 148px;
    padding: 12px 18px;
    display: grid;
    grid-template-rows: auto auto;
    align-content: safe center;
    overflow-y: auto;
    border: 1px solid #454856;
    border-radius: 16px;
    background: none #1e1f26;
}

.benchmark-reference__label {
    display: block;
    font-size: 9px;
    line-height: 1.3;
    font-weight: 900;
    letter-spacing: .08em;
    color: var(--fortress-muted);
}

.benchmark-reference p {
    margin: 12px 0 0;
    font-size: 10.5px;
    line-height: 1.68;
    font-weight: 500;
    white-space: pre-line;
    color: var(--fortress-muted);
}

.benchmark-reference .benchmark-evidence-link {
    color: var(--fortress-blue);
    text-decoration-line: underline;
    text-decoration-color: transparent;
    text-decoration-thickness: 1px;
    text-underline-offset: .18em;
    transition: text-decoration-color .18s ease;
}

.benchmark-reference .benchmark-evidence-link:focus-visible {
    outline: 2px solid var(--fortress-blue);
    outline-offset: 2px;
    border-radius: 2px;
    text-decoration-color: currentColor;
}

.axis-breakdown,
.evaluation-commentary,
.third-party-verdict,
.translation-inspector article {
    border: 1px solid rgba(255, 255, 255, .09);
}

.axis-breakdown,
.evaluation-commentary,
.translation-inspector article {
    background: rgba(255, 255, 255, .035);
}

.axis-breakdown {
    height: 202px;
    padding: 20px;
    border-radius: 16px;
    align-content: center;
    background-color: #1e1f26;
    background-image: none;
    border-color: #454856;
}

.evaluation-commentary h5 {
    margin: 0 0 4px;
    font-size: 12px;
    color: #ffffff;
}

.axis-row {
    margin-top: 12px;
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) 52px;
    gap: 5px;
    align-items: center;
}

.axis-row:first-child {
    margin-top: 0;
}

.axis-row>span:first-child {
    font-size: 9px;
    line-height: 1.35;
    font-weight: 600;
    color: var(--fortress-muted);
}

.axis-row__track {
    height: 6px;
    overflow: hidden;
    border-radius: 26px;
    background: rgba(255, 255, 255, .075);
}

.axis-row__track i {
    display: block;
    width: var(--axis-width);
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #62cd7c, #4dbfef, #c66798) transparent;
    transform: scaleX(0);
    transform-origin: 0 50%;
}

.quality-scene.is-quality-active .axis-row__track i {
    animation: quality-axis-fill .85s calc(var(--axis-index) * 55ms) cubic-bezier(.22, .61, .36, 1) forwards;
}

@keyframes quality-axis-fill {
    to {
        transform: scaleX(1);
    }
}

.axis-row b {
    font-size: 12px;
    font-weight: 950;
    text-align: right;
    font-variant-numeric: tabular-nums;
    color: #ffffff;
}

.evaluation-verdict {
    display: grid;
    grid-template-rows: auto auto;
    align-content: start;
    gap: 12px;
}

.evaluation-commentary {
    height: 202px;
    padding: 20px;
    overflow-y: auto;
    border-radius: 16px;
    align-content: center;
    background-color: #1e1f26;
    background-image: none;
    border-color: #454856;
}

.evaluation-commentary p {
    margin: 0;
    font-size: 12px;
    line-height: 1.78;
    font-weight: 600;
    color: var(--fortress-muted);
}

.third-party-verdict {
    height: 148px;
    padding: 18px;
    display: grid;
    align-content: start;
    gap: 8px;
    overflow-y: auto;
    border-radius: 16px;
    background: radial-gradient(ellipse at 14% 10%, rgba(255,255,255,.032), transparent 36%),
        radial-gradient(ellipse at 94% 90%, rgba(199,201,210,.025), transparent 45%),
        linear-gradient(145deg, #30323a, #2d3039 76%) #2d3039;
    border-color: #454856;
}

.third-party-verdict__head {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.third-party-verdict__title {
    font-size: 10px;
    line-height: 1.3;
    font-weight: 900;
    letter-spacing: .08em;
    color: var(--fortress-muted);
}

.third-party-verdict__status {
    flex: none;
    padding: 3px 7px;
    border: 1px solid #454856;
    border-radius: 999px;
    background: none #1e1f26;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 900;
    letter-spacing: .05em;
    color: #62cd7c;
    text-shadow: none;
}

.third-party-verdict__status.is-cancelled {
    background: rgba(255, 255, 255, .035);
    border-color: rgba(164,170,182,0.12);
    color: var(--fortress-muted);
}

.third-party-verdict__opinion {
    min-width: 0;
    margin: 0;
    font-size: 12px;
    line-height: 1.45;
    font-weight: 600;
    color: #ffffff;
}

.third-party-verdict__ratings {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}

.third-party-verdict__rating {
    min-width: 0;
    padding: 5px 7px;
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 6px;
    border: 1px solid #454856;
    border-radius: 8px;
    background: none #1e1f26;
}

.third-party-verdict__rating small {
    min-width: 0;
    overflow: hidden;
    font-size: 8px;
    line-height: 1.25;
    font-weight: 850;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--fortress-muted);
}

.third-party-verdict__rating b {
    flex: none;
    font-size: 13px;
    line-height: 1;
    font-weight: 950;
    color: #62cd7c;
    text-shadow: none;
}

.third-party-verdict__rating b::after {
    content: "/5";
    margin-left: 2px;
    color: rgba(224, 241, 250, .35);
    font-size: 8px;
    font-weight: 800;
}

.third-party-verdict__detail {
    margin: 2px 0 0;
    font-size: 10.5px;
    line-height: 1.5;
    font-weight: 500;
    color: var(--fortress-muted);
}

.translation-inspector {
    margin-top: 12px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.translation-inspector article {
    height: 188px;
    padding: 18px;
    display: grid;
    grid-template-rows: auto auto;
    align-content: start;
    overflow-y: auto;
    border-radius: 16px;
    background-color: #1e1f26;
    background-image: none;
    border-color: #454856;
}

.translation-inspector article>span {
    display: block;
    margin-bottom: 9px;
    font-size: 10px;
    line-height: 1.3;
    font-weight: 900;
    letter-spacing: .06em;
    color: var(--fortress-muted);
}

.translation-inspector p {
    margin: 0;
    font-size: 11px;
    font-weight: 600;
    color: var(--fortress-muted);
}

.translation-inspector article[lang="th"] p {
    font-size: 13px;
    line-height: 1.7;
    color: #ffffff;
}

.benchmark-inspector :where(.benchmark-inspector__head h4, .benchmark-reference, .evaluation-commentary, .third-party-verdict, .translation-inspector article) {
    scrollbar-gutter: stable;
}

@supports not selector(::-webkit-scrollbar) {
.benchmark-inspector :where(.benchmark-inspector__head h4, .benchmark-reference, .evaluation-commentary, .third-party-verdict, .translation-inspector article) {
    scrollbar-width: thin;
    scrollbar-color: rgba(127, 184, 255, .72) transparent;
}

}
.benchmark-inspector :where(.benchmark-inspector__head h4, .benchmark-reference, .evaluation-commentary, .third-party-verdict, .translation-inspector article)::-webkit-scrollbar {
    width: 7px;
}

.benchmark-inspector :where(.benchmark-inspector__head h4, .benchmark-reference, .evaluation-commentary, .third-party-verdict, .translation-inspector article)::-webkit-scrollbar-button {
    display: none;
    width: 0;
    height: 0;
}

.benchmark-inspector :where(.benchmark-inspector__head h4, .benchmark-reference, .evaluation-commentary, .third-party-verdict, .translation-inspector article)::-webkit-scrollbar-track {
    margin-block: 8px;
    border: 2px solid transparent;
    border-radius: 26px;
    background: linear-gradient(180deg,
            rgba(255, 255, 255, .052),
            rgba(255, 255, 255, .016)) rgba(19,20,23,0.48);
    background-clip: content-box;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.055),
        inset 0 0 0 1px rgba(77,191,239,0.035);
}

.benchmark-inspector :where(.benchmark-inspector__head h4, .benchmark-reference, .evaluation-commentary, .third-party-verdict, .translation-inspector article)::-webkit-scrollbar-thumb {
    border: 2px solid transparent;
    border-radius: 26px;
    background: linear-gradient(180deg,
            rgba(98,205,124,0.92),
            rgba(77,191,239,0.92) 70%,
            rgba(198,103,152,0.9)) transparent;
    background-clip: content-box;
}

.benchmark-inspector :where(.benchmark-inspector__head h4, .benchmark-reference, .evaluation-commentary, .third-party-verdict, .translation-inspector article)::-webkit-scrollbar-corner {
    background: transparent;
}

.quality-evidence {
    margin-top: 22px;
    padding: clamp(26px, 4vw, 32px);
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 34px;
    align-items: center;
    border: 1px solid #454856;
    border-radius: 26px;
    background: radial-gradient(ellipse at 14% 10%, rgba(255,255,255,.032), transparent 36%),
        radial-gradient(ellipse at 94% 90%, rgba(199,201,210,.025), transparent 45%),
        linear-gradient(145deg, #30323a, #2d3039 76%) #2d3039;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: 0 28px 82px rgba(0,0,0,0.22);
}

.quality-evidence h3 {
    margin: 14px 0 0;
    font-size: clamp(21px, 2.5vw, 30px);
    line-height: 1.22;
    letter-spacing: -.04em;
    color: #ffffff;
}

.quality-evidence-repletion {
    max-width: 675px;
    margin: 15px 0 0;
    font-size: 13px;
    font-weight: 500;
    color: var(--fortress-muted);
}

.quality-report-link {
    min-width: 252px;
    min-height: 72px;
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid hsl(139.41deg 58.62% 54.51%);
    border-radius: 16px;
    background: none hsl(139.41deg 58.62% 54.51%);
    text-align: center;
    transition: transform .25s;
    appearance: none;
    -webkit-appearance: none;
    font-weight: 700;
    will-change: transform;
    color: #000000;
}

.quality-trademark-note {
    margin: 10px 0 0;
    font-size: 10px;
    line-height: 1.65;
    font-weight: 600;
    text-align: center;
    color: var(--fortress-muted);
}

.section.origin-section {
    overflow: hidden;
    padding: clamp(65px, 9vw, 80px) 0 clamp(78px, 12vw, 78px);
}

.origin-layout {
    display: flex;
    align-items: flex-start;
    gap: clamp(50px, 5.5vw, 90px);
    flex-wrap: wrap;
    justify-content: center;
}

.origin-copy {
    padding-top: 26px;
    flex: .86 1 100%;
}

.origin-timeline {
    --origin-step-pad-y: 26px;
    --origin-step-pad-x: 0px;
    --origin-step-gap: 14px;
    --origin-step-icon-size: 42px;
    --origin-layout-delay: 0s;
    display: grid;
    gap: var(--origin-step-gap);
    margin: 0;
    padding: 0;
    list-style: none;
}

.origin-timeline li {
    position: relative;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 5.5px;
    padding: var(--origin-step-pad-y) var(--origin-step-pad-x);
    border-radius: 26px;
    max-width: 500px;
}

.origin-timeline>li>span {
    position: relative;
    z-index: 3;
    width: var(--origin-step-icon-size);
    height: var(--origin-step-icon-size);
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: none #4dbfef;
    font-size: 12px;
    font-weight: 950;
    opacity: .44;
    transform: scale(.9);
    transition: opacity .28s ease var(--origin-node-delay, 0s),
        transform .38s cubic-bezier(.22, .61, .36, 1) var(--origin-node-delay, 0s);
    color: #131417;
}

.origin-timeline>li>span::after {
    content: "";
    position: absolute;
    inset: -20px;
    z-index: -1;
    border-radius: 50%;
    background: radial-gradient(circle,
        rgba(77,191,239,.33) 0 36%, rgba(77,191,239,.21) 44%,
        rgba(77,191,239,.13) 58%, rgba(77,191,239,.06) 70%, transparent 82%) transparent;
    opacity: 0;
    transform: scale(.90);
    pointer-events: none;
}

.origin-timeline h3 {
    margin: 0 0 8px;
    font-size: 20px;
    line-height: 1.4;
    letter-spacing: -.03em;
}

.origin-timeline p {
    margin: 0;
    font-weight: 600;
    font-size: 13px;
    line-height: 1.68;
    color: var(--fortress-muted);
}

.origin-timeline li:not(:last-child)::before,
.origin-timeline li:not(:last-child)::after {
    content: "";
    position: absolute;
    z-index: 2;
    left: calc(var(--origin-step-pad-x) + var(--origin-step-icon-size) / 2 - 1px);
    top: calc(var(--origin-step-pad-y) + var(--origin-step-icon-size));
    bottom: calc((var(--origin-step-gap) + var(--origin-step-pad-y)) * -1);
    width: 2px;
    border-radius: 26px;
}

.origin-timeline li:not(:last-child)::before {
    background: none rgba(77,191,239,.10);
}

.origin-timeline li:not(:last-child)::after {
    background: linear-gradient(180deg, rgba(77,191,239,.88) 0%, rgba(111,163,238,.83) 38%, rgba(198,103,152,.70) 70%, rgba(250,221,90,.22) 100%) transparent;
    transform: scaleY(0);
    transform-origin: 50% 0;
    transition: transform .72s cubic-bezier(.22, .61, .36, 1) var(--origin-line-delay, 0s);
}

.origin-timeline>li:nth-child(1) {
    --origin-node-delay: calc(.63s + var(--origin-layout-delay));
    --origin-line-delay: calc(.85s + var(--origin-layout-delay));
}

.origin-timeline>li:nth-child(2) {
    --origin-node-delay: calc(1.27s + var(--origin-layout-delay));
    --origin-line-delay: calc(1.49s + var(--origin-layout-delay));
}

.origin-timeline>li:nth-child(3) {
    --origin-node-delay: calc(1.91s + var(--origin-layout-delay));
}

.origin-timeline.is-step-active>li>span {
    opacity: 1;
    transform: scale(1);
}

.origin-timeline.is-step-active>li>span::after {
    animation: ft-origin-node-signal .86s var(--origin-node-delay, 0s) linear both;
}

.origin-timeline.is-step-active li:not(:last-child)::after {
    transform: scaleY(1);
}

@keyframes ft-origin-node-signal {
    0% {
        opacity: 0;
        transform: scale(.90);
    }

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

    100% {
        opacity: 0;
        transform: scale(.78);
    }
}

.section {
    position: relative;
    padding: clamp(65px, 9vw, 100px) 0 clamp(78px, 12vw, 110px);
    z-index: 12;
}

.ultra-view>section:not(.hero) {
    margin-top: -1px;
}

#translator[tabindex="-1"]:focus,
#contact[tabindex="-1"]:focus {
    outline: 0;
}

.usecase-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    max-width: 580px;
    margin: 42px auto 0;
}

.usecase {
    --usecase-accent: 116, 240, 227;
    min-height: 157px;
    padding: clamp(20px, 2.5vw, 26px);
    border-radius: 26px;
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    background: radial-gradient(circle at 84% 18%, rgba(var(--usecase-accent), .22), transparent 32%),
        linear-gradient(145deg, #32343c, #2d3039 74%) #2d3039;
    border: 1px solid #454856;
    box-shadow: var(--fortress-shadow);
}

.usecase-grid .usecase {
    opacity: 0;
    transform: translateY(12px);
    transition: opacity .56s cubic-bezier(.22, .61, .36, 1),
        transform .56s cubic-bezier(.22, .61, .36, 1);
}

.usecase-grid.in .usecase {
    opacity: 1;
    transform: translateY(0);
}

.usecase-grid.in .usecase:nth-child(1) {
    transition-delay: .2s;
}

.usecase-grid.in .usecase:nth-child(2) {
    transition-delay: .3s;
}

.usecase-grid.in .usecase:nth-child(3) {
    transition-delay: .4s;
}

.usecase-grid.in .usecase:nth-child(4) {
    transition-delay: .5s;
}

.usecase::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 14%, rgba(19,20,23,0.46) 100%) transparent;
}

.usecase__emoji {
    font-size: clamp(30px, 7.3vw, 40px);
    position: absolute;
    top: 5%;
    right: 7%;
    opacity: .9;
}

.usecase h3 {
    position: relative;
    margin: 0 0 7px;
    font-size: 20px;
    letter-spacing: -.025em;
}

.usecase p {
    position: relative;
    margin: 0;
    color: var(--fortress-muted);
    font-size: 13px;
    line-height: 1.68;
    font-weight: 500;
}

.usecase--2 {
    background-color: #2d3039;
    background-image: radial-gradient(circle at 84% 18%, rgba(var(--usecase-accent), .22), transparent 32%),
        linear-gradient(145deg, #32343c, #2d3039 74%);
    border-color: #454856;
    --usecase-accent: 77, 191, 239;
}

.usecase--3 {
    background-color: #2d3039;
    background-image: radial-gradient(circle at 84% 18%, rgba(var(--usecase-accent), .22), transparent 32%),
        linear-gradient(145deg, #32343c, #2d3039 74%);
    border-color: #454856;
    --usecase-accent: 198, 103, 152;
}

.usecase--4 {
    background-color: #2d3039;
    background-image: radial-gradient(circle at 84% 18%, rgba(var(--usecase-accent), .22), transparent 32%),
        linear-gradient(145deg, #32343c, #2d3039 74%);
    border-color: #454856;
    --usecase-accent: 233, 196, 110;
}

.steps-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr));
    gap: 18px;
    margin-top: 42px;
}

.step-card,
.faq-item,
.howto-prep__details {
    position: relative;
    overflow: hidden;
    border-radius: 16px;
    background: radial-gradient(ellipse at 16% 12%, rgba(116, 240, 227, .10), transparent 30%),
        linear-gradient(145deg, var(--fortress-glass-strong), rgba(255, 255, 255, .045));
    border: 1px solid var(--fortress-line);
    box-shadow: var(--fortress-shadow);
}

.step-card {
    padding: clamp(22px, 3vw, 32px);
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
    border-color: #454856;
    color: #ffffff;
}

.faq-item {
    padding: 0;
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
    border-color: #454856;
    color: #ffffff;
}

.howto-prep__details {
    padding: 0;
}

.step-card h3 {
    font-size: 20px;
    line-height: 1.4;
    letter-spacing: -.03em;
    margin-bottom: 0.9em;
}

.step-card p,
.faq-item p {
    margin: 0;
    font-weight: 500;
    color: var(--fortress-muted);
}

.faq-item summary,
.howto-prep__details>summary {
    min-height: 88px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 24px clamp(22px, 4vw, 32px);
    cursor: pointer;
    list-style: none;
    font-size: 20px;
    line-height: 1.4;
    letter-spacing: -.03em;
    font-weight: 850;
    user-select: none;
    transition: background-color .2s ease;
}

:is(.faq-item, .howto-prep__details, .fortress-manual, .fortress-plan-status, .fortress-support-ref-notice)>summary:focus {
    outline: 0;
}

.faq-item summary::after,
.howto-prep__details>summary::after {
    content: "";
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    border-radius: 26px;
    background: linear-gradient(currentColor 0 0) center / 12px 2px no-repeat,
        linear-gradient(currentColor 0 0) center / 2px 12px no-repeat,
        rgba(255, 255, 255, .06);
    border: 1px solid rgba(135, 230, 163, .31);
    transition: background-size .24s ease, transform .24s ease;
    color: #85e7a2;
}

.faq-item[open] summary::after,
.howto-prep__details[open]>summary::after {
    background-size: 12px 2px, 2px 0, auto;
    transform: rotate(180deg);
}

.faq-item__answer-inner {
    margin: 0 clamp(22px, 4vw, 32px);
    border-top: 1px solid rgba(255, 255, 255, .10);
}

.faq-item__answer p {
    padding: 22px 0 28px;
}

.step-no {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    margin-bottom: 20px;
    border-radius: 12px;
    background: none #1e1f26;
    font-size: 14px;
    font-weight: 800;
    color: #ffffff;
}

#why-fortress .step-card,
#howto .step-card {
    display: grid;
    grid-template-columns: 60px minmax(0, 1fr);
    align-content: start;
    row-gap: 12px;
    text-align: left;
    max-width: 600px;
    justify-self: center;
}

#why-fortress .step-no,
#howto .step-no {
    grid-column: 1;
    grid-row: 1;
    margin: 0;
}

#why-fortress .step-card h3,
#howto .step-card h3 {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
    margin: 0;
}

#why-fortress .step-card p,
#howto .step-card p {
    grid-column: 1 / -1;
    grid-row: 2;
}

#why-fortress .steps-grid:focus:not(:focus-visible) {
    outline: 0;
}

#howto .howto-prep {
    width: min(1080px, 100%);
    margin: clamp(52px, 7vw, 82px) auto 0;
    text-align: center;
    position: relative;
}

#howto .howto-prep>.section-kicker {
    margin-bottom: 12px;
}

.howto-prep__title {
    margin: 0;
    font-size: clamp(27px, 3vw, 38px);
    line-height: 1.2;
    letter-spacing: -.045em;
    color: #ffffff;
}

.howto-prep__lead {
    color: var(--fortress-muted);
    font-size: 16px;
    max-width: 820px;
    margin: 0 auto;
    line-height: 1.7;
    font-weight: 700;
    margin-top: 18px;
}

.howto-prep__details {
    margin-top: 42px;
    text-align: left;
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
    border-color: #454856;
    color: #ffffff;
}

.howto-prep__details-body {
    margin: 0 clamp(22px, 4vw, 32px);
    padding: clamp(24px, 4vw, 34px) 0 clamp(28px, 4vw, 38px);
    border-top: 1px solid rgba(255, 255, 255, .10);
}

.howto-prep__note {
    margin: 0;
    color: var(--fortress-muted);
    font-size: 14px;
    line-height: 1.75;
    font-weight: 600;
}

.howto-prep__languages {
    margin: 20px 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    list-style: none;
}

.howto-prep__languages li {
    min-height: 38px;
    padding: 8px 12px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 26px;
    background: rgba(255, 255, 255, .055);
    font-size: 13px;
    line-height: 1.45;
    color: var(--fortress-muted);
}

.howto-prep__languages b {
    font-weight: 900;
    color: #ffffff;
}

.howto-prep__devices {
    margin-top: 28px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 430px), 1fr));
    gap: 18px;
    align-items: start;
}

.howto-prep__device {
    min-width: 0;
    padding: clamp(20px, 3vw, 28px);
    border: 1px solid #454856;
    border-radius: 24px;
    background: none hsl(222.86deg 13.73% 20%);
    color: #ffffff;
}

.howto-prep__device-head {
    padding-bottom: 18px;
    border-bottom: 1px solid rgba(255, 255, 255, .08);
}

.howto-prep__device-head>span {
    display: inline-flex;
    min-height: 30px;
    padding: 0 11px;
    align-items: center;
    border: 1px solid #454856;
    border-radius: 26px;
    background: none #1e1f26;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .08em;
    color: var(--fortress-muted);
}

.howto-prep__device-head h4 {
    margin: 10px 0 0;
    font-size: 20px;
    line-height: 1.4;
    letter-spacing: -.03em;
    color: #ffffff;
}

.howto-prep__step {
    padding-top: 22px;
}

.howto-prep__step+.howto-prep__step {
    margin-top: 24px;
    border-top: 1px solid rgba(255, 255, 255, .08);
}

.howto-prep__step-head {
    display: flex;
    align-items: center;
    gap: 14px;
}

.howto-prep__step-head h5 {
    margin: 0;
    font-size: 17px;
    line-height: 1.45;
    letter-spacing: -.02em;
    color: #ffffff;
}

.howto-prep__step>p {
    margin: 14px 0 0;
    color: var(--fortress-muted);
    font-size: 14px;
    line-height: 1.75;
    font-weight: 600;
}

.howto-prep__figure {
    margin: 18px 0 0;
    overflow: hidden;
    border: 1px solid rgba(var(--ft-v4-accent, 98,205,124), .32);
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(var(--ft-v4-accent, 98,205,124), .20), rgba(255,255,255,.025)) #1e1f26;
}

.howto-prep__figure img {
    display: block;
    width: 100%;
    height: auto;
}

.howto-prep__ready {
    margin-top: 24px;
    padding: 18px 20px;
    display: grid;
    gap: 5px;
    border: 1px solid #454856;
    border-radius: 16px;
    background: none hsl(222.86deg 13.73% 20%);
    color: var(--fortress-muted);
}

.howto-prep__ready strong {
    font-size: 15px;
    line-height: 1.5;
    color: #ffffff;
}

.howto-prep__ready span {
    font-size: 14px;
    line-height: 1.75;
    font-weight: 600;
    color: var(--fortress-muted);
}

@media (min-width: 768px) {
.ultra-view>.topbar .topnav {
    display: flex;
    white-space: nowrap;
}

.ultra-view>.topbar .mobile-topbar-actions,
.ultra-view>.topbar .mobile-menu-panel {
    display: none;
}

.fortress-purchase-environment-note__continuation {
    display: block;
}

#why-fortress .steps-grid {
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 520px), 1fr));
}

.quality-evidence-dialog__language-panel {
    height: clamp(8em, calc(100vh - 28em), 23em);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    scrollbar-width: thin;
    scrollbar-color: rgba(127, 184, 255, .72) transparent;
}

}
.faq-list {
    display: grid;
    gap: 16px;
    margin-top: 42px;
}

.translator-section {
    overflow: hidden;
}

.translator-coverage {
    width: min(1080px, 100%);
    margin: 42px auto 0;
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    gap: clamp(14px, 3vw, 38px);
    align-items: center;
    padding: clamp(20px, 4vw, 32px);
    border-radius: 26px;
    background: radial-gradient(ellipse at 18% 10%, rgba(116, 240, 227, .16), transparent 34%),
        radial-gradient(ellipse at 88% 92%, rgba(145, 170, 255, .17), transparent 38%),
        var(--fortress-glass);
    border: 1px solid #454856;
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
}

.translator-coverage__metric {
    display: grid;
    gap: 8px;
    justify-items: center;
}

.translator-coverage__metric strong {
    display: inline-flex;
    align-items: baseline;
    font-size: clamp(62px, 8vw, 108px);
    line-height: .88;
    letter-spacing: -.075em;
    font-variant-numeric: tabular-nums;
}

.translator-coverage__metric small {
    margin-left: .08em;
    color: var(--fortress-aqua);
    font-size: .34em;
    letter-spacing: -.02em;
}

.translator-coverage__value-label {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
}

.translator-coverage__digits {
    display: inline-flex;
    align-items: baseline;
}

.translator-coverage__digit {
    --translator-digit-step: .88em;
    --translator-digit-position: 0%;
    --translator-digit-duration: .96s;
    --translator-digit-delay: .7s;
    position: relative;
    display: inline-block;
    width: .69em;
    height: var(--translator-digit-step);
    margin-inline: -.06em;
    overflow: hidden;
}

.translator-coverage__digit--8 {
    --translator-digit-position: -90%;
}

.translator-coverage__digit--3 {
    --translator-digit-position: -65%;
    --translator-digit-duration: .9s;
    --translator-digit-delay: .78s;
}

.translator-coverage__digit--9 {
    --translator-digit-position: -95%;
    --translator-digit-duration: 1.02s;
    --translator-digit-delay: .86s;
}

.translator-coverage__digit::before {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    line-height: var(--translator-digit-step);
    text-align: center;
    pointer-events: none;
}

.translator-coverage__digit--8::before {
    content: "8";
}

.translator-coverage__digit--3::before {
    content: "3";
}

.translator-coverage__digit--9::before {
    content: "9";
}

.translator-coverage__digit.has-digit-track::before {
    display: none;
}

.translator-coverage__digit-track {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    opacity: 1;
    transform: translate3d(0, var(--translator-digit-position), 0);
}

.translator-coverage__digit-cell {
    flex: 0 0 var(--translator-digit-step);
    width: 100%;
    height: var(--translator-digit-step);
    min-height: var(--translator-digit-step);
    overflow: hidden;
    line-height: var(--translator-digit-step);
    text-align: center;
}

.translator-coverage__decimal {
    display: inline-block;
    width: .28em;
    text-align: center;
}

.translator-coverage__unit {
    opacity: 1;
    transform: none;
}

.translator-coverage:not(.in) .translator-coverage__digit-track {
    opacity: .42;
    transform: translate3d(0, 0, 0);
}

.translator-coverage.in .translator-coverage__digit-track {
    animation: translator-coverage-odometer var(--translator-digit-duration) var(--translator-digit-delay) cubic-bezier(.16, 1, .3, 1) both;
}

@keyframes translator-coverage-odometer {
    from {
        opacity: .42;
        transform: translate3d(0, 0, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, var(--translator-digit-position), 0);
    }
}

@media (prefers-reduced-motion: reduce) {
.translator-coverage:not(.in) .translator-coverage__digit-track,
.translator-coverage.in .translator-coverage__digit-track {
    animation: none;
    opacity: 1;
    transform: translate3d(0, var(--translator-digit-position), 0);
}

.ft-image-poll__option.is-selected,
.ft-image-poll__option.is-selected::before {
    animation: none;
}

}
.translator-coverage__label {
    width: max-content;
    max-width: 100%;
    padding: 9px 14px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    border: 1px solid #454856;
    border-radius: 26px;
    background: none #1e1f26;
    font-size: 11px;
    line-height: 1.5;
    font-weight: 800;
    letter-spacing: .06em;
    color: var(--fortress-muted);
}

.translator-coverage__label::before {
    width: 8px;
    height: 8px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: none #62cd7c;
    content: "";
    box-shadow: 0 0 16px rgba(98,205,124,.18);
}

.translator-coverage__content h3 {
    margin: 0 0 0.55em;
    font-size: clamp(26px, 3vw, 34px);
    line-height: 1.18;
    letter-spacing: -.045em;
    color: #ffffff;
}

.translator-coverage__content p {
    margin: 0;
    color: var(--fortress-muted);
    line-height: 1.75;
    font-weight: 600;
}

.translator-coverage__facts {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: clamp(12px, 2.5vw, 22px);
}

.translator-coverage__facts span {
    padding: 8px 12px;
    border-radius: 26px;
    background: none #1e1f26;
    border: 1px solid #454856;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .04em;
    color: var(--fortress-muted);
}

.translator-data-note {
    max-width: 965px;
    margin: 17px auto 0;
    font-size: 11.5px;
    line-height: 1.33;
    font-weight: 500;
    text-align: center;
    color: var(--fortress-muted);
    background-color: transparent;
    background-image: none;
}

.fortress-placeholder-line+.fortress-placeholder-line {
    margin-top: 10.5px;
}

.content-section--dark {
    background: none #131417;
}

.product-intro {
    view-timeline-name: --intro-view;
    position: relative;
    z-index: 8;
    padding: clamp(65px, 9vw, 100px) 0 clamp(200px, 27vw, 277px);
    text-align: center;
    background-color: #181a1e;
    background-image: none;
}

.pricing-kicker {
    margin-bottom: 18px;
}

.premium .section-lead {
    max-width: 780px;
    margin-top: 26px;
}

.sales-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 48px;
    align-items: start;
    margin-top: 42px;
}

.sales-summary {
    position: relative;
    border-radius: 26px;
    padding: 32px;
    background: none hsl(222.86deg 13.73% 20%);
    border: 1px solid #454856;
    color: #ffffff;
}

.sales-summary h3 {
    margin: 0 0 12px;
    font-size: clamp(24px, 3vw, 30px);
    letter-spacing: -.04em;
    line-height: 1.15;
}

.sales-summary p {
    margin: 0;
    line-height: 1.63;
    font-weight: 600;
    color: var(--fortress-muted);
}

.trust-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 24px;
}

.trust-strip span {
    border-radius: 26px;
    padding: 9px 12px;
    background: none hsl(227.37deg 12.26% 30.39%);
    border: 1px solid hsl(227.37deg 12.26% 30.39%);
    font-size: 12px;
    font-weight: 850;
    color: #ffffff;
}

.plan-groups {
    min-width: 0;
    display: grid;
    gap: 42px;
}

.plan-group {
    min-width: 0;
}

.plan-rail {
    display: flex;
    gap: 18px;
    overflow-x: auto;
    padding: 0 2px 6px;
    scroll-snap-type: x mandatory;
    overscroll-behavior-inline: contain;
    scrollbar-width: none;
}

.price-card,
.plan-spotlight {
    scroll-snap-align: start;
}

.price-card {
    flex: 0 0 270px;
    display: flex;
    flex-direction: column;
    border-radius: 26px;
    padding: 32px;
    background: none hsl(222.86deg 13.73% 20%);
    border: 1px solid #454856;
    box-shadow: 0 24px 70px rgba(0,0,0,0.24);
    color: #f6f7f9;
}

.price-card--featured {
    background: radial-gradient(ellipse at 24% 12%, rgba(77, 191, 239, .085), transparent 36%),
        linear-gradient(145deg, #32343c, #2d3039 74%) #2d3039;
    border-color: #4dbfef;
}

.price-card--premium {
    background-color: #2d3039;
    background-image: radial-gradient(ellipse at 92% 0%, rgba(250, 221, 90, .10), transparent 38%),
        radial-gradient(ellipse at 8% 90%, rgba(198, 103, 152, .065), transparent 48%),
        linear-gradient(145deg, #32343c, #2d3039 74%);
    border-color: rgba(250,221,90,.58);
}

.price-card--premium.price-card--featured {
    background: radial-gradient(ellipse at 100% 0%, rgba(198,103,152,0.16), transparent 42%),linear-gradient(145deg, rgba(255, 255, 255, .11), rgba(255, 255, 255, .055)) transparent;
    box-shadow: 0 24px 70px rgba(0,0,0,0.28), inset 0 0 0 1px rgba(229, 190, 78, .10);
    border-color: rgba(235, 197, 124, .50);
}

.price-tag {
    align-self: flex-start;
    display: inline-flex;
    margin-bottom: 14px;
    border-radius: 26px;
    padding: 7px 10px;
    background: none #4dbfef;
    font-size: 10px;
    font-weight: 950;
    letter-spacing: .08em;
    color: #131417;
    border-color: #4dbfef;
}

.price-card--premium .price-tag {
    background: none #fadd5a;
    border: 1px solid #fadd5a;
    color: #131417;
}

.price-card h4 {
    margin: 0;
    font-size: 23px;
    line-height: 1.15;
    letter-spacing: -.035em;
}

.price {
    margin: 16px 0 2px;
    font-size: 36px;
    font-weight: 950;
    letter-spacing: -.055em;
}

.price small {
    font-size: 13px;
    letter-spacing: 0;
    color: var(--fortress-muted);
}

.price-validity {
    margin: 0;
    font-size: 12px;
    line-height: 1.55;
    font-weight: 750;
    color: var(--fortress-muted);
}

.price-usecase {
    margin: 18px 0 0;
    font-size: 13px;
    line-height: 1.7;
    font-weight: 600;
    color: var(--fortress-muted);
}

.price-specs--variable {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: auto;
    padding-top: 18px;
}

.price-specs--variable span {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 10px;
    border-radius: 26px;
    background: none hsl(227.37deg 12.26% 30.39%);
    border: 1px solid hsl(227.37deg 12.26% 30.39%);
    font-size: 11px;
    font-weight: 800;
    color: #ffffff;
}

.plan-spotlight {
    flex: 0 0 min(430px, 86vw);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    border-radius: 26px;
    padding: 32px;
    border: 1px solid #454856;
    overflow: hidden;
    box-shadow: 0 24px 70px rgba(0,0,0,0.28);
    color: #f6f7f9;
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
}

.plan-spotlight--standard {
    background: radial-gradient(ellipse at 24% 12%, rgba(77, 191, 239, .085), transparent 36%),
        linear-gradient(145deg, #32343c, #2d3039 74%) #2d3039;
    border-color: #4dbfef;
}

.plan-spotlight--premium {
    background: radial-gradient(ellipse at 92% 0%, rgba(250, 221, 90, .10), transparent 38%),
        radial-gradient(ellipse at 8% 90%, rgba(198, 103, 152, .065), transparent 48%),
        linear-gradient(145deg, #32343c, #2d3039 74%) #2d3039;
    box-shadow: 0 24px 70px rgba(0,0,0,0.3), inset 0 0 0 1px rgba(229, 190, 78, .06);
    border-color: rgba(250,221,90,.58);
}

.plan-spotlight__badge {
    display: inline-flex;
    align-items: center;
    margin-bottom: 18px;
    border-radius: 26px;
    padding: 10px 15px;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .10em;
}

.plan-spotlight__badge--standard {
    background: none #4dbfef;
    color: #131417;
    border-color: #4dbfef;
}

.plan-spotlight__badge--premium {
    background: none #fadd5a;
    border: 1px solid #fadd5a;
    color: #131417;
}

.plan-spotlight h4 {
    max-width: 370px;
    margin: 0;
    font-size: clamp(32px, 4vw, 46px);
    line-height: 1.04;
    letter-spacing: -.055em;
}

.plan-spotlight__description {
    max-width: 390px;
    margin: 14px 0 0;
    font-size: 13px;
    line-height: 1.7;
    font-weight: 600;
    color: var(--fortress-muted);
}

.plan-spotlight__features {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

.plan-spotlight__features span {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    padding: 0 11px;
    border-radius: 26px;
    background: none hsl(227.37deg 12.26% 30.39%);
    border: 1px solid hsl(227.37deg 12.26% 30.39%);
    font-size: 11px;
    font-weight: 850;
    color: #ffffff;
}

.contact-box {
    width: min(980px, 100%);
    margin: 42px auto 0;
    padding: clamp(26px, 4vw, 40px);
    border: 1px solid #454856;
    border-radius: 26px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 28px;
    align-items: center;
    background: none hsl(222.86deg 13.73% 20%);
    box-shadow: var(--fortress-shadow);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
    color: #ffffff;
}

.contact-box h3 {
    margin: 0 0 10px;
    font-size: clamp(21px, 2.2vw, 28px);
    line-height: 1.4;
    letter-spacing: -.035em;
}

.contact-box__topics {
    margin-top: 18px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.contact-box__topics span {
    padding: 7px 11px;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 26px;
    background: rgba(255, 255, 255, .045);
    font-size: 11px;
    font-weight: 800;
    color: var(--fortress-muted);
}

.contact-box__link {
    transition: transform .25s;
    will-change: transform;
    background-color: hsl(139.41deg 58.62% 54.51%);
    background-image: none;
    color: #000000;
    border-color: hsl(139.41deg 58.62% 54.51%);
    text-shadow: none;
}

.footer__meta {
    display: grid;
    gap: 3px;
}

.footer__links {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 10px 18px;
}

.footer__links a {
    font-weight: 750;
    color: hsl(233.33deg 9.89% 64.31%);
}

.cta {
    padding: clamp(65px, 9vw, 106px) 0 clamp(78px, 12vw, 106px);
    overflow: hidden;
    background: none #181a1e;
    text-align: center;
    position: relative;
    z-index: 13;
}

.cta::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, .015), transparent 34%);
    pointer-events: none;
}

.cta-box {
    position: relative;
    width: min(900px, calc(100% - 40px));
    margin: auto;
    padding: 76px 40px;
    border-radius: 26px;
    background: none hsl(222.86deg 13.73% 20%);
    border: 1px solid #454856;
    box-shadow: inset 0 -26px 56px rgba(77,191,239,0.1), 0 40px 110px rgba(0,0,0,0.34);
    color: #ffffff;
}

.cta>.cta-box {
    isolation: isolate;
    overflow: hidden;
    opacity: 0;
    transform: none;
    transition: opacity 1.5s 0.5s cubic-bezier(0.33, 0.87, 1, 1);
}

.cta>.cta-box.reveal.in {
    opacity: 1;
}

.cta>.cta-box>* {
    position: relative;
    z-index: 1;
}

.cta>.cta-box::before,
.cta>.cta-box::after {
    content: "";
    position: absolute;
    z-index: 0;
    pointer-events: none;
    opacity: 0;
}

.cta>.cta-box::before {
    inset: -30%;
    border-radius: 50%;
    background: radial-gradient(circle at 50% 50%,
            transparent 0 21%, rgba(77,191,239,.12) 21.4% 21.9%, transparent 22.3% 32%,
            rgba(77,191,239,.10) 32.4% 32.9%, transparent 33.3% 100%),conic-gradient(from 215deg, transparent 0 18%, rgba(77,191,239,.12) 23%,
            transparent 31% 66%, rgba(198,103,152,.12) 73%, transparent 82% 100%) transparent;
}

.cta>.cta-box::after {
    inset: 14%;
    border: 1px solid rgba(77,191,239,.27);
    border-radius: 50%;
    box-shadow: 0 0 28px rgba(77,191,239,.085), inset 0 0 28px rgba(77,191,239,.06);
}

.cta>.cta-box.reveal.in::before {
    animation: ft-cta-signal-converge 1.4s .66s cubic-bezier(.16, 1, .3, 1) both;
}

.cta>.cta-box.reveal.in::after {
    animation: ft-cta-seal-lock 1.04s 1.16s cubic-bezier(.16, 1, .3, 1) both;
}

@keyframes ft-cta-signal-converge {
    from {
        opacity: 0;
        transform: scale(1.34) rotate(-10deg);
    }

    48% {
        opacity: .72;
    }

    to {
        opacity: 0;
        transform: scale(.72) rotate(4deg);
    }
}

@keyframes ft-cta-seal-lock {
    from {
        opacity: 0;
        transform: scale(1.16);
    }

    46% {
        opacity: .78;
        transform: scale(1);
        animation-timing-function: cubic-bezier(.4, 0, .2, 1);
    }

    to {
        opacity: 0;
        transform: scale(.985);
    }
}

.cta h2 {
    font-size: clamp(33px, 4.6vw, 50px);
    letter-spacing: -.06em;
    line-height: 1.08;
    margin: 0 auto 26px;
    max-width: 600px;
}

.cta p {
    color: var(--fortress-muted);
    margin: 0 auto 33px;
    font-weight: 500;
}

.ft-image-poll {
    position: relative;
    z-index: 13;
    padding: clamp(65px, 9vw, 106px) 0 clamp(78px, 12vw, 110px);
    background: var(--fortress-bg);
}

.cta-box.ft-image-poll__inner {
    max-width: 600px;
    padding: clamp(38px, 4vw, 46px) clamp(20px, 3vw, 32px);
    overflow: hidden;
    background: linear-gradient(145deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .018)) transparent;
    border-color: rgba(164,170,182,0.09);
    box-shadow: inset 0 1px rgba(255,255,255,0.045), 0 24px 64px rgba(0,0,0,0.22);
}

.ft-image-poll__title {
    margin-bottom: 0;
    font-size: clamp(28px, 3.4vw, 32px);
}

.ft-image-poll__body {
    display: grid;
    margin-top: 28px;
}

.ft-image-poll__choices,
.ft-image-poll__thanks {
    grid-area: 1 / 1;
}

.ft-image-poll__choices {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
    gap: 12px;
    perspective: 900px;
}

.ft-image-poll__option {
    position: relative;
    min-height: 74px;
    padding: 14px 18px;
    border: 1px solid #454856;
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(255, 255, 255, .045), rgba(255, 255, 255, .009)) #454856;
    font-size: 15px;
    line-height: 1.55;
    font-weight: 850;
    transition: border-color .2s, background .2s;
    color: #ffffff;
}

.ft-image-poll__option:last-child {
    grid-column: 1 / -1;
    justify-self: center;
    width: calc((100% - 12px) / 2);
}

.ft-image-poll__option::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    opacity: 0;
    pointer-events: none;
    transition: opacity .2s ease;
    box-shadow: 0 0 0 1px rgba(77,191,239,.16);
}

.ft-image-poll__option::before {
    position: absolute;
    inset: -1px;
    border-radius: inherit;
    background: linear-gradient(100deg, transparent 25%, rgba(77,191,239,.16) 50%, transparent 75%) transparent;
    opacity: 0;
    transform: translateX(-72%);
    pointer-events: none;
    content: "";
}

.ft-image-poll__option span {
    position: relative;
    z-index: 1;
}

.ft-image-poll__option:active {
    transform: translate3d(0, 2px, -8px) scale(.985);
}

.ft-image-poll__option:focus-visible {
    outline: 2px solid var(--fortress-aqua);
    outline-offset: 3px;
}

.ft-image-poll.is-submitting .ft-image-poll__option {
    cursor: wait;
}

.ft-image-poll__option.is-selected {
    overflow: hidden;
    background: none #243747;
    animation: ft-image-poll-lock .48s cubic-bezier(.16, 1, .3, 1) both;
    border-color: #4dbfef;
    box-shadow: 0 0 0 1px rgba(77,191,239,.2);
}

.ft-image-poll__option.is-selected::before {
    animation: ft-image-poll-scan .46s ease-out both;
}

.ft-image-poll.is-answered .ft-image-poll__choices,
.ft-image-poll.is-answered .ft-image-poll__status {
    display: none;
}

.ft-image-poll__thanks {
    display: grid;
    place-items: center;
    align-content: center;
    min-height: 74px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity .3s ease, transform .3s cubic-bezier(.16, 1, .3, 1), visibility .3s ease;
}

.ft-image-poll.is-answered .ft-image-poll__thanks {
    opacity: 1;
    visibility: visible;
    transform: none;
}

.ft-image-poll__thanks p {
    margin: 0;
    font-size: 13.5px;
    line-height: 1.7;
    font-weight: 700;
    text-align: center;
    color: #ffffff;
}

.ft-image-poll__signal {
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    margin-bottom: 8px;
    border: 1px solid rgba(98,205,124,.38);
    border-radius: 50%;
    background: none rgba(98,205,124,.12);
    font-weight: 950;
    box-shadow: 0 0 24px rgba(98,205,124,.10);
    color: #ffffff;
}

.ft-image-poll__status {
    min-height: 1.5em;
    margin: 12px 0 0;
    font-size: 13px;
    line-height: 1.5;
    font-weight: 700;
    color: var(--fortress-muted);
}

.ft-image-poll__status:empty {
    margin-top: 0;
}

@keyframes ft-image-poll-lock {
    0% {
        transform: translate3d(0, 0, 0) scale(1);
    }

    42% {
        transform: translate3d(0, 2px, -10px) scale(.982);
    }

    100% {
        transform: translate3d(0, -2px, 10px) scale(1.012);
    }
}

@keyframes ft-image-poll-scan {
    0% {
        opacity: 0;
        transform: translateX(-72%);
    }

    28% {
        opacity: 1;
    }

    100% {
        opacity: 0;
        transform: translateX(72%);
    }
}

.footer {
    position: relative;
    z-index: 14;
    background: none hsl(0deg 0% 0.39%);
    padding: 34px 0;
    font-size: 12px;
    margin-top: -1px;
    color: hsl(233.33deg 9.89% 64.31%);
    border-top-color: #454856;
}

.footer__inner {
    width: min(1200px, calc(100% - 32px));
    margin: auto;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
}

.hero__demo-stack {
    position: relative;
    width: 670px;
    min-width: 0;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    margin-bottom: calc(4.5vw + 42px);
}

.app-shell {
    position: relative;
    isolation: isolate;
    perspective: 1500px;
    pointer-events: none;
}

.ft-demo-interaction-surface {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: var(--ft-demo-interaction-height, 0px);
    z-index: 20;
    border-radius: 26px;
    background: transparent;
    cursor: grab;
    touch-action: pan-y;
}

.ft-demo-interaction-surface:active {
    cursor: grabbing;
}

.app-shell::before,
.app-shell::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    filter: blur(44px);
    opacity: .42;
}

.app-shell::before {
    width: 44%;
    aspect-ratio: 1;
    left: -8%;
    top: 10%;
    background: none rgba(77,191,239,.11);
}

.app-shell::after {
    width: 48%;
    aspect-ratio: 1;
    right: -7%;
    bottom: 4%;
    background: none rgba(77,191,239,.11);
}

.ft-demo-tilt {
    --ft-demo-rotate-x: 0deg;
    --ft-demo-rotate-y: 0deg;
    --ft-demo-scale: 1;
    --ft-demo-shine-x: 50%;
    --ft-demo-shine-y: 18%;
    --ft-demo-shine-opacity: .16;
    position: relative;
    z-index: 2;
    transform: rotateX(var(--ft-demo-rotate-x)) rotateY(var(--ft-demo-rotate-y)) scale(var(--ft-demo-scale));
    transform-origin: 50% 48%;
    transform-style: preserve-3d;
    transition: transform .72s cubic-bezier(.16, 1, .3, 1);
    touch-action: pan-y;
    cursor: grab;
    user-select: none;
}

.ft-demo-tilt.is-tilting {
    transition: none;
    will-change: transform;
    cursor: grabbing;
}

.ft-demo-app {
    position: relative;
    padding: 1px;
    border-radius: 26px;
    transform-style: preserve-3d;
    background: linear-gradient(145deg, rgba(77,191,239,.78) 0%, rgba(111,163,238,.76) 30%,
        rgba(186,129,184,.84) 60%, rgba(228,190,115,.86) 83%, rgba(247,216,93,.80) 100%) #2d3039;
    box-shadow: 0 32px 72px rgba(0, 0, 0, .34);
}

.ft-demo-app::before {
    content: "";
    position: absolute;
    inset: -1px;
    z-index: -1;
    border-radius: inherit;
    background: conic-gradient(from 205deg, transparent 0 17%, rgba(77,191,239,.58) 23%,
        rgba(77,191,239,.53) 31%, transparent 39% 62%,
        rgba(186,129,184,.49) 69%, rgba(247,216,93,.43) 78%, transparent 86% 100%) transparent;
    filter: blur(7px);
    opacity: .62;
}

.ft-demo-surface-light {
    position: absolute;
    inset: 1px;
    z-index: 7;
    overflow: hidden;
    border-radius: 27px;
    opacity: 0;
    background: radial-gradient(circle at var(--ft-demo-shine-x, 58%) var(--ft-demo-shine-y, 32%),
        rgba(255,255,255,.34) 0 1.5%, rgba(77,191,239,.14) 7%,
        rgba(186,129,184,.13) 16%, rgba(247,216,93,.085) 24%, transparent 36%),
        repeating-linear-gradient(0deg, rgba(199,201,210,.019) 0 1px, transparent 1px 7px),
        repeating-linear-gradient(90deg, rgba(77,191,239,.016) 0 1px, transparent 1px 38px) transparent;
    mix-blend-mode: screen;
    transition: opacity .24s ease;
}

.ft-demo-surface-frame {
    position: absolute;
    inset: 1px;
    z-index: 7;
    display: block;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    border-radius: 27px;
    opacity: 0;
    mix-blend-mode: screen;
    filter: saturate(1.3) brightness(1.3);
}

.ft-demo-tilt.is-tilting .ft-demo-surface-light {
    opacity: var(--ft-demo-shine-opacity);
}

.ft-demo-app.is-surface-gl-settled .ft-demo-surface-frame {
    opacity: .82;
}

.ft-demo-inner {
    position: relative;
    overflow: hidden;
    padding: 24px;
    border-radius: 27px;
    transform-style: preserve-3d;
    background: linear-gradient(109.61deg, #4c4f5a 4.26%, #202125 84.84%) #202125;
    border: 1px solid #454856;
    color: #f4f5f7;
}

.ft-demo-header,
.ft-demo-mode-switch,
.ft-demo-stage,
.ft-demo-engine-bar {
    position: relative;
    z-index: 2;
}

.ft-demo-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.ft-demo-brand,
.ft-demo-status,
.ft-demo-panel-head,
.ft-demo-input-footer,
.ft-demo-engine-bar,
.ft-demo-result-head,
.ft-demo-result-meta {
    display: flex;
    align-items: center;
}

.ft-demo-brand {
    gap: 13px;
}

.ft-demo-eyebrow {
    margin: 0 0 4px;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .17em;
    color: #bdc1c9;
}

.ft-demo-title {
    margin: 0;
    font-size: 19px;
    line-height: 1.2;
    letter-spacing: -.045em;
    font-weight: 800;
}

.ft-demo-title span {
    color: transparent;
    background: linear-gradient(#ffffff,#ffffff) transparent;
    -webkit-background-clip: text;
    background-clip: text;
}

.ft-demo-status {
    justify-content: flex-end;
    gap: 7px;
    flex: 0 0 auto;
}

.ft-demo-badge,
.ft-demo-live,
.ft-demo-mic,
.ft-demo-signal-copy,
.ft-demo-result-meta span,
.ft-demo-result-status {
    display: inline-flex;
    align-items: center;
    border-radius: 26px;
    white-space: nowrap;
}

.ft-demo-badge {
    min-height: 26px;
    padding: 0 9px;
    background: none rgba(226, 231, 236, .09);
    border: 1px solid rgba(255, 255, 255, .13);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .07em;
    color: #e4e7eb;
}

.ft-demo-live {
    gap: 6px;
    min-height: 26px;
    padding: 0 10px;
    background: none #62cd7c;
    font-size: 7.5px;
    font-weight: 900;
    letter-spacing: .09em;
    color: #131417;
}

.ft-demo-live::before {
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: none #131417;
    animation: ft-demo-live-pulse 1.8s ease-in-out infinite;
    box-shadow: 0 0 0 4px rgba(0,0,0,0.12);
}

.ft-demo-mode-switch {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    margin-top: 20px;
    padding: 4px;
    border: 1px solid #454856;
    border-radius: 10px;
    background: none #131417;
    gap: 2px;
}

.ft-demo-mode {
    min-height: 31px;
    display: grid;
    place-items: center;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    transition: color .22s;
    color: #bdc1c9;
}

.ft-demo-mode.active {
    background: none #4dbfef;
    color: #131417;
}

.ft-demo-stage {
    --ft-demo-core-stage-y: 50%;
    --ft-demo-edge-opacity: .46;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 50px;
    margin-top: 13px;
    isolation: isolate;
    transition: opacity .3s ease, transform .3s ease;
}

.ft-demo-core-home {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 0;
    height: 0;
    z-index: 8;
    isolation: isolate;
}

.ft-demo-core-home::before,
.ft-demo-core-home::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
}

.ft-demo-core-home::before {
    width: 28px;
    height: 26px;
    border-radius: 58% 42% 54% 46% / 44% 58% 42% 56%;
    transform: translate(-50%, -50%) rotate(-5deg) scale(.95);
    background: radial-gradient(circle at 34% 29%, rgba(255,255,255,.88) 0 5%,
            rgba(173,204,251,.58) 8%, rgba(77,191,239,.23) 21%, transparent 40%),radial-gradient(ellipse at 62% 67%, rgba(77,191,239,.32) 0 18%,
            rgba(198,103,152,.14) 40%, transparent 68%),conic-gradient(from 214deg at 50% 50%, rgba(77,191,239,.40),
            rgba(111,163,238,.30) 31%, rgba(198,103,152,.30) 62%, rgba(181,116,216,.36)) transparent;
    opacity: .35;
    animation: ft-demo-core-dormant 2.95s ease-in-out infinite;
    box-shadow: 0 0 8px rgba(77,191,239,.20),
        0 0 21px rgba(77,191,239,.13), 0 0 38px rgba(198,103,152,.06);
}

.ft-demo-core-home::after {
    width: 72px;
    height: 64px;
    border: 1px solid rgba(77,191,239,.065);
    border-radius: 52% 48% 57% 43% / 46% 55% 45% 54%;
    transform: translate(-50%, -50%) rotate(4deg) scale(.94);
    background: radial-gradient(ellipse at 50% 50%, transparent 0 36%, rgba(77,191,239,.040) 45%,
            rgba(77,191,239,.032) 54%, transparent 66%),conic-gradient(from 24deg, transparent 0 8%, rgba(77,191,239,.065) 13%,
            transparent 22% 38%, rgba(198,103,152,.06) 44%, transparent 53% 70%,
            rgba(77,191,239,.068) 76%, transparent 86%) transparent;
    opacity: .18;
    animation: ft-demo-core-dormant-ring 3.15s ease-in-out infinite;
    box-shadow: inset 0 0 18px rgba(77,191,239,.035),
        0 0 22px rgba(77,191,239,.050), 0 0 42px rgba(198,103,152,.04);
}

.ft-demo-app.is-surface-gl-settled .ft-demo-core-home {
    opacity: 0;
    visibility: hidden;
}

.ft-demo-app.is-cycle-resetting .ft-demo-stage {
    opacity: .25;
    transform: scale(.98);
}

.ft-demo-panel,
.ft-demo-result {
    position: relative;
    z-index: 1;
    min-width: 0;
    border-radius: 22px;
    overflow: hidden;
    min-height: 210px;
}

.ft-demo-panel--source::before,
.ft-demo-result::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 24px;
    z-index: 0;
    opacity: var(--ft-demo-edge-opacity, .46);
    transition: opacity .18s ease;
}

.ft-demo-panel--source::before {
    right: 0;
    background: radial-gradient(ellipse 24px 64px at 50% var(--ft-demo-core-stage-y),
        rgba(77, 191, 239, .13), transparent 76%) transparent;
}

.ft-demo-result::before {
    left: 0;
    background: radial-gradient(ellipse 24px 64px at 50% var(--ft-demo-core-stage-y),
        rgba(77, 191, 239, .13), transparent 76%) transparent;
}

.ft-demo-panel--source {
    display: flex;
    flex-direction: column;
    padding: 0;
    background: none #1d1e22;
    color: #f5f7f8;
    border-color: #454856;
    box-shadow: 0 4px 30px rgba(0, 0, 0, .5);
}

.ft-demo-panel-head,
.ft-demo-input-footer,
.ft-demo-result-head,
.ft-demo-result-meta {
    justify-content: space-between;
}

.ft-demo-panel-label {
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .14em;
    color: #c5c8d4;
}

.ft-demo-input-tools {
    display: flex;
    align-items: center;
    gap: 6px;
}

.ft-demo-counter {
    font-size: 7.5px;
    font-weight: 700;
    color: #c5c8d4;
}

.ft-demo-capture-label {
    font-size: 7.5px;
    font-weight: 700;
}

.ft-demo-capture-label {
    padding: 4px 6px;
    border-radius: 7px;
    background: none hsl(227.37deg 12.26% 30.39%);
    color: #ffffff;
}

.ft-demo-input-wrap {
    position: relative;
    flex: 1 1 auto;
    min-height: 0;
    height: auto;
    margin-top: 0;
}

.ft-demo-input {
    height: 100%;
    min-height: 0;
    padding: 10px 16px 38px;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.72;
    overflow-wrap: anywhere;
    color: #f3f5f7;
}

.ft-demo-input-placeholder {
    color: #bec3cd;
}

.ft-demo-app.has-source .ft-demo-input-placeholder {
    display: none;
}

.ft-demo-source-text {
    white-space: pre-wrap;
}

.ft-demo-caret {
    display: inline-block;
    width: 1.5px;
    height: 1.2em;
    margin-left: 1px;
    vertical-align: -.18em;
    border-radius: 2px;
    background: none #4dbfef;
    opacity: 0;
}

.ft-demo-app.is-source-typing .ft-demo-caret {
    opacity: 1;
    animation: ft-demo-caret-blink .72s steps(1, end) infinite;
}

.ft-demo-input-footer {
    position: absolute;
    left: 16px;
    right: 16px;
    bottom: 12px;
}

.ft-demo-mics {
    display: flex;
    gap: 5px;
}

.ft-demo-mic {
    width: 52px;
    height: 25px;
    justify-content: center;
    gap: 2px;
    padding: 0;
    background: none rgba(229, 232, 237, .09);
    border: 1px solid rgba(48, 79, 112, .08);
    font-size: 7px;
    font-weight: 600;
    color: #bec3cd;
}

.ft-demo-mic-symbol {
    width: 14px;
    height: 14px;
    flex: 0 0 auto;
    background: currentColor;
    mask: url("/wp-content/uploads/microphone-1.svg") center / contain no-repeat;
}

.ft-demo-app.is-listening:not(.is-reverse) .ft-demo-mic--ja,
.ft-demo-app.is-listening.is-reverse .ft-demo-mic:last-child {
    color: #b42331;
    background: rgba(255, 241, 243, .92);
    border-color: rgba(180, 35, 49, .18);
}

.ft-demo-signal-copy {
    min-height: 22px;
    font-size: 6.5px;
    font-weight: 700;
    letter-spacing: .11em;
    color: #79e69b;
}

.ft-demo-wave {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    height: 12px;
    margin-right: 4px;
    opacity: 0;
}

.ft-demo-wave i {
    width: 1.5px;
    height: 11px;
    border-radius: 2px;
    background: currentColor;
    transform: scaleY(.27);
    transform-origin: center;
    animation: ft-demo-wave 700ms ease-in-out infinite;
}

.ft-demo-wave i:nth-child(2) {
    animation-delay: -180ms;
}

.ft-demo-wave i:nth-child(3) {
    animation-delay: -340ms;
}

.ft-demo-wave i:nth-child(4) {
    animation-delay: -100ms;
}

.ft-demo-app.is-listening .ft-demo-wave {
    opacity: 1;
}

.ft-demo-app.is-listening .ft-demo-signal-copy {
    color: #b42331;
}

.ft-demo-submit {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 42px;
    margin-top: 12px;
    overflow: hidden;
    border-radius: 10px;
    background: none #4dbfef;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .13em;
    color: #131417;
}

.ft-demo-submit::before {
    content: "";
    position: absolute;
    inset: -55% auto -55% -38%;
    width: 34%;
    background: linear-gradient(105deg, transparent, rgba(255, 255, 255, .72), transparent);
    transform: skewX(-18deg) translateX(-220%);
    opacity: 0;
}

.ft-demo-submit.is-firing::before {
    opacity: .72;
    animation: ft-primary-cta-sweep .72s cubic-bezier(.22, .61, .36, 1) both;
}

.ft-demo-submit-core {
    font-size: 15px;
    line-height: 1;
}

.ft-demo-submit-label {
    position: relative;
    letter-spacing: .14em;
    white-space: nowrap;
    color: #131417;
}

.ft-demo-result {
    display: flex;
    flex-direction: column;
    background: none #1d1e22;
    color: #f5f7f8;
    border-color: #454856;
    box-shadow: 0 4px 30px rgba(0, 0, 0, .5);
}

.ft-demo-panel-head,
.ft-demo-result-head {
    min-height: 52px;
    padding: 12px 13px;
    border-bottom: 1px solid rgba(48, 79, 112, .08);
}

.ft-demo-tabs {
    display: flex;
    gap: 4px;
}

.ft-demo-tab {
    min-width: 54px;
    min-height: 27px;
    display: grid;
    place-items: center;
    padding: 0 10px;
    border-radius: 8px;
    font-size: 7.5px;
    font-weight: 700;
    transition: color .2s, background .2s;
    color: #b8bdc5;
}

.ft-demo-tab.active {
    background: none #4dbfef;
    box-shadow: 0 6px 16px rgba(0,0,0,0.09);
    color: #131417;
}

.ft-demo-result-actions {
    display: flex;
    gap: 4px;
}

.ft-demo-result-icon {
    display: grid;
    place-items: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: none hsl(227.37deg 12.26% 30.39%);
    color: #ffffff;
}

.ft-demo-result-icon::before {
    content: "";
    width: 14px;
    height: 14px;
    background: currentColor;
}

.ft-demo-result-icon:first-child::before {
    mask: url("/wp-content/uploads/volume-1.svg") center / contain no-repeat;
}

.ft-demo-result-icon:last-child::before {
    mask: url("/wp-content/uploads/copy-alt.svg") center / contain no-repeat;
}

.ft-demo-result-body {
    position: relative;
    display: flex;
    flex: 1;
    flex-direction: column;
    justify-content: space-between;
    padding: 15px 15px 13px;
}

.ft-demo-result-status {
    position: absolute;
    left: 15px;
    top: 15px;
    gap: 7px;
    min-height: 25px;
    padding: 0 9px;
    background: none rgba(229, 232, 237, .09);
    border: 1px solid rgba(49, 88, 115, .10);
    font-size: 6.5px;
    font-weight: 950;
    letter-spacing: .09em;
    opacity: 0;
    transform: translateY(4px);
    transition: opacity .22s, transform .22s;
    color: #bec3cd;
}

.ft-demo-result-status::before {
    content: "";
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: linear-gradient(135deg, #62cd7c, #87e5a3) transparent;
    animation: ft-demo-process-pulse 1.15s ease-in-out infinite;
    box-shadow: 0 0 0 4px rgba(98,205,124,.10);
}

.ft-demo-result.is-processing .ft-demo-result-status {
    opacity: 1;
    transform: translateY(0);
}

.ft-demo-result-text {
    font-size: 10.5px;
    font-weight: 760;
    line-height: 1.72;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
    transition: opacity .16s;
    color: #f3f5f7;
}

.ft-demo-result.is-processing .ft-demo-result-text {
    opacity: .10;
}

.ft-demo-result-meta {
    margin-top: 14px;
    font-size: 6.5px;
    font-weight: 700;
    letter-spacing: .09em;
    color: #c5c8d4;
}

.ft-demo-result-meta span {
    min-height: 22px;
    padding: 0 8px;
    border: 1px solid rgba(48, 79, 112, .06);
    transition: color .3s, background-color .3s, border-color .3s;
    background-color: hsl(227.37deg 12.26% 30.39%);
    background-image: none;
    color: #ffffff;
}

.ft-demo-result-meta span.is-lit {
    background: none #1b5933;
    border-color: #5ab787;
    color: #ffffff;
}

.ft-demo-engine-bar {
    justify-content: center;
    margin-top: 13px;
}

.ft-demo-engine-switch {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    flex: 0 1 420px;
    padding: 3px;
    border-radius: 10px;
    background: none #131417;
    border: 1px solid #454856;
}

.ft-demo-engine {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 30px;
    padding: 0 5px;
    border-radius: 8px;
    font-size: 9.5px;
    font-weight: 900;
    transition: color .22s, background-color .22s;
    color: #bdc1c9;
}

.ft-demo-engine.active {
    background-color: #243747;
    background-image: none;
    color: #ffffff;
}

.ft-demo-engine-mark {
    display: grid;
    place-items: center;
    width: 18px;
    height: 18px;
    border-radius: 6px;
    background: none hsl(227.37deg 12.26% 30.39%);
    font-size: 7px;
    font-style: normal;
    color: #ffffff;
}

.ft-demo-note {
    margin: 12px auto 0;
    text-align: center;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .05em;
    color: var(--fortress-muted);
}

@keyframes ft-demo-live-pulse {

    0%,
    100% {
        transform: scale(.82);
        opacity: .72;
    }

    50% {
        transform: scale(1.12);
        opacity: 1;
    }
}

@keyframes ft-demo-caret-blink {

    0%,
    48% {
        opacity: 1;
    }

    49%,
    100% {
        opacity: .08;
    }
}

@keyframes ft-demo-wave {

    0%,
    100% {
        transform: scaleY(.27);
    }

    50% {
        transform: scaleY(1);
    }
}

@keyframes ft-demo-core-dormant {

    0%,
    100% {
        transform: translate(-50%, -50%) rotate(-5deg) scale(.95);
    }

    46% {
        transform: translate(-50%, -50%) rotate(2deg) scale(1.035);
    }
}

@keyframes ft-demo-core-dormant-ring {

    0%,
    100% {
        transform: translate(-50%, -50%) rotate(4deg) scale(.94);
    }

    52% {
        transform: translate(-50%, -50%) rotate(-4deg) scale(1.045);
    }
}

@keyframes ft-demo-process-pulse {

    0%,
    100% {
        transform: scale(.8);
        opacity: .62;
    }

    50% {
        transform: scale(1.18);
        opacity: 1;
    }
}

.hero#top .hero__language-anchors {
    position: absolute;
    inset: 0;
    z-index: 2;
    transform-style: preserve-3d;
}

@keyframes ft-language-anchor-fade {
    0% {
        opacity: .3;
    }

    100% {
        opacity: 1;
    }
}

@keyframes ft-language-anchor-fade-lower {

    0%,
    50% {
        opacity: .3;
    }

    100% {
        opacity: 1;
    }
}

.hero#top .language-anchor {
    position: absolute;
    left: var(--ax);
    top: var(--ay);
    font-size: var(--anchor-size);
    font-weight: 900;
    --ft-pointer-x: 0px;
    --ft-pointer-y: 0px;
    transform: translate3d(calc(-50% + var(--ft-pointer-x)),
            calc(-50% + var(--ft-pointer-y)),
            var(--az)) rotate(var(--rot));
    white-space: nowrap;
    animation: ft-language-anchor-fade both linear;
    animation-timeline: --ft-page-scroll;
    animation-range: 0px 270px;
    color: rgba(199, 201, 210, .25);
}

.hero#top .anchor--ja {
    --ax: 42.2%;
    --ay: 38.2%;
    --az: 12.5px;
    --rot: -8deg;
    --anchor-size: clamp(17px, 1.8vw, 21px);
}

.hero#top .anchor--ko {
    --ax: 58.5%;
    --ay: 35.3%;
    --az: 12.3px;
    --rot: 8deg;
    --anchor-size: clamp(17px, 1.83vw, 22px);
}

.hero#top .anchor--th {
    --ax: 60%;
    --ay: 67%;
    --az: 13px;
    --rot: -7deg;
    --anchor-size: clamp(19.5px, 2vw, 24.5px);
    animation-name: ft-language-anchor-fade-lower;
    animation-range: 0px 960px;
}

.hero#top .anchor--en {
    --ax: 39%;
    --ay: 62%;
    --az: 13.1px;
    --rot: 7deg;
    --anchor-size: clamp(18px, 1.8vw, 21.7px);
    animation-name: ft-language-anchor-fade-lower;
    animation-range: 0px 420px;
}

.hero#top .hero__deep {
    position: absolute;
    inset: -18% -20% -20%;
    isolation: isolate;
    background: none #131417;
}

.hero#top .hero__deep::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255, 255, 255, .026) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, .020) 1px, transparent 1px);
    background-size: 72px 72px;
    opacity: .46;
    mask-image: radial-gradient(ellipse at 50% 42%, #000 0 44%, transparent 76%);
    -webkit-mask-image: radial-gradient(ellipse at 50% 42%, #000 0 44%, transparent 76%);
}

.hero#top .hero__texture-field {
    position: absolute;
    z-index: 2;
    inset: -14% -18% -10%;
    overflow: hidden;
    contain: paint;
    background: radial-gradient(circle at 28% 34%, rgba(199,201,210,.11) 0 1px, transparent 1.8px),radial-gradient(circle at 62% 18%, rgba(199,201,210,.065) 0 1px, transparent 1.7px),radial-gradient(circle at 78% 70%, rgba(199,201,210,.08) 0 1px, transparent 1.7px) transparent;
    background-size: 62px 62px, 86px 86px, 74px 74px;
    opacity: .60;
    mask-image: radial-gradient(ellipse at 50% 42%, #000 0 58%, transparent 82%);
    -webkit-mask-image: radial-gradient(ellipse at 50% 42%, #000 0 58%, transparent 82%);
}

.hero#top .l-near-elements.hero__orbs {
    z-index: 4;
    pointer-events: none;
    transform: translateZ(.5px);
    transform-style: preserve-3d;
}

@keyframes float-a {

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

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

@keyframes float-b {

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

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

.hero#top .hero-kicker {
    position: relative;
    width: max-content;
    margin: auto;
    padding: 10px 17px 10px 35px;
    border: 1px solid #454856;
    border-radius: 26px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .065), rgba(255, 255, 255, .015)) #1e1f26;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .08em;
    margin-top: 300px;
    animation: ft-hero-kicker-scroll-fade 1s both linear;
    animation-timeline: --ft-page-scroll;
    animation-range: 0px 490px;
    color: var(--fortress-muted);
}

@keyframes ft-hero-kicker-scroll-fade {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

.hero#top .hero-kicker__dot {
    position: absolute;
    left: 18px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    transform: translateY(-50%);
    background: radial-gradient(circle at 35% 30%, #f4fff7 0 16%, #62cd7c 18% 100%) transparent;
}

.hero#top .hero-kicker__dot::before {
    content: "";
    position: absolute;
    inset: -5px;
    border-radius: 50%;
    background: none rgba(98, 205, 124, .22);
    opacity: .74;
    transform: scale(.78);
    animation: hero-kicker-pulse 2.5s 1.2s ease-in-out infinite;
}

@keyframes hero-kicker-pulse {

    0%,
    100% {
        transform: scale(.78);
        opacity: .74;
    }

    50% {
        transform: scale(1.28);
        opacity: .32;
    }
}

.hero#top h1 {
    margin: 27px auto 33px;
    font-size: clamp(49px, 10vw, 85px);
    line-height: 1.06;
    letter-spacing: -.07em;
    font-weight: 800;
    text-align: center;
    position: relative;
    left: 4%;
    animation: ft-hero-copy-in 0.9s 0.2s cubic-bezier(0.39, 0.3, 0.24, 1) both;
    --ft-hero-heading-gradient: linear-gradient(96deg, #ffffff 0%, #f8fbff 46%, #dce5f0 75%, #ffffff 100%);
}

.hero#top .hero-title__line {
    display: block;
    white-space: nowrap;
}

.hero#top .hero-title__line--accent {
    color: transparent;
    background: var(--ft-hero-heading-gradient);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    animation: ft-heading-gradient 1s both linear;
    animation-timeline: --ft-page-scroll;
    animation-range: 0px 330px;
}

@keyframes ft-heading-gradient {

    0%,
    30% {
        background-position: 0% 50%;
    }

    100% {
        background-position: 70% 50%;
    }
}

.hero#top .hero__lead {
    max-width: 675px;
    margin: 0 auto 32px;
    font-size: 16px;
    line-height: 1.75;
    animation: ft-hero-copy-in 0.9s .3s cubic-bezier(0.39, 0.3, 0.24, 1) both;
    font-weight: 300;
    color: var(--fortress-muted);
}

@keyframes ft-hero-copy-in {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

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

.hero#top .hero__actions {
    display: flex;
    gap: 13px;
    flex-wrap: wrap;
    justify-content: center;
    margin-bottom: 26px;
}

.hero#top .hero__proof {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    color: var(--fortress-muted);
}

.hero#top .hero__proof span {
    display: flex;
    align-items: center;
    gap: 7px;
    background: none hsl(222.86deg 13.73% 20%);
    border: 1px solid #454856;
    border-radius: 26px;
    padding: 8px 11px;
    color: #e1e1e2;
}

.hero#top .hero__proof span::before {
    content: "✓";
    display: grid;
    place-items: center;
    flex: 0 0 19px;
    height: 19px;
    border-radius: 50%;
    background: none #d4dce6;
    font-weight: 900;
    font-size: 10px;
    color: #1b2430;
}

.hero#top .scroll-cue {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 32px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--fortress-muted);
}

.hero#top .scroll-cue i {
    position: relative;
    width: 32px;
    height: 1px;
    background: linear-gradient(90deg, #62cd7c 0%, #4dbfef 46%, #c66798 76%, transparent 100%) transparent;
}

.hero#top .scroll-cue i::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: none #62cd7c;
    left: 0;
    top: -2px;
    animation: cue 2.2s ease-in-out 1.2s infinite;
}

@keyframes cue {
    50% {
        left: 26px;
        opacity: .2;
    }
}

.hero#top .hero__inner {
    width: 93.6%;
    margin: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 35px;
}

.ultra-view>.topbar-seat {
    position: relative;
    z-index: 99;
    height: var(--topbar-h);
    background: none #000000;
}

.topbar-seat+.topbar {
    margin-top: calc(var(--topbar-h) * -1);
}

.hero#top .hero-ring::before {
    content: "";
    position: absolute;
    inset: -92px;
    border-radius: 50%;
    z-index: -1;
    border: 1px solid rgba(255, 255, 255, .026);
    border-right-color: transparent;
    background: radial-gradient(circle closest-side, rgba(77, 191, 239, .006) 0 calc(100% - 82px), transparent calc(100% - 81px)),radial-gradient(circle closest-side, rgba(198, 103, 152, .005) 0 calc(100% - 1px), transparent 100%) transparent;
    border-top-color: rgb(198 103 152 / var(--ms-ring-before-top-a));
    border-bottom-color: rgb(77 191 239 / var(--ms-ring-before-bottom-a));
    border-left-color: rgba(98, 205, 124, .035);
}

.hero#top .hero-ring::after {
    content: "";
    position: absolute;
    inset: 17%;
    border-radius: 50%;
    border: 1px dashed rgba(255, 255, 255, .050);
    border-bottom-color: transparent;
    background: radial-gradient(circle closest-side, transparent 0 calc(55.555% - .65px),
        rgba(199,201,210,.05) calc(55.555% - .65px) calc(55.555% + .65px),
        transparent calc(55.555% + .65px)) transparent;
    opacity: var(--ms-ring-after-a);
    border-top-color: rgba(199,201,210,.11);
    border-right-color: rgba(199,201,210,.07);
}

.hero#top .hero-ring {
    position: absolute;
    aspect-ratio: 1;
    border-radius: 50%;
    isolation: isolate;
    right: -180px;
    top: 16%;
    width: min(58vw, 600px);
    --ft-pointer-x: 0px;
    --ft-pointer-y: 0px;
    opacity: 0;
    transform: translate3d(var(--ft-pointer-x), var(--ft-pointer-y), 1px) scale(var(--ms-ring-scale));
    transition: opacity 1s cubic-bezier(0.8, 0.2, 1, 1) 0.3s;
}

.hero#top.hero--ring-frame-ready .hero-ring,
.hero#top[data-ring-gl-mode="dom-fallback"] .hero-ring,
.hero#top[data-ring-gl-mode="disabled"] .hero-ring {
    opacity: 1;
}

.hero#top .hero-ring__signal,
.hero#top .hero-ring__matrix {
    position: absolute;
    border-radius: inherit;
    transform: rotate(calc(var(--ms-ring-rot) * 1deg));
}

.hero#top .hero-ring__signal {
    inset: 0;
    z-index: 3;
    background: conic-gradient(from 0deg, rgba(255,224,93,.96) 0deg 28deg, transparent 46deg 213deg,
        transparent 222deg, rgba(178,108,222,1) 247deg,
        rgba(230,132,183,1) 259deg, rgba(255,186,119,1) 275deg,
        rgba(255,224,93,1) 297deg, rgba(255,224,93,.93) 339deg, rgba(255,224,93,.96) 354deg 360deg) transparent;
    mix-blend-mode: screen;
    mask-image: radial-gradient(circle,transparent 0 56.5%,#000 57.5% 61.5%,transparent 62.5% 64%,#000 65% 69%,transparent 70% 71%,#000 72% 75%,transparent 76% 100%), conic-gradient(from 0deg, #000 0deg 15deg, transparent 15.7deg 17.8deg, #000 18.6deg 249deg, transparent 249.8deg 251.4deg, #000 252.2deg 275deg, transparent 275.8deg 277.5deg, #000 278.3deg 301.5deg, transparent 302.2deg 304.3deg, #000 305deg 337.5deg, transparent 338.2deg 340deg, #000 340.8deg 360deg);
    -webkit-mask-image: radial-gradient(circle,transparent 0 56.5%,#000 57.5% 61.5%,transparent 62.5% 64%,#000 65% 69%,transparent 70% 71%,#000 72% 75%,transparent 76% 100%), conic-gradient(from 0deg, #000 0deg 15deg, transparent 15.7deg 17.8deg, #000 18.6deg 249deg, transparent 249.8deg 251.4deg, #000 252.2deg 275deg, transparent 275.8deg 277.5deg, #000 278.3deg 301.5deg, transparent 302.2deg 304.3deg, #000 305deg 337.5deg, transparent 338.2deg 340deg, #000 340.8deg 360deg);
    mask-composite: intersect;
    -webkit-mask-composite: source-in;
    opacity: clamp(.70, calc(var(--ms-ring-signal-a) * 3.1), .93);
}

.hero#top .hero-ring__signal::before,
.hero#top .hero-ring__signal::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
}

.hero#top .hero-ring__signal::before {
    background: conic-gradient(from -3deg, transparent 0deg 238deg,
        rgba(181,116,216,0) 248deg, rgba(181,116,216,.54) 258deg,
        rgba(234,138,181,.47) 276deg, rgba(255,184,130,.40) 292deg,
        rgba(255,216,102,0) 308deg, transparent 326deg 360deg) transparent;
    opacity: .70;
    mask-image: radial-gradient(circle, transparent 0 66.35%, #000 66.85% 70.55%, transparent 71.10% 100%);
    -webkit-mask-image: radial-gradient(circle, transparent 0 66.35%, #000 66.85% 70.55%, transparent 71.10% 100%);
}

.hero#top .hero-ring__signal::after {
    background: conic-gradient(from 0deg,
            transparent 0deg 257deg,
            rgba(255, 255, 255, 0) 262deg,
            rgba(255, 255, 255, .76) 266deg,
            rgba(255, 255, 255, 0) 271deg,
            transparent 282deg 360deg);
    opacity: .62;
    mask-image: radial-gradient(circle, transparent 0 68.38%, #000 68.66% 68.96%, transparent 69.24% 100%);
    -webkit-mask-image: radial-gradient(circle, transparent 0 68.38%, #000 68.66% 68.96%, transparent 69.24% 100%);
}

.hero#top .hero-ring__matrix {
    z-index: 2;
    inset: 8.5%;
    background: radial-gradient(circle at 2px 2px, rgba(77,191,239,.56) 0 .95px, transparent 1.30px) transparent;
    background-size: 30px 30px;
    opacity: var(--ms-ring-matrix-a);
    mix-blend-mode: screen;
    mask-image: radial-gradient(circle, transparent 0 42%, #000 43% 69%, transparent 70% 100%),
        conic-gradient(from 0deg,
            transparent 0deg 238deg,
            #000 254deg 296deg,
            transparent 316deg 360deg);
    -webkit-mask-image: radial-gradient(circle, transparent 0 42%, #000 43% 69%, transparent 70% 100%),
        conic-gradient(from 0deg,
            transparent 0deg 238deg,
            #000 254deg 296deg,
            transparent 316deg 360deg);
}

.hero#top .hero-ring-frame {
    position: absolute;
    top: -92px;
    left: -92px;
    width: calc(100% + 184px);
    height: calc(100% + 184px);
    opacity: 0;
    visibility: hidden;
    mix-blend-mode: screen;
}

.hero#top .hero-ring-frame.is-visible {
    opacity: 1;
    visibility: visible;
}

.hero#top.hero--ring-frame-ready .hero-ring::before,
.hero#top.hero--ring-frame-ready .hero-ring::after {
    content: none;
}

.hero#top.hero--ring-frame-ready .hero-ring__signal,
.hero#top.hero--ring-frame-ready .hero-ring__matrix {
    display: none;
}

.hero#top.ft-pointer-calibrating .orb {
    animation-play-state: paused;
}

@property --ft-orb-scroll-y {
    syntax: "<length>";
    inherits: false;
    initial-value: 0px;
}

.hero#top .orb {
    --ft-pointer-x: 0px;
    --ft-pointer-y: 0px;
    position: absolute;
    border-radius: 50%;
    opacity: .5;
    translate: var(--ft-pointer-x) calc(var(--ft-pointer-y) + var(--ft-orb-scroll-y)) var(--orb-parallax-z, 0px);
}

.hero#top .orb--1 {
    --orb-parallax-z: -1.8px;
    width: clamp(80px, 7.5vw, 95px);
    height: clamp(80px, 7.5vw, 95px);
    top: 14%;
    left: -4%;
    animation: float-a 7s ease-in-out infinite;
    background: radial-gradient(circle at 34% 28%, rgba(255,255,255,.78),
        rgba(77,191,239,.38) 28%, rgba(181,116,216,.13) 72%, transparent 100%) transparent;
}

.hero#top .orb--2 {
    --orb-parallax-z: 0.7px;
    width: 53px;
    height: 53px;
    top: 50.5%;
    right: 12%;
    animation: float-b 9s ease-in-out infinite;
    background: radial-gradient(circle at 34% 28%, rgba(255,255,255,.76),
        rgba(247,216,93,.52) 30%, rgba(228,190,115,.21) 72%, transparent 100%) transparent;
}

@keyframes ft-orb-2-scroll-depth {
    from {
        --ft-orb-scroll-y: 0px;
    }

    to {
        --ft-orb-scroll-y: 56.8421svh;
    }
}

@supports (animation-timeline: scroll()) {
.hero#top .orb--2 {
    animation: float-b 9s ease-in-out infinite,
            ft-orb-2-scroll-depth 1s both linear;
    animation-timeline: auto, --ft-page-scroll;
    animation-range: normal, 0px 180svh;
}

}
.hero#top .orb--3 {
    --orb-parallax-z: -2.3px;
    width: clamp(49px, 4.6vw, 52px);
    height: clamp(49px, 4.6vw, 52px);
    top: 21%;
    right: 8%;
    animation: float-a 11s ease-in-out infinite 1s;
    background: radial-gradient(circle at 34% 28%, rgba(255,255,255,.72),
        rgba(186,129,184,.58) 30%, rgba(207,160,147,.24) 72%, transparent 100%) transparent;
}

.hero#top .glass-chip {
    position: absolute;
    padding: 8px 14px;
    border-radius: 26px;
    background: linear-gradient(145deg, rgba(255, 255, 255, .065), rgba(255, 255, 255, .015)) #1e1f26;
    border: 1px solid #454856;
    backdrop-filter: blur(10px) saturate(1.12);
    -webkit-backdrop-filter: blur(10px) saturate(1.12);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .04em;
    overflow: hidden;
    isolation: isolate;
    --ft-chip-cycle: 11.6s;
    --ft-pointer-x: 0px;
    --ft-pointer-y: 0px;
    transform: translate3d(var(--ft-pointer-x), var(--ft-pointer-y), 1.5px);
    color: var(--fortress-muted);
}

.hero#top .glass-chip--2 {
    right: 14%;
    top: 19.5%;
    --ft-chip-delay: -6.4s;
    color: var(--fortress-muted);
    border-color: rgba(198, 103, 152, .34);
}

.hero#top .glass-chip--1 {
    left: 12%;
    top: 16%;
    --ft-chip-delay: -1.2s;
    color: var(--fortress-muted);
    border-color: rgba(77, 191, 239, .36);
}

.hero#top .glass-chip::before,
.hero#top .glass-chip::after {
    content: "";
    position: absolute;
    border-radius: inherit;
    animation: ft-chip-signal-surface var(--ft-chip-cycle) cubic-bezier(.42, 0, .22, 1) infinite;
    animation-delay: var(--ft-chip-delay);
}

.hero#top .glass-chip::before {
    inset: -40% auto -40% -64%;
    width: 138%;
    background: radial-gradient(circle at 2px 2px, rgba(225, 255, 255, .46) 0 .72px, transparent 1.08px);
    background-size: 8px 8px;
    opacity: 0;
    mix-blend-mode: screen;
    mask-image: linear-gradient(105deg, transparent 0 34%, #000 47% 55%, transparent 70% 100%);
    -webkit-mask-image: linear-gradient(105deg, transparent 0 34%, #000 47% 55%, transparent 70% 100%);
}

.hero#top .glass-chip::after {
    inset: -1px;
    background: linear-gradient(105deg, transparent 0 37%,
        rgba(98, 205, 124, 0) 42%, rgba(98, 205, 124, .15) 47%,
        rgba(255, 255, 255, .12) 51%, rgba(77, 191, 239, .20) 55%,
        rgba(198, 103, 152, .12) 59%, transparent 66% 100%) transparent;
    opacity: 0;
    mix-blend-mode: screen;
}

@keyframes ft-chip-signal-surface {

    0%,
    28% {
        transform: translate3d(-34%, 0, 0) skewX(-10deg);
        opacity: 0;
    }

    48% {
        opacity: .62;
    }

    72%,
    100% {
        transform: translate3d(82%, 0, 0) skewX(-10deg);
        opacity: 0;
    }
}

html.ft-touch-device .hero#top .app-shell {
    perspective: none;
}

html.ft-touch-device .hero#top .ft-demo-interaction-surface {
    pointer-events: none;
}

html.ft-touch-device .hero#top .ft-demo-tilt,
html.ft-touch-device .hero#top .ft-demo-tilt.is-tilting {
    transform: none;
    transform-style: flat;
    transition: none;
    touch-action: pan-y;
    cursor: default;
}

html.ft-touch-device .hero#top .ft-demo-app {
    transform-style: flat;
}

html.ft-touch-device .hero#top .ft-demo-surface-light,
html.ft-touch-device .hero#top .ft-demo-surface-frame,
html.ft-touch-device .hero#top .ft-demo-core-home,
html.ft-touch-device .hero#top .ft-demo-panel--source::before,
html.ft-touch-device .hero#top .ft-demo-result::before {
    display: none;
}

.hero#top.ft-hero-effects-paused,
.hero#top.ft-hero-effects-paused::before,
.hero#top.ft-hero-effects-paused::after,
.hero#top.ft-hero-effects-paused *,
.hero#top.ft-hero-effects-paused *::before,
.hero#top.ft-hero-effects-paused *::after,
.hero#top.ft-hero-effects-paused .scroll-cue i::after {
    animation-play-state: paused;
    transition: none;
}

.hero#top.ft-hero-effects-paused h1,
.hero#top.ft-hero-effects-paused .hero__lead,
.hero#top.ft-hero-effects-paused .hero-kicker {
    animation-play-state: running;
}

.benchmark-test-tabs button[data-score-tier="excellent"] {
    --score-accent: 116, 240, 227;
}


.benchmark-test-tabs button[data-score-tier="caution"] {
    --score-accent: 245, 190, 76;
}

.benchmark-test-tabs button[data-score-tier="risk"] {
    --score-accent: 242, 119, 135;
}

.benchmark-test-tabs button[aria-selected="true"] {
    background: none #243747;
    box-shadow: 0 14px 30px rgba(var(--score-accent), .18);
    color: #ffffff;
    border-color: #4dbfef;
}

.benchmark-test-tabs button[data-score-tier="risk"][aria-selected="true"] {
    color: #fff7f8;
}

.evaluation-commentary.is-caution h5 {
    color: rgba(255, 214, 128, .92);
}

.evaluation-commentary.is-caution p {
    color: var(--fortress-muted);
}

.evaluation-commentary.is-risk h5 {
    color: rgba(255, 184, 196, .92);
}

.evaluation-commentary.is-risk p {
    color: var(--fortress-muted);
}

.evaluation-commentary__risk-flags {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 12px;
}

.evaluation-commentary__risk-flags span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 5px 10px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 26px;
    background: rgba(255, 255, 255, .055);
    font-size: 10px;
    line-height: 1.3;
    font-weight: 850;
    color: var(--fortress-muted);
}

.evaluation-commentary.is-excellent .evaluation-commentary__risk-flags span {
    background: linear-gradient(135deg, rgba(98,205,124,0.14), rgba(77,191,239,0.1)) transparent;
    border-color: rgba(164,170,182,0.3);
    color: #ffffff;
}

.evaluation-commentary.is-strong .evaluation-commentary__risk-flags span {
    background: linear-gradient(135deg, rgba(77,191,239,0.14), rgba(198,103,152,0.1)) transparent;
    border-color: rgba(164,170,182,0.3);
    color: #ffffff;
}

.evaluation-commentary.is-caution .evaluation-commentary__risk-flags span {
    border-color: rgba(245, 190, 76, .30);
    background: linear-gradient(135deg, rgba(245, 190, 76, .14), rgba(230, 145, 61, .10));
    color: #ffffff;
}

.evaluation-commentary.is-risk .evaluation-commentary__risk-flags span {
    border-color: rgba(242, 119, 135, .28);
    background: linear-gradient(135deg, rgba(242, 119, 135, .14), rgba(202, 72, 98, .10));
    color: #ffffff;
}

#features::before {
    position: absolute;
    inset: 12% -6% 2%;
    pointer-events: none;
    content: "";
    background: var(--ft-ornament-rest, none) calc(50% - clamp(0px, calc((100vw - 680px) * .185), 190px)) calc(91% - 160px + min(160px, 13vw)) / min(950px, 73%) auto no-repeat;
}

#features>.ft-awaken-plane {
    position: absolute;
    inset: 12% -6% 2%;
    pointer-events: none;
}

@media (min-width: 1270px) {
.quality-score-fragment--1 {
    right: calc(50% - 749.3px);
}

.quality-score-fragment--2 {
    left: calc(50% - 828px);
}

.quality-score-fragment--3 {
    right: calc(50% - 830px);
}

.origin-copy {
    flex-basis: 320px;
}

.origin-timeline {
    --origin-layout-delay: .35s;
}

.quality-lead-continuation {
    display: block;
}

.hero#top :is(.language-anchor, .hero-ring, .glass-chip, .orb) {
    --hero-eye-y: calc(50vh - var(--topbar-h));
    left: calc(50% + (var(--hero-x) * var(--hero-depth-ratio) + (var(--hero-depth-ratio) - 1) * (50% - 50vw)) / var(--hero-plane-scale));
    top: calc(50% + ((100% - var(--hero-bottom-space) + var(--hero-y) - var(--hero-eye-y)) * var(--hero-depth-ratio) - (50% - var(--hero-eye-y))) / var(--hero-plane-scale));
    right: auto;
}

.hero#top .l-deep-bg {
    --hero-plane-scale: 2.5;
}

.hero#top .l-mid-elements {
    --hero-plane-scale: 1.5;
}

.hero#top .hero__orbs {
    --hero-plane-scale: 1;
}

.hero#top .glass-chip {
    width: max-content;
}

.hero#top .anchor--ja {
    --hero-x: -462px;
    --hero-y: -610px;
    --hero-depth-ratio: .9;
}

.hero#top .anchor--ko {
    --hero-x: 490px;
    --hero-y: -718px;
    --hero-depth-ratio: .925;
}

.hero#top .anchor--en {
    --hero-x: -304px;
    --hero-y: -32px;
    --hero-depth-ratio: .825;
}

.hero#top .anchor--th {
    --hero-x: 357px;
    --hero-y: 101px;
    --hero-depth-ratio: .8375;
}

.hero#top .hero-ring {
    --hero-depth-ratio: 1.375;
    --hero-x: clamp(70px, calc(45vw - 568.75px), 230px);
    --hero-y: -710px;
}

.hero#top .orb--1 {
    --hero-x: -741px;
    --hero-y: -699px;
    --hero-depth-ratio: 1.1625;
}

.hero#top .orb--2 {
    --hero-x: 745px;
    --hero-y: -395px;
    --hero-depth-ratio: .85;
}

.hero#top .orb--3 {
    --hero-x: 476px;
    --hero-y: -632px;
    --hero-depth-ratio: 1.225;
}

.hero#top .glass-chip--1 {
    --hero-x: -750px;
    --hero-y: -764px;
    --hero-depth-ratio: 1.3125;
}

.hero#top .glass-chip--2 {
    --hero-x: 586px;
    --hero-y: -690px;
    --hero-depth-ratio: 1.3125;
}

.hero#top .hero__lead {
    max-width: 535px;
    margin: 0 0 20px;
}

.sales-grid {
    grid-template-columns: minmax(260px, .68fr) minmax(0, 1.72fr);
    gap: 34px;
}

.sales-summary {
    position: sticky;
    top: calc(var(--topbar-h) + 24px);
    margin-bottom: 29px;
}

.section-3d.hero#top {
    --hero-bottom-space: 6vh;
    min-height: max(92vh, calc(870px + var(--hero-bottom-space)));
    height: auto;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: var(--hero-bottom-space);
}

.usecase-grid {
    grid-template-columns: repeat(4, 1fr);
    max-width: none;
}

.features-scene {
    min-height: 1300px;
}

.features__back {
    inset: 8% -10% 0;
    font-size: clamp(180px, 30vw, 500px);
}

.features__mid {
    inset: 18% 0 4%;
}

.feature-card-grid {
    position: absolute;
    inset: 0;
    left: max(64px, calc((100% - 1180px) / 2));
    right: max(64px, calc((100% - 1180px) / 2));
    width: auto;
    margin-top: 0;
}

.feature-card-layer {
    position: absolute;
    inset: 0;
}

.feature-card-layer--1,
.feature-card-layer--6 {
    --depth-z: -70px;
    --depth-scale: 1.064;
}

.feature-card-layer--2 {
    --depth-z: -175px;
    --depth-scale: 1.16;
}

.feature-card-layer--3 {
    --depth-z: -32px;
    --depth-scale: 1.029;
}

.feature-card-layer--4 {
    --depth-z: -115px;
    --depth-scale: 1.105;
}

.feature-card-layer--5 {
    --depth-z: -330px;
    --depth-scale: 1.30;
}

.depth-card {
    position: absolute;
    width: min(320px, 30vw);
    height: auto;
}

.feature-card-layer--1 .depth-card {
    left: 4%;
    top: 405px;
}

.feature-card-layer--2 .depth-card {
    left: calc(50% - 155px);
    top: 405px;
}

.feature-card-layer--3 .depth-card {
    right: 2.5%;
    top: 388px;
}

.feature-card-layer--4 .depth-card {
    left: 2.5%;
    top: 691px;
}

.feature-card-layer--5 .depth-card {
    left: calc(50% - 153px);
    top: 685px;
}

.feature-card-layer--6 .depth-card {
    right: 0.6%;
    top: 652px;
}

.features-scene .feature-card-grid[data-parallax-speed="0.04"] {
    --css-parallax-range: 36px;
}

.features-scene .feature-card-layer--1 {
    --css-parallax-range: 125px;
}

.features-scene .feature-card-layer--6 {
    --css-parallax-range: 250px;
}

.features-scene .feature-card-layer[data-parallax-speed="0.05"] {
    --css-parallax-range: 100px;
}

.features-scene .feature-card-layer[data-parallax-speed="0.11"] {
    --css-parallax-range: 160px;
}

.features-scene .feature-card-layer[data-parallax-speed="0.24"] {
    --css-parallax-range: 132px;
}

.hero#top h1 {
    left: 0;
    margin-top: 0;
}

.hero#top .hero-kicker {
    position: absolute;
    left: 50%;
    top: -64px;
    margin: 0;
    translate: -50% 0;
}

.hero#top .hero__inner>div:first-child {
    padding-top: 40px;
}

.hero#top .hero__actions,
.hero#top .hero__proof,
.hero#top .scroll-cue {
    justify-content: flex-start;
}

.hero#top .hero__proof {
    max-width: 500px;
}

.hero#top .l-foreground {
    flex: 0 0 min(100%, 1353px);
}

.hero#top .hero__inner {
    position: relative;
    flex-direction: row;
}

.hero#top .hero__demo-stack {
    margin: 0;
}

#features::before,
#features>.ft-awaken-plane {
    inset: 18% 0 4%;
}

}
#howto .section__inner {
    container-type: inline-size;
}

@container (max-width: 785.98px) {
#howto .steps-grid {
    display: flex;
    margin-inline-end: calc(-1 * var(--section-inline-gutter));
    padding-inline-end: max(var(--section-inline-gutter), env(safe-area-inset-right));
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    cursor: grab;
    user-select: none;
}

#howto .steps-grid::-webkit-scrollbar {
    display: none;
}

#howto .steps-grid>.step-card {
    flex: 0 0 min(82.5cqw, 340px);
    opacity: 1;
    transform: translateY(0);
}

#howto .mobile-rail__scrollbar {
    display: block;
    margin-inline-end: calc(2px - var(--section-inline-gutter));
}

}
@media (max-width: 1269.98px) {
.plan-rail {
    margin-inline-end: calc(-1 * var(--section-inline-gutter));
    padding-inline-end: max(var(--section-inline-gutter), env(safe-area-inset-right));
}

.plan-rail+.plan-rail__scrollbar {
    margin-inline-end: calc(2px - var(--section-inline-gutter));
}

}
@media (max-width: 767px) and (hover: hover) and (pointer: fine) {
[data-mobile-rail] {
    cursor: grab;
    scroll-snap-type: none;
}

[data-mobile-rail].is-dragging {
    cursor: grabbing;
    user-select: none;
}

[data-mobile-rail].is-dragging>* {
    pointer-events: none;
}

}
:where(.fortress-translator, .fortress-checkout-entry) {
    --text-dark: #F7FBFF;
    --text-muted: rgba(224, 241, 250, 0.74);
    --voice-active-red: #FF6B6B;
    --ft-control-lock-duration: 0.2s;
    --ft-control-release-duration: 0.55s;
    --ft-control-transition-curve: cubic-bezier(0.49, 0.17, 0.2, 1);
    --app-bg: #131417;
    --app-panel: #131417;
    --app-surface: #1e1f26;
    --app-active: #4dbfef;
    --app-line: rgba(77,191,239,0.16);
    --app-line-strong: rgba(77,191,239,0.24);
    --success-green: #62cd7c;
    --theme-primary: #62cd7c;
    --theme-tint: rgba(98,205,124,0.1);
    --theme-header-alpha: rgba(77,191,239,0.1);
    --focus-glow: rgba(98,205,124,0.16);
    --fortress-emboss-shadow: 0 1px 0 rgba(255,255,255,0.05) inset,
        0 14px 28px rgba(0,0,0,0.16);
}

.fortress-translator {
    --foreign-result-font-size: 1.42em;
    --foreign-result-line-height: 1.2;
    --foreign-source-font-size: 1.08em;
    max-width: 868px;
    margin: 42px auto 0;
    padding: clamp(15px, 3vw, 26px) clamp(12px, 3vw, 26px) clamp(12px, 3vw, 26px);
    color: var(--text-dark);
    background: radial-gradient(circle at 10% 0%, rgba(116, 240, 227, 0.07), transparent 28%),
        radial-gradient(circle at 92% 100%, rgba(145, 170, 255, 0.08), transparent 32%),
        var(--app-bg);
    font-size: 17.8px;
    line-height: 1.3;
    border: 1px solid #454856;
    border-radius: 26px;
    --grad-brand: linear-gradient(108deg, #62cd7c, #83e9a5);
    background-color: #1e1f26;
    background-image: none;
    --app-bg: #1e1f26;
    --app-panel: #131417;
    --app-surface: hsl(222.86deg 13.73% 20%);
    --app-active: hsl(227.37deg 12.26% 30.39%);
    --app-line: #454856;
    --app-line-strong: #454856;
    --text-dark: #ffffff;
    --text-muted: var(--fortress-muted);
    --theme-primary: #4dbfef;
    --theme-tint: rgba(77,191,239,.10);
    --theme-header-alpha: hsl(222.86deg 13.73% 20%);
    --focus-glow: rgba(77,191,239,.16);
}

.fortress-checkout-entry {
    width: min(868px, 100%);
    margin: clamp(28px, 4vw, 42px) auto 0;
    color: var(--text-dark);
    font-size: 17.8px;
    line-height: 1.7;
    --app-bg: #1e1f26;
    --app-panel: #131417;
    --app-surface: hsl(222.86deg 13.73% 20%);
    --app-active: hsl(227.37deg 12.26% 30.39%);
    --app-line: #454856;
    --app-line-strong: #454856;
    --text-dark: #ffffff;
    --text-muted: var(--fortress-muted);
    --theme-primary: #4dbfef;
    --theme-tint: rgba(77,191,239,.10);
    --theme-header-alpha: hsl(222.86deg 13.73% 20%);
    --focus-glow: rgba(77,191,239,.16);
}

.fortress-checkout-copy {
    width: min(560px, 100%);
    margin: 0 auto 0.7em;
    text-align: center;
}

.fortress-checkout-copy>.section-kicker {
    margin-bottom: .7em;
}

.fortress-checkout-copy>strong {
    display: block;
    color: var(--text-dark);
    font-size: clamp(1.06em, 2vw, 1.25em);
    line-height: 1.35;
    font-weight: 850;
    letter-spacing: -.025em;
}

.fortress-checkout-copy>span {
    display: block;
    max-width: 34em;
    margin: .55em auto 0;
    color: var(--text-muted);
    font-size: .72em;
    line-height: 1.65;
    font-weight: 600;
}

.fortress-translator[data-mode="taiwan"],
.fortress-translator[data-mode="hongkong"] {
    --foreign-result-font-size: 1.22em;
}

.fortress-translator[data-mode="korea"] {
    --foreign-result-font-size: 1.18em;
}

.fortress-translator[data-mode="english"] {
    --foreign-result-font-size: 1.15em;
}

:where(.fortress-translator, .fortress-checkout-entry) :where(button, input, select, textarea) {
    margin: 0;
}

:where(.fortress-translator, .fortress-checkout-entry) :where(button, select) {
    -webkit-appearance: none;
    appearance: none;
    border: 0;
    text-transform: none;
}

:where(.fortress-translator, .fortress-checkout-entry) :where(img) {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

:where(.fortress-translator, .fortress-checkout-entry) :where(p, figure) {
    margin-block: 1.5em;
}

:where(.fortress-translator, .fortress-checkout-entry) :where(textarea) {
    overflow: auto;
    vertical-align: top;
}

.fortress-translator .trans-input-wrapper::after {
    content: "Translating";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    padding: 0.75em 1.5em;
    border-radius: 26px;
    font-size: 0.75em;
    font-weight: 600;
    z-index: 9;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s cubic-bezier(0.4, 0, 1, 1), visibility 0.5s cubic-bezier(0.4, 0, 1, 1);
    background-color: rgba(19,20,23,0.85);
    box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}

.fortress-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 0.65em;
    margin-bottom: 14.5px;
    border-bottom: 1px solid var(--app-line);
    padding-bottom: clamp(16px, 3vw, 26px);
}

.fortress-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.15em;
    padding: 0.55em 2px 0.55em 0;
    border-radius: 25px;
    font-size: 0.75em;
    font-weight: 700;
    border: 1px solid rgba(77, 191, 239, .28);
    width: 99px;
    justify-content: center;
    background-color: rgba(77, 191, 239, .10);
    color: #7ad9f8;
}

.fortress-badge-icon {
    flex: 0 0 auto;
    width: 1.45em;
    height: 1.45em;
    overflow: visible;
}

.fortress-title {
    min-width: 0;
    margin: 0;
    background: linear-gradient(#ffffff,#ffffff) transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: clamp(1.2em, 7.5vw, 1.8em);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -0.035em;
    color: #ffffff;
}

.fortress-title::after {
    content: attr(data-description);
    display: block;
    margin-top: 0.6em;
    color: rgba(224, 241, 250, 0.68);
    -webkit-text-fill-color: rgba(224, 241, 250, 0.68);
    font-size: clamp(11px, 0.48em, 13px);
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: 0.1em;
}

.fortress-manual,
.fortress-plan-status,
.fortress-support-ref-notice {
    width: 100%;
    max-width: 670px;
    margin-inline: auto;
}

.fortress-manual {
    margin-block: 0 14.5px;
    border: 1px solid #454856;
    border-radius: 7px;
    background: none hsl(222.86deg 13.73% 20%);
    font-size: 0.75em;
    overflow: hidden;
    color: #d2d5dd;
}

.fortress-manual>summary,
.fortress-plan-status>summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1em;
    padding: 0.9em 1em;
    font-weight: 800;
    line-height: 1.4;
    list-style: none;
    cursor: pointer;
    transition: background-color 0.2s;
    color: #ffffff;
}

.fortress-support-ref-notice>summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1em;
    padding: 0.9em 1em;
    color: var(--theme-primary);
    font-weight: 800;
    line-height: 1.4;
    list-style: none;
    cursor: pointer;
    transition: background-color 0.2s;
}

.fortress-support-ref-notice summary {
    color: var(--fortress-muted);
}

.faq-item summary::-webkit-details-marker,
.howto-prep__details>summary::-webkit-details-marker,
.fortress-manual>summary::-webkit-details-marker,
.fortress-plan-status>summary::-webkit-details-marker,
.fortress-support-ref-notice>summary::-webkit-details-marker {
    display: none;
}

.fortress-manual>summary::after,
.fortress-plan-status>summary::after {
    content: "＋";
    color: rgba(224, 241, 250, 0.72);
    font-size: 1.1em;
    line-height: 1;
    transition: transform 0.2s ease;
}

.fortress-support-ref-notice>summary::after {
    content: "▼";
    color: var(--theme-primary);
    font-size: 0.83em;
    transition: transform 0.2s;
}

.fortress-standard-checkout-toggle::after,
.fortress-premium-checkout-toggle::after {
    content: "▼";
    font-size: 0.83em;
    transition: transform 0.2s;
}

.fortress-standard-checkout-toggle::after {
    position: absolute;
    top: 53%;
    right: 2.1em;
    line-height: 1;
    translate: 0 -50%;
    pointer-events: none;
    color: #ffffff;
}

.fortress-premium-checkout-toggle::after {
    position: absolute;
    top: 53%;
    right: 2.1em;
    line-height: 1;
    translate: 0 -50%;
    pointer-events: none;
}

.fortress-manual[open]>summary::after,
.fortress-plan-status[open]>summary::after {
    transform: rotate(45deg);
}

.fortress-support-ref-notice[open]>summary::after,
.fortress-standard-checkout-toggle[aria-expanded="true"]::after,
.fortress-premium-checkout-toggle[aria-expanded="true"]::after {
    transform: rotate(180deg);
}

.fortress-manual__body {
    padding: 0 1em 1em;
    border-top: 1px solid var(--app-line);
    line-height: 1.65;
    overflow-wrap: anywhere;
}

.fortress-manual-mode {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    column-gap: 0.25em;
    align-items: start;
}

.fortress-manual-mode>b {
    white-space: nowrap;
}

.fortress-manual__body section {
    padding-top: 1em;
}

.fortress-manual__body section+section {
    margin-top: 1em;
    border-top: 1px solid var(--app-line);
}

.fortress-manual__body h3 {
    margin: 0 0 0.45em;
    color: var(--text-dark);
    font-size: 1em;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 0;
}

.fortress-manual__body p {
    margin: 0 0 0.45em;
}

.fortress-manual__body ol,
.fortress-manual__body ul {
    margin: 0;
    padding-left: 1.4em;
}

.fortress-manual__body li+li {
    margin-top: 0.3em;
}

.fortress-manual__body b {
    color: var(--theme-primary);
}

.trans-input-group {
    display: flex;
    flex-direction: column;
    gap: 14.5px;
    margin-bottom: 14.5px;
}

.trans-action-bar {
    display: flex;
    justify-content: space-between;
    align-items: end;
    width: 100%;
    gap: 14.5px;
    flex-wrap: wrap;
}

.mic-buttons {
    display: flex;
    gap: 14.5px;
    opacity: 1;
    transition: opacity var(--ft-control-release-duration) var(--ft-control-transition-curve);
}

@font-face  {
    font-family: "FT Thai Input";
    src: url("../fonts/ft-thai-ui.woff2") format("woff2");
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    size-adjust: 120%;
    unicode-range: U+E00-E7F;
}

.trans-input {
    width: 100%;
    padding: calc(var(--ft-input-font-size) * var(--ft-input-padding));
    resize: vertical;
    min-height: 210px;
    font-family: "FT Thai Input", var(--ft-font-stack);
    font-size: var(--ft-input-font-size);
    letter-spacing: var(--ft-input-letter-spacing, normal);
    line-height: 1.57;
    border: 2px solid #454856;
    border-radius: 12px;
    isolation: isolate;
    contain: paint;
    transition: border-color 0.2s,
        color 1s;
    background: var(--app-panel);
    color: #ffffff;
    background-color: #131417;
    background-image: none;
}

.trans-input::placeholder {
    font-family: var(--ft-font-stack);
    font-size: 0.875em;
    line-height: 1.5;
    color: rgba(208, 213, 222, .69);
}

.trans-input.is-thai-mic::placeholder {
    color: transparent;
}

.trans-input:focus {
    outline: none;
    box-shadow: 0 0 0 4px var(--focus-glow), 0 1px 0 rgba(255,255,255,0.05) inset;
    background-color: #191e20;
    border-color: #4dbfef;
}

.trans-input::-webkit-scrollbar {
    width: 7px;
}

.trans-input::-webkit-scrollbar-track {
    margin-block: 10px;
    border: 2px solid transparent;
    border-radius: 26px;
    background: linear-gradient(180deg,
            rgba(255, 255, 255, 0.052),
            rgba(255, 255, 255, 0.016)) rgba(19,20,23,0.48);
    background-clip: content-box;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.055),
        inset 0 0 0 1px rgba(77,191,239,0.035);
}

.trans-input::-webkit-scrollbar-thumb {
    border: 2px solid transparent;
    border-radius: 26px;
    background: linear-gradient(180deg,
            rgba(98,205,124,0.92),
            rgba(77,191,239,0.92) 70%,
            rgba(198,103,152,0.9)) transparent;
    background-clip: content-box;
}

.trans-input::-webkit-scrollbar-corner {
    background: transparent;
}

.trans-action-right {
    display: flex;
    align-items: center;
    gap: 0;
    margin-left: auto;
}

.fortress-btn-icon.is-mic {
    display: block;
    width: 25px;
    height: 25px;
    flex: 0 0 auto;
    background: currentColor;
    mask: url("/wp-content/uploads/microphone-simple.svg") center / contain no-repeat;
}

.fortress-btn-icon.is-flag {
    border-radius: 3px;
    object-fit: cover;
    width: 21px;
    height: 15px;
    margin-top: 2.5px;
}

.fortress-btn-icon.is-action,
.fortress-result-action-icon {
    display: block;
    flex: 0 0 auto;
    background: currentColor;
}

.fortress-btn-icon.is-action {
    height: 20.5px;
}

.fortress-btn-icon.is-trash,
.fortress-result-action-icon.is-trash {
    mask: url("/wp-content/uploads/trash-list.svg") center / contain no-repeat;
}

.fortress-btn-icon.is-paste {
    mask: url("/wp-content/uploads/paste-1.svg") center / contain no-repeat;
}

.fortress-result-action-icon.is-volume {
    mask: url("/wp-content/uploads/volume-2.svg") center / contain no-repeat;
}

.fortress-btn-label {
    display: inline-block;
    line-height: 1.15;
    white-space: nowrap;
}

.trans-paste-btn,
.trans-clear-btn {
    display: inline-flex;
    flex-direction: column;
    background-color: transparent;
    gap: 0.25em;
    color: var(--text-muted);
}

.trans-paste-btn {
    transition: opacity 0.15s 0.03s ease-out;
}

button.trans-paste-btn {
    margin-top: 3px;
}

.trans-clear-btn {
    width: 0;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    transition: width 0.35s 0.2s cubic-bezier(0, 1.3, 1, 1),
        opacity 0.1s 0.23s cubic-bezier(0, 1.3, 1, 1),
        visibility 0.1s 0.23s cubic-bezier(0, 1.3, 1, 1),
        margin-left 0s 0.23s;
    margin-top: 2px;
}

.trans-clear-btn.is-visible {
    width: 3em;
    opacity: 1;
    visibility: visible;
    transition: width 0.3s cubic-bezier(0.16, 1, 0.54, 1.12) 0.85s,
        opacity 0.15s 0.03s ease-out,
        visibility 0s 0.85s,
        margin-left 0s 0.85s;
    margin-left: 12px;
}

.fortress-translator.is-loading .trans-clear-btn.is-visible {
    transition: opacity 0.3s 0s;
}

.trans-paste-btn:active,
.trans-clear-btn.is-visible:active {
    opacity: 0.7;
}

.voice-btn {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.4em;
    height: 83px;
    width: 83px;
    border-radius: 50px;
    font-size: 0.5em;
    font-weight: 600;
    border: 1px solid hsl(227.37deg 12.26% 30.39%);
    white-space: nowrap;
    isolation: isolate;
    contain: paint;
    transition: background-color 0.1s, color 0.1s, border-color 0.1s;
    letter-spacing: 0.5px;
    background-color: hsl(227.37deg 12.26% 30.39%);
    color: #ffffff;
    background-image: none;
}

.voice-btn::after {
    content: "";
    position: absolute;
    inset: 5px;
    border: 1px solid rgba(255, 107, 107, .62);
    border-radius: inherit;
    opacity: 0;
    transform: scale(.72);
    pointer-events: none;
}

.fortress-translator[data-mode=thai] .voice-btn-foreign {
    font-size: 0.65em;
    gap: 0;
    font-weight: 500;
}

.fortress-translator[data-mode=english] .voice-btn-foreign {
    letter-spacing: 0.8px;
}

.voice-btn .fortress-btn-icons {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.34em;
}

.trans-paste-btn .fortress-btn-label,
.trans-clear-btn .fortress-btn-label {
    font-size: 0.5em;
    font-weight: 700;
}

.voice-btn.recording {
    color: var(--voice-active-red);
    background-color: rgba(255, 107, 107, 0.08);
    border-color: rgba(255, 107, 107, 0.42);
}

.voice-btn.recording::after {
    animation: voice-recording-pulse 1.5s .2s ease-out infinite;
}

.voice-btn .fortress-btn-icons::before {
    content: "";
    position: absolute;
    top: -9.5px;
    left: 50%;
    width: 8.5px;
    height: 8.5px;
    border-radius: 1.5px;
    background: var(--voice-active-red);
    opacity: 0;
    transform: translate(-50%, 0) scale(0.5);
    transition: opacity 0.18s ease,
        transform 0.24s cubic-bezier(0.16, 1, 0.3, 1);
}

.voice-btn.recording .fortress-btn-icons::before {
    opacity: 1;
    transform: translate(-50%, 0) scale(1);
    transition-delay: 0.06s;
}

.trans-trigger-btn {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 3.15em;
    background: linear-gradient(rgba(145, 170, 255, 0.10), rgba(145, 170, 255, 0.10)),
        var(--app-panel);
    font-size: 0.88em;
    font-weight: 600;
    border-radius: 12px;
    transition: color 0.8s cubic-bezier(0.4, 0, 0.2, 1);
    margin-bottom: 40px;
    color: #000000;
    background-color: hsl(139.41deg 58.62% 54.51%);
    background-image: none;
    border-color: hsl(139.41deg 58.62% 54.51%);
}

.trans-trigger-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    background: var(--grad-brand);
    opacity: 1;
    pointer-events: none;
    transition: opacity var(--ft-control-release-duration) var(--ft-control-transition-curve);
}

.trans-trigger-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
    border-radius: inherit;
    background: rgba(255, 255, 255, .12);
    mix-blend-mode: screen;
    opacity: 0;
    pointer-events: none;
    transition: opacity .3s ease;
}

.trans-trigger-btn>.btn-text,
.trans-trigger-btn>.btn-spinner {
    z-index: 1;
}

.trans-trigger-btn>.btn-text {
    position: relative;
}

.trans-trigger-btn>.btn-text>[lang="th"] {
    font-size: 1.4em;
    font-weight: 500;
}

.trans-trigger-btn:not(:disabled):active::after {
    opacity: 0;
    transition-duration: .1s;
}

.btn-spinner {
    width: 1.429em;
    height: 1.429em;
    border: 0.179em solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    animation: trans-spin 0.6s linear infinite;
    position: absolute;
    top: 50%;
    left: calc(50% + 7.75em);
    transform: translateY(-50%);
    border-top-color: #454856;
}

.trans-result-card {
    display: none;
    position: relative;
    overflow: hidden;
    border: 2px solid #454856;
    border-radius: 16px;
    animation: trans-fade-in 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
}

.fortress-translator .card-header {
    padding: 0 clamp(14px, 3vw, 20px);
    color: var(--theme-primary);
    letter-spacing: 0.5px;
    border-bottom: 1px solid var(--app-line);
    display: flex;
    justify-content: space-between;
    align-items: center;
    isolation: isolate;
    contain: paint;
    height: 3.2em;
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
    border-color: #454856;
}

.fortress-result-summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    column-gap: 0.6em;
    margin: 10px clamp(9px, 2vw, 1em) 0;
}

.fortress-translator .card-header-title {
    display: inline-flex;
    align-items: center;
    gap: 0.45em;
    color: var(--theme-primary);
    font-size: 0.75em;
    font-weight: 800;
}

.fortress-translator .result-body {
    padding: 10px clamp(9px, 2vw, 1em) 0;
}

.fortress-header-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: clamp(17px, 3vw, 20px);
}

.fortress-tts-btn,
.fortress-clear-res-btn {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.25em;
    width: 1.9em;
    border-radius: 50%;
    background-color: transparent;
    color: var(--text-muted);
    transition: opacity 0.15s 0.03s ease-out, color 0.2s;
}

.fortress-result-action-icon {
    width: 20.5px;
    height: 20.5px;
}

.fortress-tts-btn .fortress-btn-label,
.fortress-clear-res-btn .fortress-btn-label {
    font-size: 0.5em;
    font-weight: 700;
}

.fortress-tts-btn:active,
.fortress-clear-res-btn:active {
    color: #ffffff;
}

.fortress-tts-btn.playing {
    color: var(--voice-active-red);
}

.fortress-tts-btn.playing.is-loading {
    color: #B45309;
    background-color: rgba(245, 158, 11, 0.1);
    animation: fortress-thinking-pulse 1.2s ease-in-out infinite;
}

.fortress-translator .status-thinking {
    display: block;
    color: var(--theme-primary);
    font-weight: 700;
    font-size: 1.125em;
    animation: fortress-thinking-pulse 1.5s ease-in-out infinite;
}

.fortress-translator .result-japanese-text {
    font-size: 0.96em;
}

.fortress-translator .result-foreign-text {
    display: block;
    margin-bottom: 0;
    color: var(--text-dark);
    font-size: var(--foreign-result-font-size);
    line-height: var(--foreign-result-line-height);
}

.fortress-translator .normal-mixed-text {
    font-size: 1.2em;
    font-weight: 500;
}

.fortress-translator .status-error {
    color: #E53935;
    font-weight: 700;
}

.fortress-translator .toast-alert {
    position: absolute;
    top: 50%;
    left: 50%;
    padding: 0.857em 1.714em;
    font-size: 0.875em;
    font-weight: 700;
    border-radius: 1.714em;
    pointer-events: none;
    transform: translate(-50%, -50%);
    opacity: 0;
    visibility: hidden;
    background-color: rgba(30,31,38,0.9);
    color: #ffffff;
}

.fortress-translator .toast-alert.show {
    animation: fortress-toast-sync 1.2s;
}

.fortress-orig-annotation {
    font-size: 0.8em;
    line-height: 1.2;
}

.fortress-translator .sub-japanese-text {
    color: var(--text-muted);
    font-weight: 500;
}

.fortress-translator .source-foreign-text {
    color: var(--theme-primary);
    font-size: var(--foreign-source-font-size);
    font-weight: 500;
}

.fortress-result-meta {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.55em;
    width: 100%;
    margin-top: 14px;
}

.fortress-result-meta .fortress-orig-annotation {
    flex: 0 0 100%;
    min-width: 0;
    margin-top: 0;
    text-align: center;
}

.fortress-engine-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 1.75em;
    padding: 0.18em 0.72em;
    border-radius: 25px;
    font-size: 0.7em;
    font-weight: 800;
    letter-spacing: 0.01em;
    white-space: nowrap;
    border: 1px solid transparent;
}

.fortress-engine-badge.is-gemini {
    color: var(--theme-primary);
    background: var(--theme-tint);
    border-color: var(--theme-header-alpha);
}

.fortress-engine-badge.is-chatgpt {
    background: rgba(255, 255, 255, 0.055);
    border-color: var(--app-line);
    color: var(--fortress-muted);
}

.trans-log-item.is-active>.fortress-result-meta {
    transform: translateX(10px);
}

.trans-log-item>.fortress-result-meta,
.trans-log-item>.status-thinking,
.trans-log-item>.status-error {
    transition: transform 0.2s;
}

.trans-log-item {
    position: relative;
    padding: 20px 44px 20px 20px;
    margin-bottom: 14.5px;
    border-radius: 10px;
    transition: background-color 0.2s ease-out;
    background-color: var(--app-surface);
    box-shadow: var(--fortress-emboss-shadow);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 142px;
    border: 1px solid var(--app-line);
}

.trans-log-item.is-active {
    background-color: var(--app-active);
    border-color: rgba(164,170,182,0.32);
}

.trans-log-item.is-copied {
    animation: fortress-copy-highlight-bg 1.2s;
    animation-name: fortress-copy-highlight-bg;
}

.trans-log-item.is-copied .result-japanese-text,
.trans-log-item.is-copied .result-foreign-text {
    animation: fortress-copy-text 1.2s;
}

.trans-log-item.is-active>.normal-mixed-text,
.trans-log-item.is-active>.fortress-orig-annotation,
.trans-log-item.is-active>.status-thinking,
.trans-log-item.is-active>.status-error {
    transform: translateX(10px);
}

.trans-log-item::before {
    content: "➔";
    position: absolute;
    left: 0.429em;
    transform: translateX(-0.714em) scale(0.6);
    color: var(--theme-primary);
    font-size: 0.875em;
    font-weight: bold;
    opacity: 0;
    transition: transform 0.2s, opacity 0.2s;
}

.trans-log-item.is-active::before {
    opacity: 1;
    transform: translateX(0) scale(1.1);
    transition: transform 0.2s 0.2s, opacity 0.2s 0.2s;
}

.fortress-tab-buttons {
    display: flex;
    gap: 0.3em;
}

.fortress-tab-btn {
    display: grid;
    place-items: center;
    padding: 1.5px 0 0;
    height: 37px;
    min-width: 82px;
    line-height: 1;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: 25px;
    font-size: 0.8em;
    font-weight: 700;
    transform: scale(1);
    transition: transform 0.2s,
        background-color 0.2s,
        border-color 0.2s,
        color 0.2s;
    color: var(--fortress-muted);
}

.fortress-tab-btn:active {
    transform: scale(0.96);
    transition: transform 0.1s;
}

.fortress-tab-btn.active {
    color: #ffffff;
    background-color: #243747;
    border-color: #4dbfef;
    background-image: none;
}

.fortress-tab-btn.active:active {
    transition: transform 0.1s,
        background-color 0.1s,
        border-color 0.1s;
    background-color: rgba(77,191,239,0.14);
    border-color: rgba(164,170,182,0.26);
}

.fortress-tab-scroll {
    position: relative;
}

.fortress-tab-content {
    position: relative;
    display: none;
    max-height: 450px;
    overflow-y: auto;
    scroll-behavior: smooth;
    scrollbar-width: none;
    isolation: isolate;
    contain: paint;
}

.fortress-tab-content::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
}

.fortress-tab-content.active:not([hidden]) {
    display: block;
}

.fortress-tab-scrollbar {
    position: absolute;
    top: 8px;
    right: 3px;
    bottom: 8px;
    width: clamp(2px, 0.5vw, 3px);
    overflow: hidden;
    border-radius: 26px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.052), rgba(255, 255, 255, 0.016)) rgba(19,20,23,0.48);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.18s ease;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.055),
        inset 0 0 0 1px rgba(77,191,239,0.035);
}

.fortress-tab-scroll.is-scrollable .fortress-tab-scrollbar {
    opacity: 1;
}

.fortress-tab-scrollbar__thumb {
    display: block;
    width: 100%;
    min-height: 28px;
    border-radius: inherit;
    background: linear-gradient(180deg,
            rgba(98,205,124,0.92),
            rgba(77,191,239,0.92) 70%,
            rgba(198,103,152,0.9)) transparent;
    transform: translate3d(0, 0, 0);
    box-shadow: 0 0 16px rgba(98,205,124,0.24),
        inset 1px 0 0 rgba(255,255,255,0.52);
}

.trans-input-wrapper {
    --ft-input-font-size: 19px;
    --ft-input-padding: 1;
    position: relative;
}

.trans-input-wrapper.is-fading-out .trans-input {
    color: transparent;
    caret-color: transparent;
    transition: color 1.0s ease-out, caret-color 1.0s ease-out;
}

.fortress-placeholder-mock {
    position: absolute;
    top: 11%;
    left: 1em;
    font-size: 0.96em;
    opacity: 0;
    transition: opacity 0.2s;
    z-index: 1;
    pointer-events: none;
    padding-right: 10px;
    letter-spacing: -0.5px;
    line-height: 1.3;
    color: rgba(208, 213, 222, .69);
}

.fortress-placeholder-line {
    display: block;
}

.fortress-placeholder-line>[lang="th"] {
    font-size: 1.18em;
    line-height: 1;
    letter-spacing: 0;
}

.fortress-placeholder-line>[lang="zh-TW"],
.fortress-placeholder-line>[lang="zh-HK"],
.fortress-placeholder-line>[lang="ko"] {
    letter-spacing: 0;
}

.fortress-placeholder-line>[lang="en"] {
    font-size: 1.03em;
    line-height: 1;
    letter-spacing: 0;
}

.trans-input:placeholder-shown~.fortress-placeholder-mock {
    opacity: 1;
    transition: opacity 1.2s;
}

.trans-input-wrapper.is-fading-out .fortress-placeholder-mock {
    opacity: 1;
    transition: opacity 1.2s ease-in-out;
}

.trans-input-group:has(.recording) .fortress-placeholder-mock,
.trans-input.mic-placeholder-fading~.fortress-placeholder-mock {
    opacity: 0;
}

.trans-input.is-thai-mic~.fortress-placeholder-mock {
    inset: 2px;
    padding: calc(var(--ft-input-font-size) * var(--ft-input-padding));
    font-size: calc(var(--ft-input-font-size) * 0.875);
    line-height: 1.5;
    overflow: hidden;
    transition: none;
    color: var(--fortress-muted);
}

.trans-input.is-thai-mic:placeholder-shown:not(.mic-placeholder-fading)~.fortress-placeholder-mock {
    opacity: 1;
}

.trans-input.is-thai-mic~.fortress-placeholder-mock>[lang="th"] {
    font-size: 1.3em;
    line-height: 0;
}

.fortress-orig-annotation>[data-source-label]::before {
    content: attr(data-source-label);
}

.fortress-translator.is-loading:not(.is-badge-fading) .trans-input-wrapper::after {
    opacity: 1;
    visibility: visible;
    transition: opacity 1s cubic-bezier(0.6, 0, 1, 1), visibility 1s cubic-bezier(0.6, 0, 1, 1);
}

.fortress-translator.is-premium-ai-loading .trans-input-wrapper::after {
    content: attr(data-premium-ai-title) "\A "
        attr(data-premium-ai-phase);
    min-width: 13em;
    overflow-wrap: anywhere;
    white-space: pre-line;
    padding: 0.65em 1.3em 0.85em;
    text-align: center;
    line-height: 1.4;
    letter-spacing: 0.045em;
    transition: opacity 0.24s ease,
        visibility 0.24s ease;
    background: radial-gradient(ellipse at 82% 12%, rgba(229, 190, 78, .17), transparent 28%),radial-gradient(ellipse at 16% 16%, rgba(198,103,152,0.16), transparent 34%),linear-gradient(145deg, rgba(30,31,38,0.94), rgba(19,20,23,0.94)) transparent;
    box-shadow: 0 10px 28px rgba(0,0,0,0.28),
        inset 0 1px 0 rgba(255,255,255,0.08);
    text-shadow: 0 1px 8px rgba(255,255,255,0.73);
}

.fortress-translator.is-loading.is-premium-ai-overlay-suppressed .trans-input-wrapper::after {
    opacity: 0;
    visibility: hidden;
    transform: translate(-50%, -50%) translateY(2px) scale(0.99);
}

.fortress-translator.is-loading .trans-input {
    cursor: default;
    color: var(--fortress-muted);
}

.fortress-translator.is-loading .trans-paste-btn,
.fortress-translator.is-loading .fortress-tts-btn,
.fortress-translator.is-badge-fading .trans-paste-btn,
.fortress-translator.is-badge-fading .fortress-tts-btn {
    opacity: 0.5;
    pointer-events: none;
    transition: opacity 0.3s;
}

.fortress-translator.is-loading .mic-buttons,
.fortress-translator.is-loading .fortress-engine-switch,
.fortress-translator.is-badge-fading .mic-buttons,
.fortress-translator.is-badge-fading .fortress-engine-switch {
    opacity: 0.5;
    pointer-events: none;
    transition-duration: var(--ft-control-lock-duration);
}

.fortress-translator.is-loading .trans-clear-btn.is-visible,
.fortress-translator.is-badge-fading .trans-clear-btn.is-visible {
    opacity: 0.5;
    pointer-events: none;
}

.fortress-translator .trans-trigger-btn:disabled {
    pointer-events: none;
    transition: color 0.2s ease-out;
    color: var(--fortress-muted);
}

.fortress-translator .trans-trigger-btn:disabled::before {
    opacity: 0;
    transition-duration: var(--ft-control-lock-duration);
}

.fortress-translator .fortress-tab-btn[data-tab="foreign"][lang="th"] {
    font-size: 1.06em;
}

.fortress-translator.is-direction-choice-committing .trans-trigger-btn:disabled,
.fortress-translator.is-direction-choice-committing .trans-trigger-btn:disabled::before {
    transition-duration: 0s;
}

.trans-counter {
    font-size: 0.71875em;
    font-weight: 600;
    color: rgba(208, 213, 222, .69);
}

.trans-counter.is-trapped {
    color: #DD6B20;
}

.trans-counter.is-over {
    color: #E53E3E;
}

.fortress-copy-indicator,
.fortress-delete-indicator {
    position: absolute;
    right: 6px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border-radius: 50%;
    background: transparent;
    color: inherit;
    opacity: 0.3;
    z-index: 10;
    transition: opacity 0.25s ease-out;
}

.fortress-copy-indicator {
    bottom: 6px;
}

.fortress-copy-indicator::after {
    width: 20.5px;
    height: 20.5px;
    background: currentColor;
    mask: url("/wp-content/uploads/copy-alt-1.svg") center / contain no-repeat;
    content: "";
}

.fortress-delete-indicator {
    top: 6px;
    font-size: 1em;
}

.fortress-delete-indicator::after {
    content: "✖";
    color: var(--text-muted);
}

.fortress-translator.is-loading .trans-log-item,
.fortress-translator.is-loading .fortress-copy-indicator,
.fortress-translator.is-loading .fortress-delete-indicator {
    cursor: default;
}

.fortress-translator.is-loading .fortress-delete-indicator,
.trans-log-item.streaming .fortress-delete-indicator {
    pointer-events: none;
}

.trans-log-item.is-quick-deleting {
    pointer-events: none;
    overflow: hidden;
    min-height: 0;
    transition: opacity 0.1s ease-out,
        transform 0.1s ease-out,
        height 0.2s cubic-bezier(0.4, 0, 0.2, 1),
        padding-top 0.2s cubic-bezier(0.4, 0, 0.2, 1),
        padding-bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1),
        margin-bottom 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    opacity: 0;
    transform: scale(0.96);
    height: 0 !important;
    padding-top: 0;
    padding-bottom: 0;
    margin-bottom: 0;
}

.trans-log-item .normal-mixed-text,
.trans-log-item .fortress-orig-annotation {
    overflow-wrap: anywhere;
    word-break: break-word;
    transition: transform 0.2s;
}

.fortress-engine-switch {
    position: relative;
    display: grid;
    padding: 0.25em;
    isolation: isolate;
    contain: paint;
    gap: 0.25em;
    opacity: 1;
    transition: opacity var(--ft-control-release-duration) var(--ft-control-transition-curve);
    background: var(--app-panel);
    border: 1px solid var(--app-line);
    border-radius: 12px;
    box-shadow: 0 1px 0 rgba(255,255,255,0.04) inset;
}

.fortress-engine-switch::before {
    content: "";
    position: absolute;
    top: 0.25em;
    left: 0.25em;
    width: calc((100% - 0.75em) / 2);
    height: calc(100% - 0.5em);
    border-radius: 10px;
    transform: translateX(0);
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.54, 1.12);
    background-color: var(--app-active);
    z-index: 2;
    border-top: 1px solid rgba(116, 240, 227, 0.26);
    border-left: 1px solid rgba(116, 240, 227, 0.26);
    box-shadow: 0 5px 24px -1px #000000, 0px -5px 24px -1px #000000;
}

.fortress-engine-switch:has(input[value="gpt"]:checked)::before {
    transform: translateX(calc(100% + 0.25em));
}

.fortress-engine-option {
    position: relative;
    display: inline-flex;
    overflow: hidden;
    border-radius: 10px;
    user-select: none;
}

.fortress-engine-option::before,
.fortress-engine-option::after {
    content: "";
    position: absolute;
    inset: 0;
    background-repeat: no-repeat;
    pointer-events: none;
    transition: opacity 0.22s ease-out;
}

.fortress-engine-option::after {
    opacity: 0;
}

.fortress-engine-option-standard::before,
.fortress-engine-option-standard::after {
    background-image: url("/wp-content/uploads/gemini.svg");
    background-position: 53% 46%;
    background-size: 5em 5em;
}

.fortress-engine-option-standard::before {
    opacity: 0.2;
    filter: blur(2px);
}

.fortress-engine-option-standard::after {
    filter: brightness(1.1) saturate(1.12);
}

.fortress-engine-option-gpt::before,
.fortress-engine-option-gpt::after,
.fortress-engine-option-gpt-premium::before,
.fortress-engine-option-gpt-premium::after,
.fortress-engine-option-claude-premium::before,
.fortress-engine-option-claude-premium::after {
    background-position: 52% 50%;
    background-size: 3.9em 3.9em;
}

.fortress-engine-option-gpt::before,
.fortress-engine-option-gpt-premium::before {
    opacity: 0.1;
    filter: blur(2px);
}

.fortress-engine-option-claude-premium::before {
    opacity: 0.17;
    filter: blur(2px);
}

.fortress-engine-option-claude-premium::before,
.fortress-engine-option-claude-premium::after {
    background-image: url("/wp-content/uploads/claude.svg");
    background-size: 5em 5em;
}

.fortress-engine-option-gpt::before,
.fortress-engine-option-gpt::after,
.fortress-engine-option-gpt-premium::before,
.fortress-engine-option-gpt-premium::after {
    background-image: url("/wp-content/uploads/openai-chatgpt.svg");
}

.fortress-engine-option input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.fortress-engine-option span {
    position: relative;
    z-index: 3;
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.28em;
    min-height: 41px;
    padding: 2px 0.7em 0;
    font-size: 0.76em;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 1;
    transition: color 0.18s ease-out;
    color: var(--fortress-muted);
}

.fortress-engine-option-claude-premium span {
    gap: 0.13em;
}

.fortress-engine-option span::before {
    content: "▼";
    position: absolute;
    top: -0.5px;
    left: 50%;
    transform: translate(-50%, -100%);
    font-size: 0.5em;
    line-height: 1;
    opacity: 0;
    z-index: 4;
    transition: opacity 0.3s 0.05s, transform 0.3s 0.05s;
}

.fortress-engine-option input:checked+span::before {
    opacity: 1;
    transform: translate(-50%, 0);
}

.fortress-engine-logo {
    width: 1.16em;
    height: 1.16em;
}

.fortress-engine-option-claude-premium .fortress-engine-logo {
    width: 1.53em;
    height: 1.53em;
}

.fortress-engine-control {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75em;
    width: 100%;
}

.fortress-premium-status-head {
    display: inline-flex;
    align-items: center;
    gap: 1em;
    min-height: 2.3em;
    padding: 0 1em 0 0;
    border-radius: 22px;
}

.fortress-premium-status-head .fortress-plan-badge {
    box-shadow: inset 0 0 0 1px rgba(198,103,152,0.34);
    background-color: #fadd5a;
    background-image: none;
    color: #131417;
    border-color: #fadd5a;
}

.fortress-premium-status-head+.fortress-plan-status-detail {
    margin-top: 1em;
}

.fortress-premium-title {
    min-width: 0;
    font-size: 1.083em;
    font-weight: 700;
    line-height: 1.35;
    overflow-wrap: anywhere;
    color: #ffffff;
}

.fortress-engine-control.has-premium-engine,
.fortress-engine-control.has-engine-count-4 {
    flex-wrap: wrap;
}

.fortress-engine-control.has-engine-count-2 .fortress-engine-switch {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    max-width: 300px;
}

.fortress-engine-control.has-engine-count-4 .fortress-engine-switch {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: min(100%, 33.6em);
}

.fortress-engine-control.has-engine-count-4 .fortress-engine-switch::before {
    width: calc((100% - 1.25em) / 4);
}

.fortress-engine-unavailable {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.42em;
    padding: 0.9em 1em;
    border: 1px solid rgba(255, 107, 107, 0.24);
    border-radius: 12px;
    background: rgba(255, 107, 107, 0.08);
    color: #FFB0B0;
}

.fortress-engine-unavailable strong {
    color: #FF8A8A;
    font-size: 0.86em;
    line-height: 1.45;
}

.fortress-engine-unavailable span {
    color: #FFB0B0;
    font-size: 0.75em;
}

.fortress-engine-empty-action {
    margin-top: 0.2em;
    padding: 0.55em 1.1em;
    border: 1px solid rgba(255, 107, 107, 0.28);
    border-radius: 26px;
    background: rgba(255, 107, 107, 0.06);
    color: #FF9A9A;
    font-size: 0.74em;
    font-weight: 800;
    transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

.fortress-engine-empty-action:active {
    transform: scale(0.98);
}

.fortress-engine-control.has-premium-engine:not(.has-standard-engine) .fortress-engine-switch:has(input[value="gpt_premium"]:checked)::before {
    transform: translateX(calc(100% + 0.25em));
}

.fortress-engine-control.has-standard-engine.has-premium-engine .fortress-engine-switch:has(input[value="claude_premium"]:checked)::before {
    transform: translateX(calc(200% + 0.5em));
}

.fortress-engine-control.has-standard-engine.has-premium-engine .fortress-engine-switch:has(input[value="gpt_premium"]:checked)::before {
    transform: translateX(calc(300% + 0.75em));
}

.fortress-engine-option input:checked+span {
    color: var(--theme-primary);
}

.fortress-engine-option input:checked+span .fortress-engine-logo {
    filter: brightness(1.05) saturate(1.08) drop-shadow(0 1px 1px rgba(15, 23, 42, 0.18));
}

.fortress-engine-option-standard {
    --ft-engine-touch-rest-opacity: .2;
    --ft-engine-touch-crisp-opacity: .35;
}

:is(.fortress-engine-option-gpt, .fortress-engine-option-gpt-premium) {
    --ft-engine-touch-rest-opacity: .1;
    --ft-engine-touch-crisp-opacity: .25;
}

.fortress-engine-option-claude-premium {
    --ft-engine-touch-rest-opacity: .17;
    --ft-engine-touch-crisp-opacity: .25;
}

@media (hover: none), (pointer: coarse), (any-hover: none), (any-pointer: coarse) {
.fortress-engine-switch::before,
.fortress-engine-option span {
    transition-delay: .3s;
}

.fortress-engine-option span::before {
    transition-delay: .35s;
}

.fortress-engine-logo {
    transition: filter .18s .3s ease-out;
}

.fortress-engine-option:has(input:checked)::before {
    animation: fortress-engine-touch-logo-dim .87s linear;
}

.fortress-engine-option:has(input:checked)::after {
    animation: fortress-engine-touch-logo-crisp .87s linear;
}

}
@keyframes fortress-engine-touch-logo-dim {
    0% {
        opacity: var(--ft-engine-touch-rest-opacity);
    }

    9.20%,
    74.71% {
        opacity: 0;
    }

    100% {
        opacity: var(--ft-engine-touch-rest-opacity);
    }
}

@keyframes fortress-engine-touch-logo-crisp {
    0% {
        opacity: 0;
    }

    9.20%,
    74.71% {
        opacity: var(--ft-engine-touch-crisp-opacity);
    }

    100% {
        opacity: 0;
    }
}

.fortress-engine-badge.is-claude-premium {
    background: none rgba(198,103,152,0.1);
    color: #fadd5a;
    border-color: rgba(164,170,182,0.24);
}

.fortress-engine-badge.is-gpt-premium {
    background: none rgba(77,191,239,0.09);
    color: #ffffff;
    border-color: rgba(164,170,182,0.22);
}

.fortress-plan-status {
    position: relative;
    border: 1px solid var(--app-line);
    border-radius: 7px;
    color: var(--text-muted);
    font-size: 0.75em;
    background-color: rgba(255, 255, 255, 0.035);
    overflow: hidden;
}

.fortress-plan-status::before {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid rgba(116, 240, 227, .72);
    border-radius: inherit;
    opacity: 0;
    pointer-events: none;
    box-shadow: inset 0 0 0 5px rgba(98,205,124,0.07),
        inset 0 0 24px rgba(98,205,124,0.16);
}

.fortress-plan-status.is-status-changed::before {
    animation: fortress-plan-status-attention 1.1s cubic-bezier(.22, .61, .36, 1) both;
}

@keyframes fortress-plan-status-attention {
    0% {
        opacity: .28;
    }

    46% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
.fortress-plan-status.is-status-changed::before {
    animation: none;
}

.fortress-plan-status.is-status-changed::before {
    opacity: 1;
}

}
.fortress-plan-status__body {
    display: flex;
    flex-direction: column;
    gap: 0.8em;
    padding: 1em;
    border-top: 1px solid var(--app-line);
}

.fortress-plan-status-main {
    display: flex;
    align-items: center;
    gap: 1em;
}

.fortress-plan-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.5em;
    padding: 0 1em;
    border-radius: 25px;
    background-color: rgba(255, 255, 255, 0.06);
    font-size: 0.93em;
    font-weight: 800;
    white-space: nowrap;
    box-shadow: inset 0 0 0 1px var(--theme-header-alpha);
    color: #ffffff;
}

.fortress-plan-title {
    color: var(--text-dark);
    font-size: 1.083em;
    font-weight: 700;
}

.fortress-plan-status-detail {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4em;
}

.fortress-plan-status-detail span {
    display: inline-flex;
    align-items: center;
    min-height: 2.2em;
    padding: 0 0.82em;
    border-radius: 26px;
    font-size: 0.857em;
    font-weight: 700;
    background-color: rgba(255, 255, 255, 0.045);
}

.fortress-plan-status-detail .fortress-quota-chip {
    border: 1px solid var(--theme-header-alpha);
    color: var(--theme-primary);
}

.fortress-plan-status-detail .fortress-quota-chip.is-quota-warn {
    border-color: rgba(245, 197, 107, 0.26);
    background-color: rgba(245, 197, 107, 0.08);
    color: #F5C56B;
}

.fortress-plan-status-detail .fortress-quota-chip.is-quota-danger,
.fortress-plan-status-detail .fortress-quota-chip.is-quota-empty {
    border-color: rgba(255, 107, 107, 0.26);
    background-color: rgba(255, 107, 107, 0.08);
    color: #FF8A8A;
}

.fortress-checkout-return-notice {
    display: flex;
    flex-direction: column;
    gap: 0.25em;
    padding: 1em;
    margin: 14.5px 0;
    border: 1px solid var(--app-line);
    border-radius: 1.167em;
    color: var(--text-muted);
    font-size: 0.75em;
    font-weight: 700;
    line-height: 1.45;
    box-shadow: none;
    background-color: rgba(255, 255, 255, 0.035);
}

.fortress-checkout-return-notice strong {
    color: var(--text-dark);
    font-size: 1.083em;
    font-weight: 900;
}

.fortress-checkout-return-notice span {
    overflow-wrap: anywhere;
}

.fortress-checkout-return-notice.is-activated strong {
    color: var(--theme-primary);
}

.fortress-checkout-return-notice.is-failed {
    border-color: rgba(255, 107, 107, 0.24);
    background-color: rgba(255, 107, 107, 0.08);
}

.fortress-checkout-return-notice.is-failed strong {
    color: #FF8A8A;
}

.fortress-checkout-plans {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.625em;
}

.fortress-checkout-card {
    display: flex;
    flex-direction: column;
    gap: 0.45em;
    padding: 0.8em;
    border: 1px solid #454856;
    border-radius: 12px;
    box-shadow: 0 14px 30px rgba(0,0,0,0.25);
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
    color: #ffffff;
}

.fortress-checkout-card.is-default {
    border-color: rgba(164,170,182,0.22);
}

.fortress-checkout-card-head {
    display: flex;
    align-items: center;
    gap: 0.5em;
}

.fortress-checkout-card-head strong {
    color: var(--text-dark);
    font-size: 0.85em;
    font-weight: 700;
    line-height: 1.22;
}

.fortress-checkout-badge {
    padding: 0.2em 0.7em;
    min-width: 5.5em;
    text-align: center;
    border-radius: 26px;
    font-size: 0.65em;
    font-weight: 600;
    background-color: hsl(227.37deg 12.26% 30.39%);
    background-image: none;
    color: var(--fortress-muted);
    border-color: hsl(227.37deg 12.26% 30.39%);
}

.fortress-checkout-price {
    color: var(--text-dark);
    font-size: 1.05em;
    font-weight: 800;
    line-height: 1.5;
}

.fortress-checkout-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3125em;
    margin-bottom: 0.5em;
}

.fortress-checkout-meta span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 2.2em;
    padding: 0 0.82em;
    border-radius: 26px;
    font-size: 0.6em;
    font-weight: 700;
    border: 1px solid hsl(227.37deg 12.26% 30.39%);
    background-color: hsl(227.37deg 12.26% 30.39%);
    background-image: none;
    color: var(--fortress-muted);
}

.fortress-checkout-btn {
    position: relative;
    min-height: 3em;
    border-radius: 26px;
    font-size: 0.75em;
    font-weight: 700;
    margin-top: auto;
    transition: background-color 0.25s,
        color 0.25s,
        opacity 0.25s,
        transform 0.18s;
    --checkout-hover-shadow: 0 10px 32px rgba(98,205,124,0.1053);
    box-shadow: 0 10px 32px rgba(98,205,124,0.05), inset 0 1px 0 rgba(255,255,255,0.27);
    background-color: hsl(139.41deg 58.62% 54.51%);
    background-image: none;
    color: #000000;
    border-color: hsl(139.41deg 58.62% 54.51%);
    text-shadow: none;
}

.fortress-checkout-btn::before,
.fortress-checkout-btn::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    opacity: 0;
    pointer-events: none;
    transition: opacity .25s ease;
}

.fortress-checkout-btn::before {
    box-shadow: var(--checkout-hover-shadow);
}

.fortress-checkout-btn::after {
    background: rgba(255, 255, 255, .055);
    mix-blend-mode: screen;
}

.fortress-checkout-btn:active {
    transform: scale(0.97);
}

.fortress-checkout-btn:disabled,
.fortress-checkout-entry.is-processing .fortress-checkout-btn {
    cursor: not-allowed;
    opacity: 0.75;
    transform: none;
    box-shadow: none;
    transition: none;
    background-color: hsl(227.37deg 12.26% 30.39%);
    background-image: none;
    color: var(--fortress-muted);
    border-color: hsl(227.37deg 12.26% 30.39%);
}

.fortress-checkout-btn:disabled::before,
.fortress-checkout-btn:disabled::after,
.fortress-checkout-entry.is-processing .fortress-checkout-btn::before,
.fortress-checkout-entry.is-processing .fortress-checkout-btn::after {
    opacity: 0;
    transition: none;
}

.fortress-plan-status.is-paid .fortress-plan-status-main {
    font-size: 0.8em;
}

.fortress-premium-status-head {
    font-size: 0.8em;
    background-color: #1e1f26;
    background-image: none;
    box-shadow: 0 10px 24px rgba(0,0,0,.18);
}

.fortress-plan-status.is-paid .fortress-plan-status-main {
    width: fit-content;
    background: none rgba(98,205,124,0.12);
    padding: 0 1em 0 0;
    border-radius: 26px;
}

.fortress-plan-status.is-free .fortress-plan-status-main {
    line-height: 1.25;
    font-size: 0.75em;
}

.fortress-plan-status.is-free .fortress-plan-title {
    font-size: 1.5em;
}

.fortress-history-counter {
    padding: 9.5px 12px;
    border: 1px solid var(--app-line);
    border-radius: 25px;
    background: rgba(255, 255, 255, 0.045);
    color: var(--text-muted);
    font-size: 0.6em;
    font-weight: 600;
    letter-spacing: 0.5px;
    line-height: 1;
}

@keyframes voice-recording-pulse {
    from {
        opacity: .62;
        transform: scale(.72);
    }

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

@keyframes fortress-toast-sync {

    0%,
    90% {
        opacity: 1;
        visibility: visible;
    }

    100% {
        opacity: 0;
        visibility: hidden;
    }
}

@keyframes fortress-copy-highlight-bg { 0%, 85% { background-color: #1b5933; } }

@keyframes fortress-copy-text {

    0%,
    85% {
        color: #fff;
    }
}

@keyframes trans-spin {
    to {
        transform: translateY(-50%) rotate(360deg);
    }
}

@keyframes trans-fade-in {
    from {
        opacity: 0;
        transform: translateY(8px);
    }

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

@keyframes fortress-thinking-pulse {

    0%,
    100% {
        opacity: 0.5;
    }

    50% {
        opacity: 1;
    }
}

.fortress-premium-checkout-section {
    padding-top: 1em;
}

.fortress-standard-checkout-toggle {
    position: relative;
    width: 100%;
    border: 1px solid hsl(227.37deg 12.26% 30.39%);
    border-radius: 26px;
    font-weight: 700;
    display: block;
    font-size: 0.8em;
    padding: 0.85em;
    max-width: clamp(210px, 42vw, 400px);
    margin-inline: auto;
    transition: background-color 0.25s;
    background-color: hsl(227.37deg 12.26% 30.39%);
    color: #ffffff;
}

.fortress-premium-checkout-toggle {
    position: relative;
    width: 100%;
    border: 1px solid rgba(116, 240, 227, 0.25);
    border-radius: 26px;
    font-weight: 700;
    display: block;
    font-size: 0.8em;
    padding: 0.85em;
    max-width: clamp(210px, 42vw, 400px);
    margin-inline: auto;
    transition: background-color 0.25s;
}

.fortress-premium-checkout-toggle {
    background-color: hsl(227.37deg 12.26% 30.39%);
    color: #fadd5a;
    border-color: hsl(227.37deg 12.26% 30.39%);
}

.fortress-premium-checkout-toggle::after {
    color: #fadd5a;
}

.fortress-standard-checkout-body,
.fortress-premium-checkout-body {
    margin-top: 0.625em;
}

.fortress-checkout-card.is-premium {
    background: none hsl(222.86deg 13.73% 20%);
    border-color: #454856;
    color: #ffffff;
}

.fortress-checkout-card.is-premium .fortress-checkout-badge {
    background-color: #fadd5a;
    background-image: none;
    color: #131417;
    border-color: #fadd5a;
}

.fortress-checkout-entry:not(.is-processing) .fortress-checkout-card.is-premium .fortress-checkout-btn:not(:disabled) {
    background: none hsl(139.41deg 58.62% 54.51%);
    color: #000000;
    border-color: hsl(139.41deg 58.62% 54.51%);
    text-shadow: none;
    --checkout-hover-shadow: 0 10px 32px rgba(0,0,0,.20);
    box-shadow: 0 10px 32px rgba(0,0,0,.10),inset 0 1px 0 rgba(255,255,255,.27);
}

@media (hover: none) and (pointer: coarse) {
.trans-input {
    max-height: min(18em, 35vh);
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(127, 184, 255, 0.92) transparent;
    resize: none;
    transition: border-color 0.2s,
            color 1s,
            height 0.03s;
}

}
.fortress-support-ref-notice {
    margin-top: 14.5px;
    border: 1px solid #454856;
    border-radius: 7px;
    font-size: 0.75em;
    line-height: 1.5;
    overflow: hidden;
    color: #d2d5dd;
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
}

.fortress-support-ref-body {
    padding: 1em;
    border-top: 1px solid var(--app-line);
}

.fortress-support-ref-code {
    font-weight: 600;
    font-size: 15px;
    color: var(--fortress-text);
}

.fortress-support-ref-note {
    margin-top: 5px;
}

.fortress-mode-control {
    width: 100%;
    max-width: 600px;
    margin: 14.5px auto;
}

.fortress-mode-switch {
    --fortress-mode-pad: 0.2em;
    --fortress-mode-gap: 0.5em;
    --fortress-mode-height: 44px;
    position: relative;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    padding: var(--fortress-mode-pad);
    isolation: isolate;
    contain: layout;
    gap: var(--fortress-mode-gap);
    border-radius: 26px;
    background: var(--app-panel);
    border: 1px solid var(--app-line);
    box-shadow: 0 1px 0 rgba(255,255,255,0.04) inset;
}

.fortress-mode-lens {
    position: absolute;
    z-index: 2;
    top: var(--fortress-mode-pad);
    bottom: var(--fortress-mode-pad);
    left: var(--fortress-mode-pad);
    width: calc((100% - (2 * var(--fortress-mode-pad)) - (4 * var(--fortress-mode-gap))) / 5);
    border-radius: 26px;
    transform: translateX(0);
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.54, 1.12);
}

.fortress-mode-lens::before {
    content: "";
    position: absolute;
    inset: -4.5px;
    border-radius: inherit;
    background: var(--app-active);
    border: 1px solid rgba(186, 247, 204, .45);
    box-shadow: 0 8px 22px rgba(0, 0, 0, .20), 0 0 24px rgba(77, 191, 239, .12);
    background-color: #4dbfef;
    background-image: none;
}

.fortress-mode-switch[data-selected-index="1"] .fortress-mode-lens {
    transform: translateX(calc(100% + var(--fortress-mode-gap)));
}

.fortress-mode-switch[data-selected-index="2"] .fortress-mode-lens {
    transform: translateX(calc(200% + (2 * var(--fortress-mode-gap))));
}

.fortress-mode-switch[data-selected-index="3"] .fortress-mode-lens {
    transform: translateX(calc(300% + (3 * var(--fortress-mode-gap))));
}

.fortress-mode-switch[data-selected-index="4"] .fortress-mode-lens {
    transform: translateX(calc(400% + (4 * var(--fortress-mode-gap))));
}

.fortress-mode-option {
    position: relative;
    min-height: var(--fortress-mode-height);
    border-radius: 26px;
    background-color: transparent;
    color: var(--text-muted);
    font-size: 0.76em;
    font-weight: 600;
    transition: color 0.2s ease,
        background-color 0.25s ease,
        opacity 0.2s ease;
    touch-action: manipulation;
}

.fortress-mode-label {
    position: relative;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.fortress-mode-label::before {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    z-index: -1;
    pointer-events: none;
    white-space: nowrap;
    color: var(--theme-primary);
    font-size: 2.75em;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.04em;
    opacity: 0;
    transform: translate(-50%, -50%) scale(0.84);
    transform-origin: 50% 50%;
    transition: opacity 0.18s ease-out,
        transform 0.24s cubic-bezier(0.16, 1, 0.3, 1);
}

.fortress-mode-option[data-mode="thai"] .fortress-mode-label::before {
    content: "ไทย";
}

.fortress-mode-option[data-mode="taiwan"] .fortress-mode-label::before {
    content: "台";
}

.fortress-mode-option[data-mode="hongkong"] .fortress-mode-label::before {
    content: "港";
}

.fortress-mode-option[data-mode="korea"] .fortress-mode-label::before {
    content: "한";
}

.fortress-mode-option[data-mode="english"] .fortress-mode-label::before {
    content: "EN";
}

@media (hover: hover) and (pointer: fine) {
.fortress-mode-option:not(.is-unavailable):hover .fortress-mode-label::before {
    opacity: 0.09;
    transform: translate(-50%, -50%) scale(1);
}

}
@media (hover: none), (pointer: coarse), (any-hover: none), (any-pointer: coarse) {
.fortress-mode-lens {
    transition-delay: 0.24s;
}

.fortress-mode-option::after {
    transition-delay: 0.29s;
}

.fortress-mode-label::before {
    transition: opacity 0.18s 0.58s ease-out,
            transform 0.24s 0.54s cubic-bezier(0.16, 1, 0.3, 1);
}

.fortress-mode-option:active:not(.is-unavailable) .fortress-mode-label::before {
    opacity: 0.13;
    transform: translate(-50%, -50%) scale(1);
    transition: opacity 0.10s ease-out,
            transform 0.18s cubic-bezier(0.16, 1, 0.3, 1);
}

}
.fortress-mode-option:active:not(.is-unavailable),
.fortress-mode-option.is-selected {
    color: #131417;
}

.fortress-mode-option::after {
    content: "▼";
    position: absolute;
    top: -5px;
    left: 50%;
    transform: translate(-50%, -100%);
    font-size: 0.5em;
    line-height: 1;
    opacity: 0;
    z-index: 4;
    transition: opacity 0.3s 0.05s, transform 0.3s 0.05s;
}

.fortress-mode-option.is-selected::after {
    opacity: 1;
    transform: translate(-50%, 0);
}

.fortress-mode-option.is-unavailable {
    opacity: 0.46;
    cursor: not-allowed;
}

.fortress-mode-option.is-unavailable::before {
    content: "";
    position: absolute;
    top: 0.43em;
    right: 16%;
    width: 0.3em;
    height: 0.3em;
    border: 1px solid currentColor;
    border-radius: 50%;
    opacity: 0.72;
    z-index: 4;
}

.fortress-mode-notice {
    display: grid;
    align-items: center;
    width: 100%;
    min-height: 1.3rem;
    margin: 0;
    font-size: 0.75em;
    text-align: center;
    opacity: 0;
}

.fortress-mode-notice__content {
    min-width: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
}

.fortress-mode-notice[data-notice-type="voice"] [lang="ja"] {
    letter-spacing: -0.5px;
}

.fortress-mode-notice[data-notice-type="voice"] [lang="th"] {
    font-size: 1.3em;
    line-height: 0;
}

.fortress-mode-notice[data-notice-type="voice"] :is([lang="zh-TW"], [lang="zh-HK"]) {
    font-size: 1.08em;
    letter-spacing: 0.5px;
}

.fortress-mode-notice[data-notice-type="voice"] [lang="en"] {
    font-size: 1.06em;
    letter-spacing: 0.5px;
}

.fortress-mode-notice.is-visible {
    opacity: 1;
    transition: opacity 0.22s ease-out;
}

.fortress-mode-notice:not(.is-visible):not(:empty) {
    transition: opacity 0.5s ease-out;
}

.fortress-mode-notice:is([data-notice-type="recovery"], [data-notice-type="recovery-success"]) {
    --fortress-recovery-notice-color: var(--fortress-blue);
    --fortress-recovery-notice-ring-clear: rgba(145, 170, 255, 0);
    color: var(--fortress-recovery-notice-color);
    --fortress-recovery-notice-ring: rgba(77,191,239,0.34);
}

.fortress-mode-notice:is([data-notice-type="recovery"], [data-notice-type="recovery-success"])>.fortress-mode-notice__content {
    width: fit-content;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    justify-self: center;
    gap: 0.7em;
    color: var(--fortress-recovery-notice-color);
    font-weight: 700;
    letter-spacing: 0.01em;
    white-space: nowrap;
    overflow-wrap: normal;
    transition: color 0.24s ease;
}

.fortress-mode-notice[data-notice-type="recovery"]>.fortress-mode-notice__content::before {
    content: "";
    width: 0.72em;
    height: 0.72em;
    flex: 0 0 auto;
    border-radius: 50%;
    background: currentColor;
    transform-origin: center;
    animation: fortress-mode-recovery-core 1.35s ease-in-out infinite;
}

.fortress-mode-notice.is-visible[data-notice-type="recovery"]>.fortress-mode-notice__content {
    animation: fortress-mode-recovery-enter 0.3s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.fortress-mode-notice[data-notice-type="recovery-success"] {
    --fortress-recovery-notice-color: var(--success-green);
    --fortress-recovery-notice-ring-clear: rgba(105, 221, 161, 0);
    --fortress-recovery-notice-ring: rgba(98,205,124,0.38);
}

.fortress-mode-notice[data-notice-type="recovery-success"]>.fortress-mode-notice__content::before {
    content: "✓";
    width: 1.38em;
    height: 1.38em;
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    border: 1px solid rgba(105, 221, 161, 0.34);
    border-radius: 50%;
    color: var(--success-green);
    background: none rgba(98,205,124,0.1);
    font-size: 0.76em;
    font-weight: 900;
    line-height: 1;
    transform-origin: center;
    animation: fortress-mode-recovery-success-lock 0.46s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.fortress-mode-notice.is-visible[data-notice-type="recovery-success"]>.fortress-mode-notice__content {
    animation: fortress-mode-recovery-success-enter 0.42s cubic-bezier(0.16, 1, 0.3, 1) both;
}

@keyframes fortress-mode-recovery-enter {
    from {
        transform: translateY(-3px) scale(0.995);
    }

    to {
        transform: none;
    }
}

@keyframes fortress-mode-recovery-core {
    0% {
        opacity: 0.72;
        transform: scale(0.86);
        box-shadow: 0 0 0 0 var(--fortress-recovery-notice-ring);
    }

    55% {
        opacity: 1;
        transform: scale(1);
        box-shadow: 0 0 0 0.16em var(--fortress-recovery-notice-ring);
    }

    100% {
        opacity: 0.72;
        transform: scale(0.86);
        box-shadow: 0 0 0 0.72em var(--fortress-recovery-notice-ring-clear);
    }
}

@keyframes fortress-mode-recovery-success-enter {
    from {
        transform: translateY(-2px) scale(0.995);
    }

    55% {
        transform: translateY(0) scale(1.003);
    }

    to {
        transform: none;
    }
}

@keyframes fortress-mode-recovery-success-lock {
    from {
        opacity: 0.5;
        transform: scale(0.72);
        box-shadow: 0 0 0 0 var(--fortress-recovery-notice-ring);
    }

    58% {
        opacity: 1;
        transform: scale(1.08);
        box-shadow: 0 0 0 0.55em var(--fortress-recovery-notice-ring-clear);
    }

    to {
        opacity: 1;
        transform: scale(1);
        box-shadow: 0 0 0 0 var(--fortress-recovery-notice-ring-clear);
    }
}

.fortress-mode-notice[data-notice-type="busy"],
.fortress-mode-notice[data-notice-type="unavailable"],
.fortress-mode-notice[data-notice-type="warning"] {
    color: #F5C56B;
}

@media (prefers-reduced-motion: reduce) {
.fortress-mode-lens,
.fortress-mode-option::after,
.fortress-mode-label::before {
    transition-delay: 0s;
}

.fortress-mode-notice.is-visible:is([data-notice-type="recovery"], [data-notice-type="recovery-success"])>.fortress-mode-notice__content,
.fortress-mode-notice:is([data-notice-type="recovery"], [data-notice-type="recovery-success"])>.fortress-mode-notice__content::before {
    animation: none;
    transform: none;
}

}
.fortress-direction-choice {
    margin: 0 0 14.5px;
    padding: 1em;
    border: 1px solid var(--app-line-strong);
    border-radius: 12px;
    background: var(--app-surface);
    box-shadow: var(--fortress-emboss-shadow);
}

.fortress-direction-choice__title {
    display: block;
    margin: 0;
    color: var(--text-dark);
    font-weight: 800;
    line-height: 1.45;
}

.fortress-direction-choice__note {
    margin: 0.35em 0 0.8em;
    color: var(--text-muted);
    line-height: 1.37;
}

.fortress-direction-choice__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5em;
}

.fortress-direction-choice__button {
    min-width: 0;
    min-height: 44px;
    padding: 0.6em 0.8em;
    border: 1px solid var(--theme-header-alpha);
    border-radius: 10px;
    background: var(--app-panel);
    color: var(--text-dark);
    font-weight: 800;
    line-height: 1.35;
    overflow-wrap: anywhere;
    transition: border-color 0.18s ease, background-color 0.18s ease, color 0.18s ease;
}

.fortress-direction-choice__button:active {
    background: var(--app-active);
    color: var(--theme-primary);
    border-color: rgba(164,170,182,0.34);
}

.fortress-direction-choice__button:focus-visible {
    outline: 2px solid var(--theme-primary);
    outline-offset: 2px;
}

.fortress-translator.is-mode-changing .fortress-mode-switch {
    pointer-events: none;
}

.fortress-translator.is-loading .fortress-mode-switch,
.fortress-translator:has(.voice-btn[aria-busy="true"]) .fortress-mode-switch,
.fortress-translator:has(.voice-btn.recording) .fortress-mode-switch {
    filter: saturate(0.78);
}

.fortress-tts-device-notice {
    position: relative;
    margin: 14.5px 0;
    padding: 1.15em 3.9em 1.15em 1.2em;
    border: 1px solid rgba(245, 197, 107, 0.22);
    border-radius: 14px;
    color: #F5C56B;
    background: rgba(245, 197, 107, 0.07);
    box-shadow: none;
    opacity: 0;
    transform: translateY(8px);
    transition: opacity 0.24s ease, transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.fortress-tts-device-notice.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.fortress-tts-device-notice__title {
    margin: 0 0 0.65em;
    color: #F5C56B;
    font-size: 0.95em;
    font-weight: 900;
}

.fortress-tts-device-notice__body {
    margin: 0;
    color: rgba(255, 226, 168, 0.82);
    font-size: 0.78em;
    font-weight: 600;
}

.fortress-tts-device-notice__close {
    position: absolute;
    right: 0.85em;
    top: 0.85em;
    min-height: 2.5em;
    padding: 0 0.9em;
    border: 1px solid rgba(245, 197, 107, 0.22);
    border-radius: 26px;
    color: #F5C56B;
    background-color: rgba(245, 197, 107, 0.08);
    font-size: 0.68em;
    font-weight: 850;
    transition: background-color .2s ease;
}

.fortress-purchase-environment-note {
    margin: 0 0 1em;
    padding: 1.1em;
    border: 1px solid rgba(245, 197, 107, 0.22);
    border-radius: 12px;
    background-color: rgba(245, 197, 107, 0.07);
    color: rgba(255, 226, 168, 0.82);
    font-size: 0.72em;
    line-height: 1.6;
}

.fortress-purchase-environment-note strong {
    display: block;
    margin-bottom: 0.35em;
    color: #F5C56B;
    font-size: 1.06em;
    font-weight: 900;
}

.fortress-purchase-environment-note p {
    margin: 0;
    font-weight: 700;
}

.fortress-purchase-environment-note ul {
    margin: 0.55em 0 0;
    padding-left: 1.35em;
}

.fortress-purchase-environment-note li+li {
    margin-top: 0.2em;
}

.fortress-standard-checkout-section .fortress-purchase-environment-note {
    grid-column: 1 / -1;
    margin-bottom: 0;
}

.fortress-checkout-confirm-dialog {
    width: min(34em, calc(100vw - 2em));
    max-width: none;
    max-height: calc(100vh - 2em);
    padding: 0;
    border: 0;
    border-radius: 16px;
    background: transparent;
    color: var(--text-dark);
    overflow: auto;
    box-shadow: 0 34px 90px rgba(0,0,0,0.5);
}

.quality-evidence-dialog {
    max-width: none;
    max-height: calc(100vh - 2em);
    padding: 0;
    border: 0;
    border-radius: 16px;
    background: transparent;
    overflow: auto;
}

.fortress-checkout-confirm-dialog::backdrop {
    background: none rgba(19,20,23,0.78);
    backdrop-filter: blur(3px);
}

.quality-evidence-dialog::backdrop {
    background: none rgba(0, 0, 0, .78);
    backdrop-filter: blur(3px);
}

.fortress-checkout-confirm-dialog__panel {
    padding: 1.25em;
    border: 1px solid #454856;
    border-radius: 16px;
    background: var(--app-bg);
    box-shadow: 0 1px 0 rgba(255,255,255,0.12) inset;
    background-color: #1e1f26;
    background-image: none;
}

.fortress-checkout-confirm-dialog__plan {
    margin: 0;
    padding: 0.65em 0.8em;
    border-radius: 10px;
    background: var(--theme-tint);
    font-size: 0.78em;
    font-weight: 900;
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
    border-color: #454856;
    color: #ffffff;
}

.fortress-checkout-confirm-dialog__duration {
    margin: 0.55em 0 0;
    color: var(--text-muted);
    font-size: 0.72em;
    font-weight: 700;
    line-height: 1.5;
}

.fortress-checkout-confirm-dialog__agreement {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.65em;
    align-items: start;
    margin-top: 1em;
    padding: 0.85em;
    border: 1px solid rgba(245, 197, 107, 0.22);
    border-radius: 12px;
    background: rgba(245, 197, 107, 0.07);
    color: rgba(255, 226, 168, 0.82);
    font-size: 0.76em;
    font-weight: 800;
    line-height: 1.55;
    cursor: pointer;
}

.fortress-checkout-confirm-dialog__agreement input {
    width: 1.15em;
    height: 1.15em;
    margin: 0.16em 0 0;
    accent-color: var(--theme-primary);
}

.fortress-checkout-confirm-dialog__actions {
    display: grid;
    grid-template-columns: 1fr 1.35fr;
    gap: 0.65em;
    margin-top: 1em;
}

.fortress-checkout-confirm-dialog__cancel,
.fortress-checkout-confirm-dialog__confirm {
    min-height: 3em;
    border-radius: 26px;
    font-size: 0.78em;
    font-weight: 800;
}

.fortress-checkout-confirm-dialog__cancel {
    border: 1px solid hsl(227.37deg 12.26% 30.39%);
    background: var(--app-surface);
    transition: border-color 0.18s ease, background-color 0.18s ease, color 0.18s ease;
    background-color: hsl(227.37deg 12.26% 30.39%);
    background-image: none;
    color: var(--fortress-muted);
}

.fortress-checkout-confirm-dialog__confirm {
    border: 1px solid hsl(139.41deg 58.62% 54.51%);
    background: var(--theme-primary);
    transition: color 0.18s;
    background-color: hsl(139.41deg 58.62% 54.51%);
    background-image: none;
    color: #000000;
    text-shadow: none;
}

.fortress-checkout-confirm-dialog__confirm:disabled {
    background: none hsl(227.37deg 12.26% 30.39%);
    cursor: not-allowed;
    box-shadow: none;
    color: var(--fortress-muted);
    border-color: hsl(227.37deg 12.26% 30.39%);
}

.quality-evidence-dialog {
    width: min(64em, calc(100vw - 2em));
    color: var(--fortress-text);
    box-shadow: 0 34px 90px rgba(0,0,0,0.5);
}

.quality-evidence-dialog__panel {
    padding: clamp(18px, 3vw, 30px);
    border: 1px solid #454856;
    border-radius: 16px;
    background: none #1e1f26;
    box-shadow: 0 1px 0 rgba(255,255,255,0.08) inset;
}

.quality-evidence-dialog__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 20px;
    align-items: start;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .11);
}

.quality-evidence-dialog__eyebrow {
    margin: 0;
    font-size: 10px;
    line-height: 1.2;
    font-weight: 900;
    letter-spacing: .16em;
    color: #62cd7c;
}

.quality-evidence-dialog__head h2 {
    margin: 8px 0 0;
    font-size: clamp(24px, 4vw, 34px);
    line-height: 1.15;
    letter-spacing: -.04em;
    color: #ffffff;
}

.quality-evidence-dialog__head p:not(.quality-evidence-dialog__eyebrow) {
    max-width: 720px;
    margin: 10px 0 0;
    font-size: 12px;
    line-height: 1.75;
    font-weight: 600;
    color: var(--fortress-muted);
}

.quality-evidence-dialog__close {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    padding: 0;
    border: 1px solid hsl(227.37deg 12.26% 30.39%);
    border-radius: 14px;
    background: none hsl(227.37deg 12.26% 30.39%);
    font: 700 25px/1 system-ui, sans-serif;
    transition: border-color .18s ease, background-color .18s ease, color .18s ease;
    color: #ffffff;
}

.quality-evidence-dialog__tabs {
    margin-top: 22px;
    padding: 4px;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 6px;
    border: 1px solid #454856;
    border-radius: 15px;
    background: none hsl(222.86deg 13.73% 20%);
}

.quality-evidence-dialog__tab {
    min-width: 0;
    min-height: 42px;
    padding: 8px 10px;
    border: 1px solid transparent;
    border-radius: 11px;
    background: transparent;
    font-size: 11px;
    line-height: 1.3;
    font-weight: 900;
    transition: color .18s ease, border-color .18s ease, background-color .18s ease;
    color: var(--fortress-muted);
}

.quality-evidence-dialog__tab[aria-selected="true"] {
    background: none #4dbfef;
    color: #131417;
    border-color: #4dbfef;
    box-shadow: none;
}

.quality-evidence-dialog__direction-tabs {
    margin: 0 0 10px;
    padding: 4px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    border: 1px solid #454856;
    border-radius: 14px;
    background: none hsl(222.86deg 13.73% 20%);
}

.quality-evidence-dialog__direction-tab {
    min-width: 0;
    min-height: 40px;
    padding: 8px 10px;
    border: 1px solid transparent;
    border-radius: 10px;
    background: transparent;
    font-size: 10.5px;
    line-height: 1.3;
    font-weight: 900;
    transition: color .18s ease, border-color .18s ease, background-color .18s ease;
    color: var(--fortress-muted);
}

.quality-evidence-dialog__direction-tab[aria-selected="true"] {
    background: none #4dbfef;
    color: #131417;
    border-color: #4dbfef;
    box-shadow: none;
}

.quality-evidence-dialog__selection-stack {
    min-width: 0;
    display: grid;
}

.quality-evidence-dialog__selection-stack>.quality-evidence-dialog__card {
    height: 100%;
}

.quality-evidence-dialog__section {
    margin-top: 22px;
}

.quality-evidence-dialog__section-head {
    margin-bottom: 10px;
}

.quality-evidence-dialog__section-head span {
    display: block;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 900;
    letter-spacing: .13em;
    color: #62cd7c;
}

.quality-evidence-dialog__section-head h3 {
    margin: 5px 0 0;
    font-size: 15px;
    line-height: 1.35;
    color: #ffffff;
}

.quality-evidence-dialog__grid {
    display: grid;
    gap: 10px;
}

.quality-evidence-dialog__grid--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.quality-evidence-dialog__card {
    min-width: 0;
    padding: 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border: 1px solid #454856;
    border-radius: 15px;
    color: var(--fortress-text);
    background: none hsl(222.86deg 13.73% 20%);
    text-decoration: none;
    transition: transform .2s ease, border-color .2s ease, background-color .2s ease;
}

.quality-evidence-dialog__card--audit {
    background: none hsl(222.86deg 13.73% 20%);
    border-color: #454856;
}

.quality-evidence-dialog__card strong {
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: -.015em;
    color: #ffffff;
}

.quality-evidence-dialog__card small {
    margin-top: 7px;
    font-size: 12px;
    line-height: 1.62;
    font-weight: 600;
    color: var(--fortress-muted);
}

.quality-evidence-dialog__card b {
    margin-top: auto;
    padding-top: 12px;
    font-size: 10px;
    line-height: 1.2;
    font-weight: 900;
    color: #62cd7c;
}

.evaluation-commentary__risk-flags[hidden],
.third-party-verdict__ratings[hidden],
.fortress-tab-scroll[hidden],
.fortress-tab-content[hidden],
.fortress-history-counter[hidden],
.fortress-standard-checkout-body[hidden],
.fortress-premium-checkout-body[hidden],
.fortress-tts-device-notice[hidden],
.fortress-checkout-confirm-dialog__duration[hidden],
.quality-evidence-dialog__language-panel[hidden],
.quality-evidence-dialog__direction-panel[hidden],
.quality-evidence-dialog__selection-card[hidden] {
    display: none;
}

@media (hover: hover) and (pointer: fine) {
.ultra-view>.topbar .mobile-menu-panel a:focus-visible,
.ultra-view>.topbar .mobile-menu-toggle:focus-visible,
.ultra-view>.topbar .mobile-topbar-cta:focus-visible {
    outline: 3px solid rgba(77, 120, 245, .38);
    outline-offset: 2px;
}

:is(.faq-item, .fortress-manual, .fortress-plan-status, .fortress-support-ref-notice):has(>summary:focus-visible) {
    border-color: var(--theme-primary, var(--fortress-aqua));
}

.fortress-copy-indicator:focus-visible,
.fortress-delete-indicator:focus-visible {
    outline: 3px solid var(--focus-glow);
    outline-offset: 0;
    opacity: 1;
}

.fortress-engine-option:has(input:focus-visible) {
    box-shadow: inset 0 0 0 2px var(--app-panel),
            inset 0 0 0 4px var(--theme-primary);
}

.fortress-engine-empty-action:focus-visible {
    background: rgba(255, 107, 107, 0.18);
    color: #ffffff;
}

.fortress-mode-option:focus-visible {
    outline: 2px solid var(--theme-primary);
    outline-offset: -2px;
}

.fortress-tab-btn:focus-visible,
.voice-btn:focus-visible,
.trans-trigger-btn:focus-visible,
.fortress-tts-btn:focus-visible,
.fortress-clear-res-btn:focus-visible,
.trans-paste-btn:focus-visible,
.trans-clear-btn:focus-visible {
    outline: 2px solid var(--theme-primary);
    outline-offset: 3px;
}

.fortress-tts-device-notice__close:focus-visible {
    outline: 2px solid #d97706;
    outline-offset: 2px;
}

.fortress-checkout-confirm-dialog__cancel:focus-visible,
.fortress-checkout-confirm-dialog__confirm:not(:disabled):focus-visible {
    outline: 2px solid var(--theme-primary);
    outline-offset: 2px;
}

.quality-evidence-dialog__close:focus-visible,
.quality-evidence-dialog__card:focus-visible,
.quality-evidence-dialog__tab:focus-visible,
.quality-evidence-dialog__direction-tab:focus-visible {
    outline: 2px solid var(--fortress-aqua);
    outline-offset: 3px;
}

.quality-evidence-dialog__tab:not([aria-selected="true"]):hover,
.quality-evidence-dialog__direction-tab:not([aria-selected="true"]):hover {
    background: none rgba(98,205,124,0.07);
    color: #ffffff;
    border-color: rgba(164,170,182,0.2);
}

.ultra-view>.topbar .brand:hover,
.ultra-view>.topbar .topnav a:not(.topnav__cta):hover {
    opacity: .7;
}

.ultra-view>.topbar .topnav .topnav__cta:hover {
    transform: translateY(-2px);
}

.ultra-view>.topbar .topnav .topnav__cta:hover::after {
    opacity: 1;
}

.benchmark-reference .benchmark-evidence-link:hover {
    text-decoration-color: currentColor;
}

.benchmark-rank-chip:not([aria-selected="true"]):hover {
    background: rgba(255, 255, 255, .055);
    color: #ffffff;
}

.quality-stack-bar__segment:hover {
    z-index: 1;
    filter: brightness(1.28) saturate(1.14);
}

.quality-stack-bar__segment:hover::after {
    opacity: 1;
}

.quality-stack-bar__stack:has(.quality-stack-bar__segment:hover) .quality-stack-bar__segment:not(:hover) {
    opacity: .72;
    filter: brightness(.78) saturate(.82);
}

.quality-stack-bar:not([aria-selected="true"]):has(.quality-stack-bar__segment:hover) .quality-stack-bar__track {
    border-color: rgba(164,170,182,0.46);
}

.quality-stack-bar:not([aria-selected="true"]):has(.quality-stack-bar__segment:hover) .quality-stack-bar__track::after {
    opacity: 1;
}

.quality-report-link:hover,
.contact-box__link:hover {
    transform: scale(0.98);
}

.ft-image-poll__option:not(:disabled):hover {
    background: linear-gradient(180deg, rgba(98,205,124,0.09), rgba(255, 255, 255, .045)) transparent;
    border-color: rgba(164,170,182,0.34);
}

.ft-image-poll__option:not(:disabled):not(.is-selected):hover::after {
    opacity: 1;
}

.benchmark-test-tabs button:not([aria-selected="true"]):hover {
    border-color: rgba(var(--score-accent), .42);
}

.benchmark-test-tabs button:not([aria-selected="true"]):hover::before {
    opacity: 1;
}

:is(.fortress-manual, .fortress-plan-status, .fortress-support-ref-notice)>summary:hover {
    background-color: rgba(255, 255, 255, 0.035);
}

.trans-paste-btn:hover,
.trans-clear-btn.is-visible:hover {
    opacity: 0.7;
}

html:not(.ft-touch-device) .voice-btn:not(.recording):active {
    color: var(--theme-primary);
    border-color: rgba(69,72,86,0.75);
    background-color: rgba(98,205,124,0.16);
}

.voice-btn:not(.recording):not(:disabled):not(:active):hover {
    color: var(--theme-primary);
    border-color: rgba(164,170,182,0.45);
    background-color: rgba(98,205,124,0.08);
}

.fortress-direction-choice__button:hover {
    background: var(--app-active);
    color: var(--theme-primary);
    border-color: rgba(164,170,182,0.34);
}

.trans-trigger-btn:not(:disabled):not(:active):hover::after {
    opacity: 1;
}

.fortress-tts-btn:hover,
.fortress-clear-res-btn:hover {
    opacity: 0.7;
}

.trans-log-item:not(.is-active):hover {
    background-color: #1e1f26;
}

.fortress-tab-btn:not(.active):hover {
    color: var(--fortress-text);
    border-color: transparent;
    background: rgba(255, 255, 255, 0.04);
}

.trans-log-item:hover :is(.fortress-copy-indicator, .fortress-delete-indicator) {
    opacity: 0.6;
}

:is(.fortress-copy-indicator, .fortress-delete-indicator):hover {
    opacity: 1;
}

.fortress-engine-option-standard:not(:has(input:checked)):hover::before,
:is(.fortress-engine-option-gpt, .fortress-engine-option-gpt-premium, .fortress-engine-option-claude-premium):not(:has(input:checked)):hover::before {
    opacity: 0;
}

.fortress-engine-option-standard:not(:has(input:checked)):hover::after {
    opacity: .35;
}

:is(.fortress-engine-option-gpt, .fortress-engine-option-gpt-premium, .fortress-engine-option-claude-premium):not(:has(input:checked)):hover::after {
    opacity: .25;
}

.fortress-engine-empty-action:hover {
    background: rgba(255, 107, 107, 0.18);
    color: #ffffff;
}

.fortress-engine-option:not(:has(input:checked)):hover span {
    color: var(--fortress-text);
}

.fortress-checkout-entry:not(.is-processing) .fortress-checkout-btn:not(:disabled):hover::before,
.fortress-checkout-entry:not(.is-processing) .fortress-checkout-btn:not(:disabled):hover::after {
    opacity: 1;
}

.fortress-standard-checkout-toggle:hover {
    background-color: rgba(98,205,124,0.14);
}

.fortress-premium-checkout-toggle:hover {
    background-color: rgba(198,103,152,0.17);
}

.fortress-tts-device-notice__close:hover {
    background-color: rgba(245, 197, 107, 0.14);
}

.fortress-mode-option:not(.is-unavailable):not(.is-selected):hover {
    color: var(--fortress-text);
    background-color: #1e1f26;
}

.hero#top .btn--primary:hover::before,
.cta .btn--primary:hover::before {
    animation: ft-primary-cta-sweep .72s cubic-bezier(.22, .61, .36, 1) both;
}

.hero#top .btn--primary:hover>.ft-primary-cta-arrow,
.cta .btn--primary:hover>.ft-primary-cta-arrow {
    transform: translateX(4px);
}

.plan-rail {
    cursor: grab;
    scroll-snap-type: none;
}

.plan-rail.is-dragging {
    cursor: grabbing;
    user-select: none;
}

.plan-rail.is-dragging>* {
    pointer-events: none;
}

.faq-item summary:hover,
.howto-prep__details>summary:hover {
    background-color: rgba(255, 255, 255, .035);
}

.quality-evidence-dialog__close:hover {
    background: none rgba(98,205,124,0.09);
    border-color: rgba(164,170,182,0.42);
    color: #ffffff;
}

.quality-evidence-dialog__card:hover {
    transform: translateY(-2px);
    background: rgba(255, 255, 255, .07);
    border-color: rgba(164,170,182,0.25);
}

.fortress-checkout-confirm-dialog__cancel:hover {
    border-color: var(--theme-primary);
    background: var(--theme-tint);
    color: var(--text-dark);
}

}
@media (max-width: 767px) {
.quality-stack-chart .quality-stack-bar:nth-child(n+7) .quality-stack-bar__stack {
    animation: none;
    transform: none;
}

.hero#top .glass-chip--1 {
    left: 10%;
    top: 16.3%;
}

.hero#top .glass-chip--2 {
    right: 10%;
    top: 18.8%;
}

.quality-stack-chart__legend {
    flex-wrap: nowrap;
    margin-inline-end: calc(-1 * var(--quality-stack-inline-pad));
    padding-inline-end: var(--quality-stack-inline-pad);
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    overscroll-behavior-inline: contain;
    gap: 8px 12px;
    padding-bottom: 4px;
    font-size: 12px;
}

.quality-stack-chart__legend::-webkit-scrollbar,
.steps-grid::-webkit-scrollbar,
.benchmark-inspector__content-rail::-webkit-scrollbar {
    display: none;
}

.quality-stack-chart__legend>span {
    flex: 0 0 auto;
    scroll-snap-align: start;
}

.mobile-rail__scrollbar {
    display: block;
}

.quality-stack-chart__legend+.mobile-rail__scrollbar {
    margin-inline-end: calc(2px - var(--quality-stack-inline-pad));
}

#why-fortress .steps-grid {
    margin-inline-end: calc(-1 * var(--section-inline-gutter));
    padding-inline-end: max(var(--section-inline-gutter), env(safe-area-inset-right));
}

#why-fortress .mobile-rail__scrollbar {
    margin-inline-end: calc(2px - var(--section-inline-gutter));
}

.quality-stack-chart__viewport {
    margin-inline-end: calc(-1 * var(--quality-stack-inline-pad));
    padding-inline-end: var(--quality-stack-inline-pad);
}

.quality-stack-chart>.quality-stack-chart__scrollbar {
    margin-inline-end: calc(2px - var(--quality-stack-inline-pad));
}

.origin-section {
    padding-top: 92px;
}

.origin-timeline li {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 13px;
}

.origin-timeline {
    --origin-step-pad-y: 22px;
    --origin-step-pad-x: 18px;
    --origin-step-icon-size: 38px;
}

.steps-grid {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    overscroll-behavior-inline: contain;
}

.steps-grid>.step-card {
    flex: 0 0 min(82.5vw, 340px);
    scroll-snap-align: start;
    scroll-snap-stop: always;
    opacity: 1;
    transform: translateY(0);
}

.sales-summary,
.price-card {
    padding: 20px;
    border-radius: 24px;
}

.price-card {
    flex-basis: min(82vw, 290px);
}

.premium {
    padding: 112px 0;
}

.plan-groups {
    gap: 60px;
}

.plan-spotlight {
    flex-basis: min(88vw, 410px);
    padding: 24px;
}

.price {
    font-size: 32px;
}

.product-number {
    font-size: clamp(95px, 24vw, 146px);
}

.features__back {
    --css-parallax-range: 577px;
}

.features__mid {
    inset: 8% -8% 0;
}

.feature-card-grid {
    width: min(580px, calc(100% - 32px));
    grid-template-columns: 1fr;
    grid-auto-rows: auto;
    gap: 32px;
}

.cta {
    padding: 100px 0;
}

.cta-box {
    padding: 46px 20px;
}

.ft-image-poll__option:last-child {
    width: 100%;
}

.footer__inner {
    display: block;
    text-align: center;
}

.footer__links {
    justify-content: center;
    margin-top: 18px;
}

.contact-box {
    grid-template-columns: 1fr;
    gap: 24px;
}

.hero#top .anchor--ja {
    --anchor-size: clamp(20.5px, 4.8vw, 40px);
    --ax: 36.5%;
    --ay: 31.8%;
}

.hero#top .anchor--ko {
    --anchor-size: clamp(25px, 6vw, 40px);
    --ax: 61%;
    --ay: 26.7%;
}

.hero#top .anchor--th {
    --anchor-size: clamp(12.5px, 3.5vw, 23px);
    --ax: 61%;
    --ay: 68.8%;
}

.hero#top .anchor--en {
    --anchor-size: clamp(12.5px, 3.5vw, 23px);
    --ax: 37.3%;
}

.hero#top .hero__texture-field {
    inset: -10% -18% -6%;
    opacity: .54;
    background-size: 78px 78px, 96px 96px, 88px 88px;
}

.hero#top .hero__demo-stack {
    width: 100%;
}

.hero#top .hero-ring {
    width: 400px;
    top: 12.5%;
}

.hero#top .orb--1 {
    width: 46px;
    height: 46px;
    top: 16.8%;
    left: 15%;
}

.hero#top .orb--2 {
    width: 35px;
    height: 35px;
    top: 51%;
    right: 20%;
}

.hero#top .orb--3 {
    width: 48px;
    height: 48px;
    top: 5.5%;
    right: -9%;
}

.hero#top .ft-demo-inner {
    padding: 16px;
}

.hero#top .ft-demo-stage {
    grid-template-columns: 1fr;
    gap: 13px;
}

.hero#top .ft-demo-panel,
.hero#top .ft-demo-result {
    min-height: 195px;
}

.quality-depth-type {
    font-size: 92px;
}

.quality-intro__problem {
    font-size: 18px;
}

.benchmark-inspector__head {
    flex-direction: column;
}

.benchmark-inspector__score {
    text-align: left;
}

.benchmark-test-tabs {
    gap: 6px;
}

.benchmark-test-tabs button {
    min-height: 72px;
    padding: 10px 6px;
    text-align: center;
}

.benchmark-test-tabs button span {
    font-size: 9px;
    line-height: 1.4;
    letter-spacing: .02em;
}

.benchmark-test-tabs button b {
    font-size: 17px;
}

.axis-row {
    grid-template-columns: minmax(92px, .9fr) minmax(70px, 1fr) 48px;
    gap: 8px;
}

.benchmark-inspector__content-rail {
    margin-top: 18px;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    scroll-snap-type: x mandatory;
    overscroll-behavior-inline: contain;
}

.benchmark-inspector__content-rail>.benchmark-inspector__grid {
    display: contents;
}

.benchmark-inspector__content-rail .benchmark-axis-stack,
.benchmark-inspector__content-rail .evaluation-verdict,
.benchmark-inspector__content-rail>.translation-inspector {
    min-width: 0;
    flex: 0 0 100%;
    scroll-snap-align: start;
    scroll-snap-stop: always;
}

.benchmark-inspector__content-rail>.translation-inspector {
    margin-top: 0;
    grid-template-columns: 1fr;
}

.benchmark-inspector__content-scrollbar {
    display: block;
}

.benchmark-inspector__content-rail.is-mouse-draggable {
    cursor: grab;
    scroll-snap-type: none;
}

.benchmark-inspector__content-rail.is-mouse-draggable.is-dragging {
    cursor: grabbing;
    user-select: none;
}

.quality-evidence,
.translator-coverage,
.fortress-checkout-plans,
.quality-evidence-dialog__grid--two,
.quality-evidence-dialog__grid--three,
.fortress-checkout-confirm-dialog__actions {
    grid-template-columns: 1fr;
}

.quality-report-link {
    min-width: 0;
}

.translator-coverage__metric strong {
    font-size: clamp(64px, 22vw, 88px);
}

.fortress-mode-switch {
    --fortress-mode-pad: 0.6em;
    --fortress-mode-row-gap: 1em;
    --fortress-mode-height: clamp(30px, 7vw, 35px);
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-template-rows: repeat(2, var(--fortress-mode-height));
    row-gap: var(--fortress-mode-row-gap);
    max-width: clamp(330px, 75vw, 391px);
    margin-inline: auto;
    width: 100%;
    border-radius: 12px;
}

.fortress-mode-option {
    border-radius: 8px;
}

.fortress-mode-option[data-mode="thai"] {
    grid-column: 1 / span 2;
    grid-row: 1;
}

.fortress-mode-option[data-mode="taiwan"] {
    grid-column: 3 / span 2;
    grid-row: 1;
}

.fortress-mode-option[data-mode="hongkong"] {
    grid-column: 5 / span 2;
    grid-row: 1;
}

.fortress-mode-option[data-mode="korea"] {
    grid-column: 2 / span 2;
    grid-row: 2;
}

.fortress-mode-option[data-mode="english"] {
    grid-column: 4 / span 2;
    grid-row: 2;
}

.fortress-mode-lens {
    bottom: auto;
    width: calc((100% - (2 * var(--fortress-mode-pad)) - (2 * var(--fortress-mode-gap))) / 3);
    height: var(--fortress-mode-height);
    border-radius: 8px;
}

.fortress-mode-switch[data-selected-index="1"] .fortress-mode-lens {
    transform: translate(calc(100% + var(--fortress-mode-gap)), 0);
}

.fortress-mode-switch[data-selected-index="3"] .fortress-mode-lens {
    transform: translate(calc(50% + 0.25em), calc(100% + var(--fortress-mode-row-gap)));
}

.fortress-mode-switch[data-selected-index="4"] .fortress-mode-lens {
    transform: translate(calc(150% + 0.75em), calc(100% + var(--fortress-mode-row-gap)));
}

.fortress-checkout-confirm-dialog,
.quality-evidence-dialog {
    width: calc(100vw - 1.25em);
    max-height: calc(100vh - 1.25em);
}

.quality-evidence-dialog__panel {
    padding: 16px;
}

.quality-evidence-dialog__head {
    gap: 12px;
    padding-bottom: 16px;
}

.quality-evidence-dialog__close {
    width: 38px;
    height: 38px;
    border-radius: 12px;
}

.quality-evidence-dialog__tabs {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.quality-evidence-dialog__tab {
    grid-column: span 2;
    min-height: 40px;
    padding-inline: 6px;
    font-size: 10.5px;
}

.quality-evidence-dialog__tab:nth-child(4) {
    grid-column: 2 / span 2;
}

.quality-evidence-dialog__tab:nth-child(5) {
    grid-column: 4 / span 2;
}

.quality-evidence-dialog__direction-tabs {
    gap: 5px;
}

.quality-evidence-dialog__direction-tab {
    min-height: 38px;
    padding-inline: 6px;
    font-size: 9.8px;
}

.quality-evidence-dialog__card {
    padding: 14px;
}

.fortress-checkout-confirm-dialog__panel {
    padding: 1em;
}

#features::before,
#features>.ft-awaken-plane {
    inset: 8% -8% 0;
}

}
@media (max-width: 480px) {
.quality-stack-chart .quality-stack-bar:nth-child(n+4) .quality-stack-bar__stack {
    animation: none;
    transform: none;
}

.cta h2,
.cta p {
    margin: 0 auto 18px;
}

.section__inner {
    width: min(1180px, calc(100% - 20px));
}

.feature-card-grid {
    width: min(580px, calc(100% - 20px));
}

.mobile-break {
    display: block;
}

.hero#top .hero__lead .mobile-break {
    margin-top: .8em;
}

.hero#top .hero__actions {
    flex-direction: column;
}

.hero#top .ft-demo-eyebrow {
    display: none;
}

.hero#top .ft-demo-title {
    font-size: 15px;
}

.hero#top .ft-demo-live {
    font-size: 6.5px;
    padding: 0 8px;
}

.hero#top .ft-demo-badge {
    min-width: 50px;
    padding: 0 7px;
}

.hero#top .ft-demo-mode-switch {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    grid-template-rows: repeat(2, 30px);
}

.hero#top .ft-demo-mode[data-mode="thai"] {
    grid-column: 1/span 2;
}

.hero#top .ft-demo-mode[data-mode="taiwan"] {
    grid-column: 3/span 2;
}

.hero#top .ft-demo-mode[data-mode="hongkong"] {
    grid-column: 5/span 2;
}

.hero#top .ft-demo-mode[data-mode="korea"] {
    grid-column: 2/span 2;
}

.hero#top .ft-demo-mode[data-mode="english"] {
    grid-column: 4/span 2;
}

.hero#top .ft-demo-engine-switch {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.hero#top .ft-demo-result-meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 1.5px;
}

.fortress-translator.is-premium-ai-loading .trans-input-wrapper::after {
    min-width: 12.8em;
    max-width: calc(100% - 1.2em);
    padding: 0.8em 1.15em 0.84em;
    font-size: 0.72em;
}

.translator-section .fortress-translator {
    padding: 0;
    border-width: 0;
    border-style: none;
}

.fortress-placeholder-mock {
    top: 6.5%;
    left: 0.6em;
}

.translator-section .trans-input-wrapper {
    --ft-input-padding: 0.5;
}

.trans-action-right {
    margin-bottom: -7px;
}

.fortress-plan-status__body,
.fortress-support-ref-body {
    padding: 0.75em 0.8em;
}

.fortress-result-meta {
    gap: 0.45em;
}

.fortress-engine-badge {
    font-size: 0.68em;
    padding: 0.16em 0.62em;
}

.fortress-engine-control.has-engine-count-2 .fortress-engine-switch {
    max-width: 245px;
}

.fortress-engine-control.has-engine-count-4 .fortress-engine-switch {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    max-width: 260px;
}

.fortress-engine-control.has-engine-count-4 .fortress-engine-switch::before {
    width: calc((100% - 0.75em) / 2);
    height: calc((100% - 0.75em) / 2);
}

.fortress-engine-control.has-standard-engine.has-premium-engine.has-engine-count-4 .fortress-engine-switch:has(input[value="claude_premium"]:checked)::before {
    transform: translate(0, calc(100% + 0.25em));
}

.fortress-engine-control.has-standard-engine.has-premium-engine.has-engine-count-4 .fortress-engine-switch:has(input[value="gpt_premium"]:checked)::before {
    transform: translate(calc(100% + 0.25em),
                calc(100% + 0.25em));
}

.fortress-engine-unavailable {
    padding: 0.8em;
}

.fortress-mode-option.is-unavailable::before {
    top: 0.38em;
    right: 11%;
}

.fortress-tts-device-notice {
    padding: 1em 1em 1.05em;
}

.fortress-tts-device-notice__close {
    position: static;
    width: 100%;
    margin-top: 1em;
}

}
.ft-document .ultra-view {
    perspective: none;
    background: var(--fortress-bg);
    scroll-padding-block-start: 8rem;
    scroll-behavior: auto;
}

.ft-document .topbar {
    background: #f2f8fc;
}

.ft-document .topbar__inner {
    flex-wrap: wrap;
    padding-block: .5rem;
}

.ft-document-icon {
    flex: 0 0 1.5rem;
    inline-size: 1.5rem;
    block-size: 1.5rem;
}

.ft-document-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-block-size: 44px;
    padding: .6rem 1rem;
    border-radius: 999px;
    background: var(--ink);
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    white-space: nowrap;
}

.ft-document-main {
    padding-block: 1rem 4rem;
    line-height: 1.85;
}

.ft-document-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1.5rem 2.5rem;
    padding-block: 1.5rem 2rem;
}

.ft-document-heading>div {
    flex: 1 1 29rem;
    min-inline-size: 0;
}

.ft-document-eyebrow {
    display: flex;
    align-items: center;
    gap: .75rem;
    margin: 0 0 1rem;
    color: var(--fortress-aqua);
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: .08em;
}

.ft-document-heading h1 {
    margin: 0;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.45;
    letter-spacing: -.025em;
    overflow-wrap: anywhere;
    text-wrap: balance;
}

.ft-document-lead {
    margin: 1rem 0 0;
    max-inline-size: 40rem;
    color: #c7d4e1;
    font-size: 1rem;
}

.ft-document-art {
    display: block;
    flex: 0 1 22rem;
    inline-size: min(100%, 22rem);
    max-inline-size: 100%;
    block-size: auto;
    margin-inline: auto;
}

.ft-document-pages {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
    gap: .5rem;
    padding-block: 1rem;
    border-block: 1px solid var(--fortress-line);
}

.ft-document-pages a {
    display: flex;
    align-items: center;
    gap: .85rem;
    min-block-size: 56px;
    padding: .75rem 1rem;
    border: 1px solid transparent;
    border-radius: 10px;
    color: #c7d4e1;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.6;
}

.ft-document-pages a[aria-current="page"] {
    border-color: rgba(116, 240, 227, .3);
    background: rgba(116, 240, 227, .065);
    color: var(--fortress-aqua);
}

.ft-document-layout {
    display: grid;
    gap: 2.5rem;
    align-items: start;
    padding-block-start: 2.5rem;
}

.ft-document-contents {
    padding: 1.25rem;
    border: 1px solid var(--fortress-line);
    border-radius: 14px;
    background: rgba(255, 255, 255, .025);
    font-size: 1rem;
}

.ft-document-contents__title {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-block-size: 44px;
    list-style: none;
    cursor: pointer;
    font-weight: 600;
    color: #f7fbff;
}

.ft-document-contents__title::-webkit-details-marker {
    display: none;
}

.ft-document-contents__title>:last-child {
    margin-inline-start: auto;
    transform: rotate(90deg);
}

.ft-document-contents details[open]>summary>:last-child {
    transform: rotate(-90deg);
}

.ft-document-contents__title .ft-document-icon {
    color: var(--fortress-aqua);
}

.ft-document-contents ol {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
    gap: .25rem 1.5rem;
    list-style: none;
    padding: 0;
    margin: 1rem 0 0;
    padding-block-start: 1rem;
    border-block-start: 1px solid var(--fortress-line);
}

.ft-document-contents a {
    display: flex;
    align-items: baseline;
    gap: .75rem;
    min-block-size: 44px;
    padding-block: .55rem;
    color: #d1dce7;
    line-height: 1.6;
}

.ft-document-contents__number {
    flex: 0 0 2ch;
    color: var(--fortress-aqua);
    font-variant-numeric: tabular-nums;
}

.ft-document-article {
    min-inline-size: 0;
}

.ft-policy {
    max-inline-size: 48rem;
    margin: 2rem auto 0;
    font-size: 1rem;
    line-height: 1.85;
    overflow-wrap: anywhere;
}

.ft-document .ft-policy {
    margin: 0;
    max-inline-size: none;
    color: #e1eaf3;
}

.ft-policy>:first-child {
    margin-block-start: 0;
}

.ft-policy h2 {
    margin-block: 3rem 1.25rem;
    padding-block-start: 1.5rem;
    border-block-start: 1px solid var(--fortress-line);
    color: #f7fbff;
    font-size: 1.5rem;
    line-height: 1.6;
    scroll-margin-block-start: 1rem;
}

.ft-document-section-number {
    display: inline-block;
    margin-inline-end: .5rem;
    color: var(--fortress-aqua);
    font-variant-numeric: tabular-nums;
}

.ft-policy h3 {
    margin-block: 1.75rem .75rem;
    color: #f7fbff;
    font-size: 1.125rem;
    line-height: 1.6;
}

.ft-policy p,
.ft-policy ul,
.ft-policy ol {
    margin-block: 1rem;
}

.ft-policy ul,
.ft-policy ol {
    padding-inline-start: 1.5rem;
}

.ft-policy li+li {
    margin-block-start: .75rem;
}

.ft-policy li::marker {
    color: var(--fortress-aqua);
}

.ft-policy a {
    color: var(--fortress-aqua, #74f0e3);
}

.ft-policy__table {
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    margin-block: 1.5rem;
    border: 1px solid var(--fortress-line);
    border-radius: 10px;
    background: rgba(255, 255, 255, .015);
}

.ft-policy table {
    inline-size: 100%;
    min-inline-size: 34rem;
    border-collapse: collapse;
    font-size: inherit;
}

.ft-policy th,
.ft-policy td {
    padding: 1rem;
    border-block-end: 1px solid var(--fortress-line);
    vertical-align: top;
    text-align: start;
}

.ft-policy th {
    background: var(--fortress-glass, rgba(255, 255, 255, .075));
    color: #f7fbff;
    font-weight: 700;
}

.ft-policy tbody tr:last-child td {
    border-block-end: 0;
}

.ft-policy tbody tr:nth-child(even) {
    background: rgba(255, 255, 255, .025);
}

.ft-document-empty {
    padding-block: 2rem;
}

.ft-document .footer {
    padding-block: 3.5rem 1.5rem;
    border-block-start: 1px solid var(--fortress-line);
    background: linear-gradient(125deg, #102737, #101c30);
    color: #c7d4e1;
    font-size: 1rem;
    line-height: 1.8;
}

.ft-document .footer__inner {
    display: flex;
    align-items: start;
    flex-wrap: wrap;
    gap: 3rem;
    text-align: start;
}

.ft-document .footer__meta {
    flex: 1 1 20rem;
    min-inline-size: 0;
    gap: 1rem;
}

.ft-document-footer-brand {
    color: #f7fbff;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.5;
}

.ft-document .footer__meta p {
    margin: 0;
}

.ft-document .footer__meta a {
    inline-size: fit-content;
    display: inline-flex;
    align-items: center;
    gap: .85rem;
    min-block-size: 44px;
    overflow-wrap: anywhere;
}

.ft-document .footer__links {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr));
    flex: 1 1 36rem;
    gap: 2rem;
    margin: 0;
}

.ft-document-footer-label {
    margin: 0 0 .75rem;
    padding-block-end: .75rem;
    border-block-end: 1px solid var(--fortress-line);
    color: var(--fortress-aqua);
    font-weight: 600;
}

.ft-document .footer__links a {
    display: flex;
    align-items: center;
    gap: .75rem;
    min-block-size: 44px;
    padding-block: .5rem;
    color: #dbe7f1;
    font-weight: 500;
}

.ft-document .footer__links a[aria-current="page"] {
    color: var(--fortress-aqua);
}

.ft-document-footer-bottom {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: .75rem 2rem;
    inline-size: min(1200px, calc(100% - 32px));
    margin: 2.5rem auto 0;
    padding-block-start: 1.5rem;
    border-block-start: 1px solid var(--fortress-line);
}

.ft-document-footer-bottom a {
    display: inline-flex;
    align-items: center;
    gap: .75rem;
    min-block-size: 44px;
    overflow-wrap: anywhere;
}

.ft-document a:focus-visible,
.ft-document summary:focus-visible,
.ft-policy__table:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

.ft-document main:focus {
    outline: none;
}

.ft-document-pages a:focus-visible {
    border-color: rgba(116, 240, 227, .45);
    background: rgba(116, 240, 227, .1);
}

@media (hover: hover) and (pointer: fine) {
.ft-document-pages a:hover {
    border-color: rgba(116, 240, 227, .45);
    background: rgba(116, 240, 227, .1);
}

.ft-document-contents a:hover,
.ft-document-pages a:hover,
.ft-document .footer a:hover {
    color: var(--fortress-aqua);
}

}
.ft-document-art__globe>* {
    stroke-dasharray: 1;
    animation: ft-document-draw 1.6s cubic-bezier(.22, .61, .36, 1) .1s backwards;
}

.ft-document-art__route {
    animation: ft-document-route 2.8s ease-out .2s backwards;
}

.ft-document-art__card,
.ft-document-art__bubble {
    animation: ft-document-lift 2.6s cubic-bezier(.22, .61, .36, 1) .15s backwards;
}

.ft-document-art__bubble {
    animation-delay: .3s;
}

.ft-document-art__bubble+.ft-document-art__bubble {
    animation-delay: .5s;
}

.ft-document-pages a {
    transition: border-color .22s ease, background-color .22s ease, color .22s ease;
}

.ft-document-contents__title>:last-child {
    transition: transform .25s ease;
}

.ft-document :is(.ft-document-pages a, .footer a):is(:focus-visible, .is-ft-icon-jumping)>.ft-document-icon {
    animation: ft-document-icon-jump .32s ease-in-out;
}

@media (hover: hover) and (pointer: fine) {
.ft-document :is(.ft-document-pages a, .footer a):hover>.ft-document-icon {
    animation: ft-document-icon-jump .32s ease-in-out;
}

}
@keyframes ft-document-icon-jump {
    0%, 100% { translate: 0 0; }
    40% { translate: 0 -5px; }
}

@keyframes ft-document-draw {
    from { stroke-dashoffset: 1; }
    to { stroke-dashoffset: 0; }
}

@keyframes ft-document-route {
    from { stroke-dashoffset: 60; opacity: .2; }
    to { stroke-dashoffset: 0; opacity: 1; }
}

@keyframes ft-document-lift {
    0% { translate: 0 12px; opacity: 0; }
    35% { translate: 0 -4px; opacity: 1; }
    100% { translate: 0 0; opacity: 1; }
}

@media (min-width: 64rem) {
.ft-document-layout--with-contents {
    grid-template-columns: 19rem minmax(0, 1fr);
    gap: 3rem;
}

.ft-document-contents {
    position: sticky;
    top: 8rem;
    max-block-size: calc(100svh - 9rem);
    overflow-y: auto;
}

}
.fortress-recover-result {
    margin-top: 8px;
    min-height: 40px;
    padding: 8px 12px;
    border: 1px solid var(--app-line-strong, rgba(145, 170, 255, .24));
    border-radius: 8px;
    font: inherit;
    font-size: 12px;
    cursor: pointer;
    background-color: var(--app-surface, #1e1f26);
    background-image: none;
    color: #ffffff;
}

.fortress-recover-result[hidden] {
    display: none;
}

.fortress-recover-result:disabled {
    opacity: .65;
    cursor: wait;
}

:root:has(.ultra-view) {
    color-scheme: dark;
}

body:has(.ultra-view) {
    --ink: #1e1f26;
    --fortress-shadow: 0 30px 88px rgba(0,0,0,0.28);
    --text-main: #ffffff;
    --fortress-bg: #131417;
    --fortress-glass: #1e1f26;
    --fortress-glass-strong: #2d3039;
    --fortress-line: rgba(199, 201, 210, .24);
    --fortress-text: #ffffff;
    --fortress-muted: hsl(230deg 12% 80.39%);
    --fortress-aqua: #62cd7c;
    --fortress-blue: #4dbfef;
    --grad-brand: linear-gradient(90deg, #62cd7c, #4dbfef, #c66798, #e9c46e);
    --rail-thumb-background: linear-gradient(90deg, rgba(98, 205, 124, .95), rgba(121, 226, 155, .92));
    --rail-thumb-shadow: 0 0 16px rgba(98, 205, 124, .15), inset 0 1px 0 rgba(255, 255, 255, .35);
}

.ultra-view>.topbar .topnav a:not(.topnav__cta) {
    color: #c2c5cc;
}

.ultra-view>.topbar .topnav a:not(.topnav__cta):hover,
.ultra-view>.topbar .topnav a:not(.topnav__cta):focus-visible {
    color: #fff;
}

.contact-box p {
    color: var(--fortress-muted);
}

.fortress-mode-option:not(.is-selected) {
    color: #d6d8de;
}

.fortress-tab-btn:not(.active) {
    color: #c3c7d0;
}

.fortress-translator :focus-visible {
    outline-color: #7ad9f8;
}

:focus-visible {
    outline-color: #b5ee8a;
}

.fortress-translator .voice-btn,
.fortress-translator .fortress-manual {
    background-color: hsl(222.86deg 13.73% 20%);
    border-color: #454856;
}

.step-card a:not(.btn),
.faq-item a:not(.btn) {
    color: hsl(196.2deg 100% 73.14%);
}

.content-section--dark:is(#howto, #quality, #contact),
.origin-section {
    background-color: #181a1e;
    background-image: none;
}

.ft-demo-engine.active .ft-demo-engine-mark {
    background-color: #4dbfef;
    background-image: none;
    color: #131417;
}

.features-scene .icon {
    background-color: #1e1f26;
    background-image: linear-gradient(135deg, rgba(var(--ft-v4-accent, 98,205,124), .20), rgba(255,255,255,.025));
    border-color: rgba(var(--ft-v4-accent, 98,205,124), .32);
}

.features-scene .section-title {
    word-break: keep-all;
}

.howto-prep__languages span {
    color: var(--fortress-muted);
    background-color: hsl(222.86deg 13.73% 20%);
    background-image: none;
    border-color: #454856;
}

.depth-card .feature-card__eyebrow {
    color: rgb(var(--ft-v4-accent, 199,201,210));
}

.step-card:nth-child(4n/**/+1) .step-no,
.step-card:nth-child(4n/**/+2) .step-no,
.step-card:nth-child(4n/**/+3) .step-no,
.step-card:nth-child(4n) .step-no {
    color: #ffffff;
}

.quality-stack-chart .is-test01 {
    background-color: #62cd7c;
    background-image: none;
}

.quality-stack-chart .is-test02 {
    background-color: #4dbfef;
    background-image: none;
}

.quality-stack-chart .is-test03 {
    background-color: #c66798;
    background-image: none;
}

.benchmark-test-tabs button:nth-child(2) {
    --score-accent: 77, 191, 239;
}

.benchmark-test-tabs button:nth-child(3) {
    --score-accent: 198, 103, 152;
}

.usecase--1 {
    background-color: #2d3039;
    background-image: radial-gradient(circle at 84% 18%, rgba(var(--usecase-accent), .22), transparent 32%),
        linear-gradient(145deg, #32343c, #2d3039 74%);
    border-color: #454856;
    --usecase-accent: 98, 205, 124;
}

.contact-box__link:hover,
.contact-box__link:focus-visible,
.fortress-checkout-confirm-dialog__confirm:not(:disabled):hover {
    color: #000000;
    background-color: hsl(139.41deg 58.62% 54.51%);
    background-image: none;
}

.fortress-mode-option.is-selected .fortress-mode-label {
    color: #131417;
}

#howto .howto-prep::before {
    position: absolute;
    top: -63px;
    left: 0;
    width: min(82vw, clamp(280px, 28vw, 390px));
    aspect-ratio: 554 / 107;
    pointer-events: none;
    content: "";
    background: var(--ft-ornament-rest, none) left center / contain no-repeat;
}

#howto .howto-prep>canvas.ft-awaken-canvas {
    position: absolute;
    top: -63px;
    left: 0;
    width: min(82vw, clamp(280px, 28vw, 390px));
    aspect-ratio: 554 / 107;
    pointer-events: none;
}

#howto .howto-prep.ft-awaken-ready::before {
    content: none;
}

#features>.ft-awaken-plane>canvas.ft-awaken-canvas {
    position: absolute;
    left: calc(50% - clamp(0px, calc((100vw - 680px) * .185), 190px));
    top: calc(91% - 160px + min(160px, 13vw));
    width: min(950px, 73%);
    aspect-ratio: 1230.84 / 933.24;
    transform: translate(-50%, -91%);
}

#features.ft-awaken-ready::before {
    content: none;
}

.ft-image-poll::after {
    position: absolute;
    right: max(20px, calc((100% - 1180px) / 2));
    bottom: 0;
    width: min(410px, 73vw);
    aspect-ratio: 483 / 107;
    pointer-events: none;
    content: "";
    background: var(--ft-ornament-rest, none) right bottom / contain no-repeat;
}

.ft-image-poll>canvas.ft-awaken-canvas {
    position: absolute;
    right: max(20px, calc((100% - 1180px) / 2));
    bottom: 0;
    width: min(410px, 73vw);
    aspect-ratio: 483 / 107;
    pointer-events: none;
}

.ft-image-poll.ft-awaken-ready::after {
    content: none;
}

canvas.ft-awaken-canvas {
    visibility: hidden;
    display: block;
    height: auto;
    pointer-events: none;
}


.ft-awaken-ready canvas.ft-awaken-canvas { visibility: visible; }
