/* #226: signed-out landing = timp-site v3.5 (Roman-1900/timp-site, index.html) scoped under #landHeader.
   Section 1 is the original stylesheet with lp- prefixed names; section 2 adapts it to the app. */
#landHeader a{color:inherit;text-decoration:none}
#landHeader a:hover{opacity:.9}
#landHeader a:focus-visible,#landHeader summary:focus-visible,#landHeader input:focus-visible{outline:3px solid var(--text);outline-offset:3px}
#landHeader .lp-dark a:focus-visible,#landHeader .lp-dark input:focus-visible,#landHeader #lp-download a:focus-visible,#landHeader #lp-download input:focus-visible{outline-color:#45D62C}
#landHeader input::placeholder{color:#6A756D}
#landHeader .lp-wrap{max-width:1200px;margin:0 auto;padding-left:24px;padding-right:24px;box-sizing:border-box}
#landHeader .lp-h{font-family:Montserrat,sans-serif}
#landHeader .lp-morph{position:absolute;animation:lp-morph 14s ease-in-out infinite alternate}
@keyframes lp-morph{0%{border-radius:60% 40% 30% 70%/60% 30% 70% 40%;transform:rotate(0deg) scale(1)}50%{border-radius:30% 60% 70% 40%/50% 60% 30% 60%;transform:rotate(16deg) scale(1.07)}100%{border-radius:50% 50% 40% 60%/30% 70% 40% 60%;transform:rotate(-12deg) scale(.95)}}
#landHeader .lp-sw{position:absolute;transform:skewX(-20deg);animation:lp-sw 9s ease-in-out infinite alternate}
@keyframes lp-sw{from{transform:translate(0,0) skewX(-20deg)}to{transform:translate(34px,-22px) skewX(-20deg)}}
#landHeader .lp-fl1{animation:lp-fl 5s ease-in-out infinite}
#landHeader .lp-fl2{animation:lp-fl 6.5s ease-in-out infinite reverse}
@keyframes lp-fl{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
#landHeader .lp-in{animation:lp-inR .9s cubic-bezier(.2,.7,.2,1) both}
#landHeader .lp-i2{animation-delay:.12s}
#landHeader .lp-i3{animation-delay:.24s}
#landHeader .lp-i4{animation-delay:.36s}
#landHeader .lp-i5{animation-delay:.48s}
@keyframes lp-inR{from{opacity:0;transform:translateY(28px)}}
@supports (animation-timeline:view()){#landHeader .lp-sr{animation:lp-reveal linear both;animation-timeline:view();animation-range:entry 0% entry 40%}}
@keyframes lp-reveal{from{opacity:0;transform:translateY(48px) scale(.96)}}
#landHeader .lp-btn{position:relative;overflow:hidden;transition:transform .2s ease}
#landHeader .lp-btn:hover{transform:translateY(-3px) scale(1.02)}
#landHeader .lp-btn:after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg);animation:lp-sh 3.4s ease-in-out infinite}
@keyframes lp-sh{0%{left:-60%}60%,100%{left:130%}}
#landHeader .lp-tile{transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease}
#landHeader .lp-tile:hover{transform:translateY(-8px);box-shadow:0 22px 44px var(--hsh)}
#landHeader .lp-gword{background:linear-gradient(90deg,var(--g1),var(--g2),var(--g3),var(--g1));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:lp-gshift 8s linear infinite}
@keyframes lp-gshift{to{background-position:300% 0}}
#landHeader .lp-draw{stroke-dasharray:340;stroke-dashoffset:340;animation:lp-draw 1.6s ease .8s forwards}
@keyframes lp-draw{to{stroke-dashoffset:0}}
#landHeader .lp-mq{overflow:hidden;background:#45D62C;color:#0B120C;padding:20px 0;border-top:3px solid #0B120C;border-bottom:3px solid #0B120C}
#landHeader .lp-mqt{display:flex;width:max-content;animation:lp-mq 38s linear infinite}
@keyframes lp-mq{to{transform:translateX(-50%)}}
#landHeader .lp-mqg{display:flex;align-items:center;gap:28px;padding-right:28px;flex-shrink:0;font-family:Montserrat,sans-serif;font-weight:800;font-size:26px;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}
#landHeader .lp-sep{display:inline-block;width:14px;height:14px;background:#0B120C;transform:rotate(45deg);border-radius:3px;flex-shrink:0}
#landHeader .lp-msg{opacity:0;animation:lp-msg 12s ease infinite both}
@keyframes lp-msg{0%{opacity:0;transform:translateY(14px) scale(.97)}6%,84%{opacity:1;transform:none}92%,100%{opacity:0;transform:translateY(-6px)}}
#landHeader .lp-td{width:8px;height:8px;border-radius:50%;background:#1FAE12;animation:lp-td 1.2s ease-in-out infinite}
@keyframes lp-td{0%,100%{transform:translateY(0);opacity:.4}50%{transform:translateY(-6px);opacity:1}}
#landHeader .lp-tk{stroke-dasharray:26;stroke-dashoffset:26;animation:lp-tk 5s ease infinite}
@keyframes lp-tk{0%{stroke-dashoffset:26}30%,85%{stroke-dashoffset:0}100%{stroke-dashoffset:26}}
#landHeader .lp-wv{width:6px;border-radius:3px;background:#45D62C;transform-origin:center;animation:lp-wv 1s ease-in-out infinite}
@keyframes lp-wv{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
#landHeader .lp-bar{transform-origin:bottom;animation:lp-bar 3.6s ease-in-out infinite alternate}
@keyframes lp-bar{from{transform:scaleY(.18)}to{transform:scaleY(1)}}
#landHeader .lp-scan{position:absolute;left:0;right:0;top:0;height:4px;background:#45D62C;box-shadow:0 0 18px 4px rgba(69,214,44,.8);animation:lp-scan 2.6s ease-in-out infinite alternate}
@keyframes lp-scan{to{top:calc(100% - 4px)}}
#landHeader .lp-nudge{animation:lp-nudge 1.4s ease-in-out infinite}
@keyframes lp-nudge{0%,100%{transform:translateX(0)}50%{transform:translateX(10px)}}
#landHeader .lp-pulse{animation:lp-pulse 2s ease-in-out infinite}
@keyframes lp-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
#landHeader .lp-pdot{width:9px;height:9px;border-radius:50%;background:#45D62C;animation:lp-pd 2s infinite}
@keyframes lp-pd{0%{box-shadow:0 0 0 0 rgba(69,214,44,.7)}70%,100%{box-shadow:0 0 0 12px rgba(69,214,44,0)}}
#landHeader .lp-av{animation:lp-avf 3.4s ease-in-out infinite}
@keyframes lp-avf{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
#landHeader .lp-prog{height:8px;border-radius:999px;background:var(--trk);overflow:hidden}
#landHeader .lp-pfill{height:8px;border-radius:999px;background:#45D62C;animation:lp-pfill 5s ease-in-out infinite}
@keyframes lp-pfill{0%{width:8%}60%,100%{width:100%}}
#landHeader summary{list-style:none;cursor:pointer}
#landHeader summary::-webkit-details-marker{display:none}
#landHeader .lp-plus{transition:transform .3s ease}
#landHeader details[open] .lp-plus{transform:rotate(45deg)}
#landHeader.lp{--bg:linear-gradient(180deg,#F7FCF6 0%,#EAF7E6 45%,#F8FAEE 100%);--text:#0B120C;--muted:#3E4A41;--surf:rgba(255,255,255,.84);--surfo:#FFFFFF;--surf2:rgba(240,243,241,.88);--sec:rgba(255,255,255,.42);--ink:#0B120C;--dk:#0B120C;--chipbg:#E4FAD9;--chipfg:#187F0E;--hl:#23A114;--cta:#0B120C;--ctac:#FFFFFF;--trk:rgba(11,18,12,.12);--hsh:rgba(11,18,12,.16);--bar4:#0B120C;--phone:#0B120C;--line2:#E5EAE6;--blobo:1;--dotc:rgba(11,18,12,.09);--stripo:.2;--tg:#0B120C;--tgi:#C4CCC6;--g1:#12780A;--g2:#27A614;--g3:#45D62C;--tiny:#8A968D;--on:#187F0E}
#landHeader.lp:has(#lp-lt:checked){--bg:#0A0C0B;--text:#FFFFFF;--muted:#A3AEA6;--surf:rgba(21,24,22,.86);--surfo:#151816;--surf2:rgba(32,38,34,.9);--sec:rgba(255,255,255,.03);--ink:#3A443D;--dk:#18201A;--chipbg:rgba(69,214,44,.16);--chipfg:#9CF07A;--hl:#45D62C;--cta:#45D62C;--ctac:#0B120C;--trk:rgba(255,255,255,.16);--hsh:rgba(0,0,0,.55);--bar4:#E8EFE9;--phone:#2B342D;--line2:#2A312C;--blobo:.3;--dotc:rgba(255,255,255,.06);--stripo:.1;--tg:rgba(255,255,255,.14);--tgi:#A3AEA6;--g1:#1FAE12;--g2:#45D62C;--g3:#9CF07A;--tiny:#6B766E;--on:#9CF07A}
#landHeader.lp{background:var(--bg);color:var(--text);transition:background .35s ease,color .35s ease}
#landHeader.lp>*{position:relative;z-index:1}
#landHeader.lp>.lp-lbg{position:absolute;z-index:0}
#landHeader.lp>.lp-lvh{position:absolute}
#landHeader .lp-lbg{left:0;top:0;right:0;bottom:0;overflow:hidden;pointer-events:none}
#landHeader .lp-lbg i{position:absolute;display:block;border-radius:50%;filter:blur(70px);opacity:var(--blobo);will-change:transform}
#landHeader .lp-lbg .lp-b1{width:560px;height:560px;left:-160px;top:-120px;background:rgba(69,214,44,.42);animation:lp-ld1 20s ease-in-out infinite alternate}
#landHeader .lp-lbg .lp-b2{width:480px;height:480px;right:-140px;top:7%;background:rgba(255,216,77,.55);animation:lp-ld2 24s ease-in-out infinite alternate}
#landHeader .lp-lbg .lp-b3{width:520px;height:520px;left:30%;top:22%;background:rgba(120,230,190,.5);animation:lp-ld3 26s ease-in-out infinite alternate}
#landHeader .lp-lbg .lp-b4{width:480px;height:480px;right:-120px;top:38%;background:rgba(150,240,110,.5);animation:lp-ld1 22s ease-in-out infinite alternate-reverse}
#landHeader .lp-lbg .lp-b5{width:440px;height:440px;left:-140px;top:52%;background:rgba(255,216,77,.42);animation:lp-ld2 28s ease-in-out infinite alternate}
#landHeader .lp-lbg .lp-b6{width:500px;height:500px;left:40%;top:70%;background:rgba(120,230,190,.45);animation:lp-ld3 24s ease-in-out infinite alternate-reverse}
@keyframes lp-ld1{from{transform:translate(0,0) scale(1)}to{transform:translate(180px,120px) scale(1.25)}}
@keyframes lp-ld2{from{transform:translate(0,0) scale(1)}to{transform:translate(-170px,140px) scale(1.18)}}
@keyframes lp-ld3{from{transform:translate(0,0) scale(1)}to{transform:translate(120px,-150px) scale(1.3)}}
#landHeader .lp-lbg .lp-dots{position:absolute;left:0;top:0;right:0;bottom:0;background-image:radial-gradient(var(--dotc) 1.3px,transparent 1.6px);background-size:28px 28px;animation:lp-ldots 40s linear infinite}
@keyframes lp-ldots{to{background-position:28px 56px}}
#landHeader .lp-lbg .lp-st{position:absolute;display:block;opacity:var(--stripo);border-radius:0 48px 0 48px;transform:skewX(-20deg);animation:lp-lstp 12s ease-in-out infinite alternate}
#landHeader .lp-lbg .lp-s1{left:-3%;top:20%;width:120px;height:460px;background:#45D62C}
#landHeader .lp-lbg .lp-s2{right:-2%;top:46%;width:96px;height:400px;background:#FFC800;animation-delay:-5s}
#landHeader .lp-lbg .lp-s3{left:-2%;top:78%;width:110px;height:420px;background:#45D62C;animation-delay:-8s}
@keyframes lp-lstp{from{transform:translate(0,0) skewX(-20deg)}to{transform:translate(30px,-24px) skewX(-20deg)}}
#landHeader .lp-tile:not(.lp-dark):not(.lp-g),#landHeader details.lp-sr{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
#landHeader .lp-lvh{opacity:0;width:1px;height:1px;margin:0;pointer-events:none}
#landHeader .lp-ltgl{position:relative;display:inline-flex;align-items:center;justify-content:space-between;width:72px;height:38px;padding:0 10px;box-sizing:border-box;border-radius:999px;background:var(--tg);cursor:pointer;flex:0 0 auto;transition:background .35s ease}
#landHeader .lp-ltgl svg{position:relative;z-index:2;transition:stroke .25s ease}
#landHeader .lp-lknob{position:absolute;left:3px;top:3px;width:32px;height:32px;border-radius:50%;background:#45D62C;transition:transform .3s cubic-bezier(.2,.7,.2,1);z-index:1}
#landHeader .lp-ltgl .lp-sun{stroke:#0B120C}
#landHeader .lp-ltgl .lp-moon{stroke:var(--tgi)}
#landHeader.lp:has(#lp-lt:checked) .lp-lknob{transform:translateX(34px)}
#landHeader.lp:has(#lp-lt:checked) .lp-ltgl .lp-moon{stroke:#0B120C}
#landHeader.lp:has(#lp-lt:checked) .lp-ltgl .lp-sun{stroke:var(--tgi)}
#landHeader.lp:has(#lp-lt:focus-visible) .lp-ltgl{outline:3px solid #45D62C;outline-offset:3px}
@media (prefers-reduced-motion:reduce){#landHeader *{animation:none!important;transition:none!important}
#landHeader .lp-msg{opacity:1!important}
#landHeader .lp-draw,#landHeader .lp-tk{stroke-dashoffset:0!important}}

/* ---- 2. Inside the app */
/* style.min.css paints the old photo and a dark overlay on #landHeader (the id stays for invitation.js). */
#landHeader.lp { background: var(--bg); max-width: none; min-height: 0; }
#landHeader.lp::before { content: none; }
/* refresh.css dark appearance recolours every p/span/div…; inside the landing colours come from v3.5 itself. */
html[data-appearance="dark"] body #landHeader :is(p, span, label, li, td, th, h1, h2, h3, h4, h5, h6, div, b, strong, small) { color: inherit; }
html[data-appearance="dark"] body #landHeader .lp-mq { color: #0B120C; }
#landHeader #invitation_message { max-width: 1152px !important; margin: 16px auto 0 !important; border-radius: 16px; background: var(--chipbg); color: var(--chipfg); font-weight: 600; }

/* Sign-in / sign-up card in the «Сканируй и присоединяйся!» block, styled as the v3.5 e-mail form. */
#landHeader .lpa-card { display: flex; flex-direction: column; gap: 10px; padding: 18px; border-radius: 24px; background: rgba(255, 255, 255, .08); border: 1px solid rgba(255, 255, 255, .18); color: #D3DCD5; }
#landHeader .lpa-tabs { display: grid; grid-template-columns: 1fr 1fr; gap: 4px; padding: 4px; border-radius: 14px; background: rgba(255, 255, 255, .08); }
#landHeader .lpa-tab { padding: 10px; border: 0; border-radius: 11px; background: transparent; color: #D3DCD5; font: 600 15px Inter, system-ui, sans-serif; cursor: pointer; }
/* login.js shows one form with an inline display:block; highlight the matching tab. */
#landHeader .lpa-card:has(#form_login[style*="block"]) [data-lpa-tab="in"],
#landHeader .lpa-card:has(#form_registration[style*="block"]) [data-lpa-tab="up"] { background: #45D62C; color: #0B120C; }
#landHeader #form_login, #landHeader #form_registration { display: none; margin: 0; padding: 0; background: none; border: 0; border-radius: 0 !important; box-shadow: none !important; }
#landHeader .lpa-title { margin: 6px 0 10px; font-weight: 600; font-size: 14px; }
#landHeader .form { position: relative; display: flex; margin: 0 0 10px; }
#landHeader .form--column { flex-direction: column; }
#landHeader .form__label { order: -1; padding: 0 0 6px; font-weight: 600; font-size: 14px; color: #D3DCD5 !important; text-transform: none; }
#landHeader .form__label--showError { color: #FFB4A8 !important; }
#landHeader .form__input { box-sizing: border-box; width: 100%; padding: 15px 44px 15px 16px; border: 0; border-radius: 14px; background: #FFFFFF; color: #0B120C; font: 18px Inter, system-ui, sans-serif; cursor: text; }
#landHeader .form__input:focus { outline: 3px solid #45D62C; outline-offset: 2px; border: 0 !important; box-shadow: none !important; }
#landHeader .form__icon { position: absolute; top: 40px; right: 12px; font-size: 22px; }
#landHeader .form__error { max-height: 0; padding: 0 2px; color: #FFB4A8 !important; font-size: 14px; font-weight: 600; white-space: normal; }
#landHeader .form__error--show { max-height: none; padding-top: 6px; }
#landHeader .lpa-check { display: flex; align-items: center; gap: 10px; cursor: pointer; }
#landHeader .lpa-check .inputCheckbox { order: 0; margin: 0 0 0 4px; }
#landHeader .lpa-check p { margin: 0; font-size: 15px; }
#landHeader .lpa-btn { display: flex; align-items: center; justify-content: center; width: 100%; margin: 4px 0 0; padding: 16px 26px; border: 0; border-radius: 14px !important;
  background: #45D62C !important; color: #0B120C; font: 700 16px Inter, system-ui, sans-serif; cursor: pointer; box-shadow: none !important; transition: transform .2s ease; }
#landHeader .lpa-btn:hover { transform: translateY(-2px); }
#landHeader .lpa-btn:disabled { opacity: .6; transform: none; cursor: progress; }
#landHeader .lpa-btn p { margin: 0; color: #0B120C !important; font: inherit; text-transform: none; }
#landHeader .lpa-link { margin: 12px 0 0; text-align: center; font-size: 14px; }
#landHeader .lpa-link a { color: #45D62C; font-weight: 600; }
#landHeader #reg_code_note { margin: 0 0 10px; font-size: 14px; }
#landHeader #reg_code_note a { color: #45D62C; font-weight: 600; }

/* Language list of login.js (RU/RO in the v3.5 footer). */
#landHeader .lpa-lang { position: relative; }
#landHeader #header_lang { display: none; position: absolute; right: 0; bottom: 100%; z-index: 20; min-width: 84px; margin: 0 0 8px; padding: 6px; list-style: none;
  background: #151816; border: 1px solid rgba(255, 255, 255, .16); border-radius: 14px; }
#landHeader #header_lang li a { display: block; padding: 6px 12px; border-radius: 8px; color: #FFFFFF; font-weight: 600; cursor: pointer; }
#landHeader #header_lang li a:hover { background: rgba(69, 214, 44, .16); }
