/* Ordely onboarding mini-game · English/German tutorial */
:root{
    --oo-blue:#0084ff;
    --oo-green:#00c98b;
    --oo-ink:#0f172a;
    --oo-muted:#64748b;
    --oo-card:#ffffff;
    --oo-soft:#eef8ff;
    --oo-shadow:0 24px 70px rgba(15,23,42,.24);
}

.ordely-onboarding-page{
    min-height:100vh;
    margin:0;
    background:
        radial-gradient(circle at 15% 0%, rgba(0,132,255,.18), transparent 32%),
        radial-gradient(circle at 100% 18%, rgba(0,201,139,.16), transparent 34%),
        #f4f8fb;
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
    color:var(--oo-ink);
}
.ordely-onboarding-page-shell{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:18px;
}
.ordely-onboarding-page-link{
    position:fixed;
    z-index:5;
    top:calc(14px + env(safe-area-inset-top));
    left:14px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 13px;
    border-radius:999px;
    background:rgba(255,255,255,.82);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    box-shadow:0 10px 30px rgba(15,23,42,.12);
    color:var(--oo-ink);
    text-decoration:none;
    font-size:13px;
    font-weight:800;
}

.ordely-onboarding-launcher{
    position:fixed;
    right:14px;
    bottom:calc(82px + env(safe-area-inset-bottom));
    z-index:999;
    min-width:178px;
    max-width:calc(100vw - 28px);
    min-height:58px;
    border:0;
    border-radius:22px;
    padding:8px 11px;
    display:flex;
    align-items:center;
    gap:10px;
    cursor:pointer;
    color:#fff;
    background:linear-gradient(120deg, var(--oo-blue), var(--oo-green));
    box-shadow:0 18px 42px rgba(0,132,255,.28), 0 8px 22px rgba(0,201,139,.18);
    overflow:hidden;
    -webkit-tap-highlight-color:transparent;
    transform:translateZ(0);
}
.ordely-onboarding-launcher__shine{
    position:absolute;
    inset:-80% auto -80% -40%;
    width:45%;
    transform:rotate(18deg);
    background:linear-gradient(90deg, transparent, rgba(255,255,255,.36), transparent);
    animation:ooLauncherShine 3.2s ease-in-out infinite;
}
.ordely-onboarding-launcher__icon{
    position:relative;
    width:42px;
    height:42px;
    border-radius:16px;
    background:rgba(255,255,255,.2);
    display:grid;
    place-items:center;
    font-size:17px;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);
}
.ordely-onboarding-launcher__text{
    position:relative;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    line-height:1.1;
    text-align:left;
}
.ordely-onboarding-launcher__text b{font-size:13px;letter-spacing:.01em;}
.ordely-onboarding-launcher__text small{font-size:11px;opacity:.88;margin-top:4px;}
.ordely-onboarding-launcher:hover{transform:translateY(-2px);box-shadow:0 22px 50px rgba(0,132,255,.32), 0 10px 26px rgba(0,201,139,.22);}
.ordely-onboarding-launcher:active{transform:translateY(0) scale(.98);}

@keyframes ooLauncherShine{
    0%,58%{transform:translateX(0) rotate(18deg);opacity:0;}
    68%{opacity:1;}
    100%{transform:translateX(440%) rotate(18deg);opacity:0;}
}

.oo-overlay{
    position:fixed;
    inset:0;
    z-index:1000002;
    display:grid;
    place-items:center;
    padding:clamp(10px,2.2vw,24px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .28s ease, visibility .28s ease;
    font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
}
.oo-overlay.is-open{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}
.oo-backdrop{
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 20% 0%, rgba(0,132,255,.30), transparent 34%),
        radial-gradient(circle at 90% 20%, rgba(0,201,139,.24), transparent 38%),
        rgba(8,13,25,.78);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
}
.oo-shell{
    position:relative;
    width:min(1040px,100%);
    max-height:min(900px, calc(100vh - 22px));
    border-radius:34px;
    padding:16px;
    background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(242,248,252,.92));
    box-shadow:var(--oo-shadow);
    border:1px solid rgba(255,255,255,.66);
    overflow:hidden;
    transform:translateY(16px) scale(.98);
    transition:transform .32s ease;
}
.oo-overlay.is-open .oo-shell{transform:translateY(0) scale(1);}
.oo-shell::before{
    content:"";
    position:absolute;
    width:360px;
    height:360px;
    border-radius:999px;
    top:-220px;
    right:-120px;
    background:radial-gradient(circle, rgba(0,201,139,.20), transparent 70%);
    pointer-events:none;
}
.oo-topbar{
    position:relative;
    z-index:3;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:10px;
}
.oo-ghost{
    border:0;
    background:rgba(255,255,255,.74);
    color:#334155;
    border-radius:999px;
    padding:10px 13px;
    font-size:12px;
    font-weight:800;
    box-shadow:0 8px 22px rgba(15,23,42,.08);
    cursor:pointer;
}
.oo-ghost:active{transform:scale(.98);}
.oo-score{
    min-width:112px;
    display:inline-flex;
    align-items:baseline;
    justify-content:center;
    gap:2px;
    border-radius:999px;
    padding:9px 12px;
    background:#0f172a;
    color:#fff;
    font-weight:900;
    letter-spacing:.01em;
    box-shadow:0 12px 30px rgba(15,23,42,.20);
}
.oo-score small{font-size:11px;font-weight:700;opacity:.72;margin-left:4px;}
.oo-progress{
    position:relative;
    height:9px;
    border-radius:999px;
    background:rgba(15,23,42,.08);
    overflow:hidden;
    margin-bottom:14px;
}
.oo-progress span{
    display:block;
    width:0%;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    transition:width .45s cubic-bezier(.2,.7,.2,1);
    box-shadow:0 0 24px rgba(0,132,255,.28);
}
.oo-stage{
    position:relative;
    z-index:2;
    display:grid;
    grid-template-columns:minmax(280px, 420px) minmax(260px, 1fr);
    gap:18px;
    align-items:stretch;
}
.oo-phone{
    position:relative;
    width:100%;
    max-height:calc(100vh - 140px);
    aspect-ratio:720/1588;
    min-height:500px;
    border-radius:36px;
    overflow:hidden;
    background:#0b1220;
    box-shadow:0 24px 65px rgba(15,23,42,.28), inset 0 0 0 1px rgba(255,255,255,.08);
    isolation:isolate;
}
.oo-phone::before{
    content:"";
    position:absolute;
    z-index:6;
    left:50%;
    top:10px;
    width:96px;
    height:18px;
    transform:translateX(-50%);
    border-radius:999px;
    background:rgba(8,13,25,.88);
    box-shadow:0 1px 0 rgba(255,255,255,.12);
    pointer-events:none;
}
.oo-video{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    background:#eef6fb;
}
.oo-video-dim{
    position:absolute;
    inset:0;
    z-index:2;
    opacity:0;
    background:
        linear-gradient(180deg, rgba(6,10,18,.20) 0%, rgba(6,10,18,.56) 36%, rgba(6,10,18,.94) 100%),
        radial-gradient(circle at 25% 18%, rgba(0,132,255,.32), transparent 42%);
    transition:opacity .7s ease;
    pointer-events:none;
}
.oo-shell.is-reading .oo-video-dim,
.oo-shell.is-complete .oo-video-dim{opacity:.96;}
.oo-play-gate{
    position:absolute;
    z-index:5;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
    border:0;
    border-radius:26px;
    padding:18px 20px;
    min-width:190px;
    color:#fff;
    background:rgba(15,23,42,.78);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    box-shadow:0 18px 46px rgba(0,0,0,.28);
    cursor:pointer;
}
.oo-play-gate[hidden]{display:none;}
.oo-play-gate span{
    width:50px;
    height:50px;
    border-radius:18px;
    display:grid;
    place-items:center;
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    box-shadow:0 12px 30px rgba(0,132,255,.32);
}
.oo-play-gate b{font-size:14px;line-height:1.2;}
.oo-caption{
    position:absolute;
    z-index:4;
    left:14px;
    right:14px;
    bottom:14px;
    border-radius:28px;
    padding:18px;
    color:#fff;
    background:
        linear-gradient(180deg, rgba(15,23,42,.78), rgba(15,23,42,.92)),
        linear-gradient(120deg, rgba(0,132,255,.22), rgba(0,201,139,.18));
    border:1px solid rgba(255,255,255,.22);
    box-shadow:0 24px 70px rgba(0,0,0,.34);
    backdrop-filter:blur(20px);
    -webkit-backdrop-filter:blur(20px);
    opacity:0;
    transform:translateY(28px) scale(.96);
    transition:opacity .72s ease, transform .72s cubic-bezier(.18,.88,.28,1);
    pointer-events:none;
}
.oo-shell.is-reading .oo-caption,
.oo-shell.is-complete .oo-caption{
    opacity:1;
    transform:translateY(0) scale(1);
    pointer-events:auto;
}
.oo-caption__eyebrow{
    display:inline-flex;
    align-items:center;
    gap:7px;
    width:fit-content;
    max-width:100%;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.16);
    font-size:11px;
    line-height:1;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
    color:rgba(255,255,255,.88);
}
.oo-caption__eyebrow::before{
    content:"";
    width:7px;
    height:7px;
    border-radius:50%;
    background:var(--oo-green);
    box-shadow:0 0 0 4px rgba(0,201,139,.18);
}
.oo-caption__title{
    margin:12px 0 9px;
    color:#fff;
    font-size:clamp(23px, 4.8vw, 32px);
    line-height:.98;
    letter-spacing:-.035em;
    font-weight:950;
    text-shadow:0 6px 22px rgba(0,0,0,.22);
}
.oo-caption__fallback{
    margin:10px 0 0;
    padding:9px 11px;
    border-radius:14px;
    background:rgba(255,255,255,.12);
    color:rgba(255,255,255,.86);
    font-size:12px;
    line-height:1.35;
    font-weight:800;
}
.oo-caption__fallback[hidden]{display:none;}
.oo-caption__text{
    min-height:138px;
    margin:0;
    color:rgba(255,255,255,.92);
    font-size:14px;
    line-height:1.58;
    font-weight:650;
    letter-spacing:-.005em;
}
.oo-caption__text::after{
    content:"";
    display:inline-block;
    width:7px;
    height:1.15em;
    margin-left:3px;
    vertical-align:-.18em;
    border-radius:999px;
    background:rgba(255,255,255,.80);
    animation:ooCaret .85s steps(2,end) infinite;
}
.oo-shell.is-action-ready .oo-caption__text::after,
.oo-shell.is-complete .oo-caption__text::after{display:none;}
.oo-reward{
    display:inline-flex;
    align-items:center;
    margin-top:13px;
    padding:8px 11px;
    border-radius:999px;
    background:rgba(0,201,139,.18);
    color:#ccfff0;
    font-size:12px;
    font-weight:900;
    opacity:0;
    transform:translateY(8px);
    transition:opacity .32s ease, transform .32s ease;
}
.oo-shell.is-action-ready .oo-reward{opacity:1;transform:translateY(0);}
.oo-text-skip{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    margin-top:12px;
    padding:8px 14px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:999px;
    color:#fff;
    background:rgba(255,255,255,.14);
    box-shadow:0 10px 26px rgba(0,0,0,.18);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    font-size:12px;
    line-height:1;
    font-weight:950;
    letter-spacing:.03em;
    text-transform:uppercase;
    cursor:pointer;
}
.oo-text-skip[hidden]{display:none;}
.oo-text-skip:hover{background:rgba(255,255,255,.20);}
.oo-text-skip:active{transform:scale(.97);}
.oo-shell.is-intro .oo-reward{display:none;}
.oo-shell.is-reading .oo-caption{animation:ooCaptionGlow 1.15s ease both;}
.oo-primary{
    width:100%;
    margin-top:12px;
    min-height:52px;
    border:0;
    border-radius:18px;
    padding:12px 16px;
    color:#fff;
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    box-shadow:0 16px 36px rgba(0,132,255,.28);
    font-size:15px;
    line-height:1.15;
    font-weight:950;
    letter-spacing:-.01em;
    cursor:pointer;
    opacity:0;
    transform:translateY(10px);
    transition:opacity .35s ease, transform .35s ease, box-shadow .18s ease;
    pointer-events:none;
}
.oo-primary:disabled{cursor:default;}
.oo-shell.is-action-ready .oo-primary{
    opacity:1;
    transform:translateY(0);
    pointer-events:auto;
}
.oo-primary:not(:disabled):active{transform:scale(.985);}
.oo-primary:not(:disabled):hover{box-shadow:0 18px 44px rgba(0,132,255,.36);}

.oo-panel{
    border-radius:30px;
    padding:24px;
    background:rgba(255,255,255,.72);
    border:1px solid rgba(255,255,255,.70);
    box-shadow:0 18px 48px rgba(15,23,42,.10);
    backdrop-filter:blur(16px);
    -webkit-backdrop-filter:blur(16px);
    display:flex;
    flex-direction:column;
    min-height:0;
}
.oo-panel__badge{
    width:fit-content;
    padding:8px 11px;
    border-radius:999px;
    background:linear-gradient(90deg, rgba(0,132,255,.12), rgba(0,201,139,.12));
    color:#0564c4;
    font-size:12px;
    font-weight:950;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.oo-panel h3{
    margin:14px 0 10px;
    color:var(--oo-ink);
    font-size:clamp(24px,3.2vw,40px);
    line-height:1.02;
    letter-spacing:-.04em;
    font-weight:950;
}
.oo-panel p{
    margin:0;
    color:#526078;
    font-size:15px;
    line-height:1.55;
    font-weight:650;
}
.oo-mini-map{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:8px;
    margin:24px 0;
}
.oo-mini-map button{
    position:relative;
    aspect-ratio:1;
    border:0;
    border-radius:15px;
    background:#eef4fb;
    color:#7c8aa0;
    font-size:13px;
    font-weight:950;
    cursor:pointer;
    box-shadow:inset 0 0 0 1px rgba(15,23,42,.05);
    transition:transform .15s ease, background .22s ease, color .22s ease, box-shadow .22s ease;
}
.oo-mini-map button.is-done{
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    color:#fff;
    box-shadow:0 10px 22px rgba(0,132,255,.22);
}
.oo-mini-map button.is-current{
    transform:translateY(-2px);
    box-shadow:0 12px 26px rgba(15,23,42,.16), inset 0 0 0 2px #fff;
}
.oo-mini-map button:active{transform:scale(.96);}
.oo-panel__link{
    margin-top:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    border-radius:16px;
    color:#0f172a;
    text-decoration:none;
    background:#fff;
    font-size:14px;
    font-weight:900;
    box-shadow:0 10px 24px rgba(15,23,42,.08);
}
.oo-panel__link:hover{color:#0084ff;}

.oo-shell.is-complete .oo-caption__title{
    font-size:clamp(27px,5.2vw,38px);
}
.oo-shell.is-complete .oo-reward{display:none;}

html.oo-lock,
html.oo-lock body{
    overflow:hidden !important;
    overscroll-behavior:none;
}

@keyframes ooCaret{
    0%,45%{opacity:1;}
    46%,100%{opacity:0;}
}
@keyframes ooCaptionGlow{
    0%{box-shadow:0 24px 70px rgba(0,0,0,.26), 0 0 0 rgba(0,132,255,0);}
    58%{box-shadow:0 26px 80px rgba(0,0,0,.36), 0 0 42px rgba(0,132,255,.24);}
    100%{box-shadow:0 24px 70px rgba(0,0,0,.34), 0 0 18px rgba(0,201,139,.12);}
}

@media (max-width:820px){
    .oo-overlay{padding:0;}
    .oo-shell{
        width:100%;
        height:100%;
        max-height:none;
        border-radius:0;
        padding:10px;
    }
    .oo-stage{
        height:calc(100% - 62px);
        display:block;
    }
    .oo-panel{display:none;}
    .oo-phone{
        height:100%;
        width:min(100%, 460px);
        max-height:none;
        min-height:0;
        margin:0 auto;
        border-radius:28px;
    }
    .oo-caption{
        left:10px;
        right:10px;
        bottom:10px;
        border-radius:24px;
        padding:16px;
    }
    .oo-caption__text{
        min-height:154px;
        font-size:13.5px;
    }
    .oo-topbar{margin-bottom:8px;}
    .oo-progress{margin-bottom:8px;}
    .oo-ghost{padding:9px 11px;font-size:11px;}
    .oo-score{min-width:95px;padding:8px 10px;}
    .ordely-onboarding-launcher{
        left:12px;
        right:12px;
        bottom:calc(76px + env(safe-area-inset-bottom));
        width:auto;
        justify-content:center;
    }
}

@media (max-width:390px){
    .oo-caption__title{font-size:22px;}
    .oo-caption__text{font-size:13px;line-height:1.45;min-height:132px;}
    .oo-primary{min-height:50px;font-size:14px;}
    .oo-phone::before{width:82px;height:16px;}
}

@media (prefers-reduced-motion:reduce){
    .ordely-onboarding-launcher__shine,
    .oo-caption,
    .oo-caption__text::after{animation:none !important;}
    .oo-overlay,
    .oo-shell,
    .oo-progress span,
    .oo-caption,
    .oo-primary,
    .oo-reward,
    .oo-text-skip{transition:none !important;}
}

/* Multilingual promo-code gate */
.ordely-onboarding-root[dir="rtl"],
.oo-shell[dir="rtl"]{
    direction:rtl;
}
.oo-shell[dir="rtl"] .oo-panel,
.oo-shell[dir="rtl"] .oo-caption,
.oo-shell[dir="rtl"] .ordely-onboarding-launcher__text{
    text-align:right;
}
.oo-shell[dir="rtl"] .oo-caption__eyebrow::before{
    margin-left:0;
}
.oo-gate[hidden]{display:none;}
.oo-gate{
    margin-top:10px;
}
.oo-shell.is-gate .oo-caption__text,
.oo-shell.is-gate .oo-text-skip,
.oo-shell.is-gate .oo-reward,
.oo-shell.is-gate .oo-primary{
    display:none !important;
}
.oo-gate__copy{
    margin:0 0 14px;
    color:rgba(255,255,255,.90);
    font-size:14px;
    line-height:1.58;
    font-weight:700;
}
.oo-language-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
}
.oo-language-card{
    position:relative;
    width:100%;
    min-height:62px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:19px;
    padding:12px 14px;
    color:#fff;
    background:linear-gradient(135deg, rgba(255,255,255,.17), rgba(255,255,255,.07));
    box-shadow:0 12px 30px rgba(0,0,0,.18);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    cursor:pointer;
    text-align:left;
    overflow:hidden;
    transition:transform .18s ease, border-color .18s ease, background .18s ease;
}
.oo-shell[dir="rtl"] .oo-language-card{text-align:right;}
.oo-language-card::after{
    content:"→";
    flex:0 0 auto;
    width:34px;
    height:34px;
    border-radius:14px;
    display:grid;
    place-items:center;
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    font-weight:950;
    box-shadow:0 10px 24px rgba(0,132,255,.24);
}
.oo-shell[dir="rtl"] .oo-language-card::after{
    content:"←";
}
.oo-language-card span{
    display:block;
    font-size:16px;
    line-height:1.15;
    font-weight:950;
    letter-spacing:-.01em;
}
.oo-language-card small{
    display:block;
    margin-top:4px;
    color:rgba(255,255,255,.70);
    font-size:11px;
    line-height:1.1;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.oo-language-card:hover,
.oo-language-card.is-selected{
    transform:translateY(-1px);
    border-color:rgba(255,255,255,.46);
    background:linear-gradient(135deg, rgba(0,132,255,.34), rgba(0,201,139,.20));
}
.oo-language-card:active{transform:scale(.985);}
.oo-lead-form[hidden]{display:none;}
.oo-lead-form{
    display:flex;
    flex-direction:column;
    gap:11px;
}
.oo-field{
    display:flex;
    flex-direction:column;
    gap:7px;
    margin:0;
}
.oo-field span{
    color:rgba(255,255,255,.82);
    font-size:12px;
    line-height:1;
    font-weight:950;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.oo-field input{
    width:100%;
    min-height:50px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:17px;
    padding:12px 14px;
    color:#0f172a;
    background:rgba(255,255,255,.94);
    box-shadow:0 14px 34px rgba(0,0,0,.16);
    font-size:15px;
    line-height:1.2;
    font-weight:800;
    outline:none;
}
.oo-field input:focus{
    border-color:rgba(0,201,139,.80);
    box-shadow:0 0 0 4px rgba(0,201,139,.16), 0 14px 34px rgba(0,0,0,.16);
}
.oo-form-error[hidden]{display:none;}
.oo-form-error{
    margin:0;
    padding:10px 12px;
    border-radius:15px;
    color:#fff;
    background:rgba(239,68,68,.82);
    font-size:13px;
    line-height:1.4;
    font-weight:850;
}
.oo-privacy{
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:12px;
    line-height:1.48;
    font-weight:650;
}
.oo-form-submit{
    width:100%;
    min-height:52px;
    border:0;
    border-radius:18px;
    padding:12px 16px;
    color:#fff;
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    box-shadow:0 16px 36px rgba(0,132,255,.28);
    font-size:15px;
    line-height:1.15;
    font-weight:950;
    letter-spacing:-.01em;
    cursor:pointer;
    transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}
.oo-form-submit:hover{box-shadow:0 18px 44px rgba(0,132,255,.36);}
.oo-form-submit:active{transform:scale(.985);}
.oo-form-submit:disabled{opacity:.72;cursor:wait;}
.oo-shell.is-gate .oo-caption{
    animation:ooCaptionGlow 1.15s ease both;
}
.oo-shell.is-gate .oo-video-dim{opacity:.96;}
.oo-shell[dir="rtl"] .oo-caption__text,
.oo-shell[dir="rtl"] .oo-gate__copy,
.oo-shell[dir="rtl"] .oo-panel p{
    text-align:right;
}
.oo-shell[dir="rtl"] .oo-mini-map{
    direction:ltr;
}
@media (min-width:520px){
    .oo-language-grid{grid-template-columns:1fr;}
}
@media (max-width:767px){
    .oo-gate__copy{font-size:13px;}
    .oo-language-card{min-height:58px;}
    .oo-field input{min-height:48px;}
}

/* ===== Onboarding language + lead capture gates ===== */
.ordely-onboarding-root[dir="rtl"],
.oo-shell[dir="rtl"]{
    direction:rtl;
}
.oo-shell[dir="rtl"] .oo-caption,
.oo-shell[dir="rtl"] .oo-panel,
.oo-shell[dir="rtl"] .oo-caption__text,
.oo-shell[dir="rtl"] .oo-caption__title,
.oo-shell[dir="rtl"] .oo-caption__fallback,
.oo-shell[dir="rtl"] .oo-language-gate,
.oo-shell[dir="rtl"] .oo-lead-form,
.oo-shell[dir="rtl"] .oo-duplicate-gate,
.oo-shell[dir="rtl"] .oo-promo-result{
    text-align:right;
}
.oo-shell[dir="rtl"] .oo-caption__eyebrow,
.oo-shell[dir="rtl"] .oo-reward{
    direction:rtl;
}
.oo-shell[dir="rtl"] .oo-caption__text::after{
    margin-left:0;
    margin-right:3px;
}
.oo-shell.is-gate .oo-caption__text,
.oo-shell.is-lead .oo-caption__text{
    min-height:0;
}
.oo-shell.is-gate .oo-caption__text::after,
.oo-shell.is-lead .oo-caption__text::after{
    display:none;
}
.oo-language-gate,
.oo-lead-form{
    margin-top:12px;
}
.oo-language-gate[hidden],
.oo-lead-form[hidden],
.oo-duplicate-gate[hidden],
.oo-promo-result[hidden]{
    display:none!important;
}
.oo-language-gate h3,
.oo-lead-form h3{
    margin:0 0 8px;
    color:#fff;
    font-size:20px;
    line-height:1.08;
    letter-spacing:-.025em;
    font-weight:950;
}
.oo-language-gate p,
.oo-lead-form p{
    margin:0 0 14px;
    color:rgba(255,255,255,.82);
    font-size:13px;
    line-height:1.55;
    font-weight:700;
}
.oo-language-buttons{
    display:grid;
    grid-template-columns:1fr;
    gap:9px;
}
.oo-language-button{
    position:relative;
    overflow:hidden;
    width:100%;
    min-height:54px;
    border:1px solid rgba(255,255,255,.24);
    border-radius:18px;
    padding:10px 13px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    color:#fff;
    background:linear-gradient(120deg, rgba(255,255,255,.18), rgba(255,255,255,.08));
    box-shadow:0 12px 30px rgba(0,0,0,.18);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
    cursor:pointer;
    transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.oo-language-button::after{
    content:"→";
    width:30px;
    height:30px;
    flex:0 0 30px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:#fff;
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    box-shadow:0 8px 18px rgba(0,132,255,.24);
}
.oo-language-button[dir="rtl"]::after{
    content:"←";
}
.oo-language-button span{
    font-size:15px;
    font-weight:950;
    letter-spacing:-.01em;
}
.oo-language-button small{
    font-size:11px;
    color:rgba(255,255,255,.70);
    font-weight:900;
}
.oo-language-button:hover{
    transform:translateY(-2px);
    border-color:rgba(255,255,255,.42);
    background:linear-gradient(120deg, rgba(255,255,255,.24), rgba(255,255,255,.10));
    box-shadow:0 16px 38px rgba(0,0,0,.22);
}
.oo-language-button:active{transform:scale(.985);}
.oo-lead-form label{
    display:block;
    margin:0 0 10px;
}
.oo-lead-form label span{
    display:block;
    margin:0 0 6px;
    color:rgba(255,255,255,.82);
    font-size:11px;
    line-height:1;
    text-transform:uppercase;
    letter-spacing:.07em;
    font-weight:950;
}
.oo-lead-form input{
    width:100%;
    height:48px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:16px;
    padding:0 14px;
    color:#fff;
    background:rgba(255,255,255,.13);
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.04), 0 10px 22px rgba(0,0,0,.12);
    outline:none;
    font-size:15px;
    font-weight:850;
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
}
.oo-lead-form input::placeholder{color:rgba(255,255,255,.52);}
.oo-lead-form input:focus{
    border-color:rgba(0,201,139,.72);
    box-shadow:0 0 0 4px rgba(0,201,139,.14), 0 10px 22px rgba(0,0,0,.12);
}
.oo-lead-submit{
    width:100%;
    min-height:52px;
    border:0;
    border-radius:18px;
    margin-top:4px;
    padding:12px 16px;
    color:#fff;
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    box-shadow:0 16px 36px rgba(0,132,255,.28);
    font-size:15px;
    line-height:1.15;
    font-weight:950;
    letter-spacing:-.01em;
    cursor:pointer;
}
.oo-lead-submit:disabled{
    cursor:default;
    opacity:.72;
}
.oo-lead-submit:not(:disabled):active{transform:scale(.985);}
.oo-form-error{
    margin-top:10px;
    padding:10px 12px;
    border-radius:14px;
    color:#fff2f2;
    background:rgba(239,68,68,.22);
    border:1px solid rgba(248,113,113,.28);
    font-size:12px;
    line-height:1.45;
    font-weight:850;
}
.oo-form-error[hidden]{display:none!important;}
.oo-duplicate-gate[hidden]{display:none!important;}
.oo-duplicate-gate{
    margin-top:12px;
    padding:16px;
    border-radius:22px;
    background:
        linear-gradient(140deg, rgba(255,255,255,.18), rgba(255,255,255,.08)),
        radial-gradient(circle at 18% 0%, rgba(0,201,139,.22), transparent 42%);
    border:1px solid rgba(255,255,255,.24);
    box-shadow:0 18px 44px rgba(0,0,0,.20);
    text-align:left;
}
.oo-duplicate-gate__icon{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:16px;
    margin-bottom:12px;
    color:#fff;
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    box-shadow:0 12px 28px rgba(0,132,255,.28);
    font-weight:1000;
}
.oo-duplicate-gate h3{
    margin:0 0 9px;
    color:#fff;
    font-size:20px;
    line-height:1.08;
    letter-spacing:-.025em;
    font-weight:950;
}
.oo-duplicate-gate p{
    margin:0 0 14px;
    color:rgba(255,255,255,.82);
    font-size:13px;
    line-height:1.55;
    font-weight:700;
}
.oo-duplicate-continue{
    width:100%;
    min-height:54px;
    border:0;
    border-radius:18px;
    padding:12px 16px;
    color:#fff;
    background:linear-gradient(90deg, var(--oo-blue), var(--oo-green));
    box-shadow:0 16px 36px rgba(0,132,255,.28);
    font-size:14px;
    line-height:1.18;
    font-weight:950;
    letter-spacing:-.01em;
    cursor:pointer;
    transition:transform .18s ease, box-shadow .18s ease;
}
.oo-duplicate-continue:hover{box-shadow:0 18px 44px rgba(0,132,255,.36);}
.oo-duplicate-continue:active{transform:scale(.985);}
.oo-shell[dir="rtl"] .oo-duplicate-gate{text-align:right;}
.oo-shell[dir="rtl"] .oo-duplicate-gate__icon{margin-left:auto;}
@media (max-width:390px){
    .oo-duplicate-gate{padding:14px 12px 12px;}
    .oo-duplicate-gate h3{font-size:18px;}
    .oo-duplicate-gate p{font-size:12.5px;line-height:1.45;}
    .oo-duplicate-continue{min-height:50px;font-size:13px;}
}
.oo-promo-result{
    margin-top:14px;
    padding:14px;
    border-radius:20px;
    background:linear-gradient(120deg, rgba(0,132,255,.24), rgba(0,201,139,.20));
    border:1px solid rgba(255,255,255,.24);
    box-shadow:0 16px 38px rgba(0,0,0,.18);
}
.oo-promo-result span{
    display:block;
    margin:0 0 8px;
    color:rgba(255,255,255,.76);
    font-size:11px;
    line-height:1;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:950;
}
.oo-promo-result strong{
    display:block;
    color:#fff;
    font-size:clamp(22px,5vw,34px);
    line-height:1;
    letter-spacing:.08em;
    font-weight:1000;
    word-break:break-word;
    text-shadow:0 8px 24px rgba(0,0,0,.25);
}
.oo-mini-map button:disabled{
    opacity:.42;
    cursor:not-allowed;
}
.oo-shell.is-gate .oo-primary,
.oo-shell.is-lead .oo-primary{
    display:none!important;
}

@media (min-width:520px){
    .oo-language-buttons{
        grid-template-columns:repeat(3, minmax(0,1fr));
    }
    .oo-language-button{
        min-height:78px;
        flex-direction:column;
        justify-content:center;
        text-align:center;
    }
    .oo-language-button::after{
        position:absolute;
        right:10px;
        bottom:10px;
        width:26px;
        height:26px;
        font-size:12px;
    }
    .oo-language-button[dir="rtl"]::after{
        right:auto;
        left:10px;
    }
}

@media (max-width:390px){
    .oo-language-gate h3,
    .oo-lead-form h3{font-size:18px;}
    .oo-language-gate p,
    .oo-lead-form p{font-size:12.5px;line-height:1.45;}
    .oo-lead-form input{height:44px;font-size:14px;}
    .oo-lead-submit{min-height:48px;font-size:14px;}
    .oo-promo-result strong{font-size:22px;}
}
.oo-lead-form .oo-legal-note{
    margin:-4px 0 14px;
    padding:10px 12px;
    border-radius:14px;
    color:rgba(255,255,255,.76);
    background:rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.16);
    font-size:11.5px;
    line-height:1.5;
    font-weight:700;
}
