/*
 * landing.css — стили публичной лендинг-страницы (index.html)
 * Вынесен из index.html для соблюдения CSP
 */
:root {
    --lp-navy: #0f1629;
    --lp-navy2: #1a2038;
    --lp-ink: #232946;
    --lp-accent: #3d5af1;
    --lp-accent-glow: rgba(61,90,241,0.15);
    --lp-teal: #0ea5e9;
    --lp-green: #22c55e;
    --lp-amber: #f59e0b;
    --lp-red: #ef4444;
    --lp-surface: #f8fafc;
    --lp-card: #ffffff;
    --lp-text: #0f172a;
    --lp-text2: #475569;
    --lp-muted: #94a3b8;
    --lp-border: #e2e8f0;
    --lp-radius: 1rem;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'DM Sans',system-ui,sans-serif;color:var(--lp-text);background:var(--lp-surface);overflow-x:hidden}
h1,h2,h3,h4,h5,h6{font-family:'Manrope',sans-serif;letter-spacing:-0.02em}
img{max-width:100%}
.lp-w{max-width:1140px;margin:0 auto;padding:0 1.5rem}

/* HEADER */
.lp-header{position:fixed;top:0;left:0;right:0;z-index:999;padding:0.8rem 0;transition:all 0.3s}
.lp-header.scrolled{background:rgba(15,22,41,0.95);backdrop-filter:blur(20px);box-shadow:0 4px 30px rgba(0,0,0,0.2)}
.lp-header-in{display:flex;align-items:center;justify-content:space-between;max-width:1140px;margin:0 auto;padding:0 1.5rem}
.lp-logo{display:flex;align-items:center;gap:0.6rem;text-decoration:none;color:#fff}
.lp-logo img{border-radius:0.5rem}
.lp-logo b{font-family:'Manrope';font-weight:800;font-size:1.05rem}
.lp-nav{display:flex;align-items:center;gap:1.5rem}
.lp-nav a{color:rgba(255,255,255,0.7);text-decoration:none;font-size:0.85rem;font-weight:500;transition:color 0.2s}
.lp-nav a:hover{color:#fff}
.lp-btn{display:inline-flex;align-items:center;gap:0.5rem;padding:0.55rem 1.3rem;border-radius:0.6rem;font-weight:600;font-size:0.85rem;text-decoration:none;border:none;cursor:pointer;transition:all 0.2s}
.lp-btn-light{background:rgba(255,255,255,0.12);color:#fff;border:1px solid rgba(255,255,255,0.15)}
.lp-btn-light:hover{background:rgba(255,255,255,0.2);color:#fff}
.lp-btn-accent{background:var(--lp-accent);color:#fff}
.lp-btn-accent:hover{background:#2d4ae0;color:#fff}
.lp-btn-white{background:#fff;color:var(--lp-navy)}
.lp-btn-white:hover{background:#f1f5f9;color:var(--lp-navy)}
.lp-btn-lg{padding:0.8rem 2rem;font-size:0.92rem;border-radius:0.75rem}
.lp-btn-outline{background:transparent;color:var(--lp-text);border:1.5px solid var(--lp-border)}
.lp-btn-outline:hover{border-color:var(--lp-accent);color:var(--lp-accent)}
.lp-header .ds-lang-container{margin:0}
.lp-header .ds-lang-trigger{color:rgba(255,255,255,0.7);border-color:rgba(255,255,255,0.15)}
.lp-header .ds-lang-trigger:hover{border-color:rgba(255,255,255,0.4)}
.lp-header .ds-lang-menu{bottom:auto;top:100%;margin-top:0.35rem}
.lp-gap-3 {margin-bottom: 15px;}
.lp-mr-1 {margin-right: 10px;}

/* HERO */
.lp-hero{background:var(--lp-navy);color:#fff;padding:9rem 0 5rem;position:relative;overflow:hidden}
.lp-hero::before{content:'';position:absolute;top:-40%;right:-20%;width:70%;height:140%;background:radial-gradient(ellipse,rgba(61,90,241,0.12) 0%,transparent 70%);pointer-events:none}
.lp-hero::after{content:'';position:absolute;bottom:-40%;left:-10%;width:60%;height:100%;background:radial-gradient(ellipse,rgba(14,165,233,0.08) 0%,transparent 70%);pointer-events:none}
.lp-hero-badge{display:inline-flex;align-items:center;gap:0.5rem;background:rgba(61,90,241,0.15);color:var(--lp-teal);padding:0.35rem 0.9rem;border-radius:2rem;font-size:0.75rem;font-weight:600;border:1px solid rgba(61,90,241,0.2);margin-bottom:1.5rem;letter-spacing:0.03em;text-transform:uppercase}
.lp-hero h1{font-size:clamp(2.2rem,5vw,3.4rem);font-weight:800;line-height:1.1;margin-bottom:1.2rem}
.lp-hero h1 em{font-style:normal;background:linear-gradient(135deg,var(--lp-teal),var(--lp-accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.lp-hero-sub{font-size:1.08rem;color:rgba(255,255,255,0.6);line-height:1.7;max-width:480px;margin-bottom:2.5rem}

/* MOCKUP */
.lp-mockup{background:var(--lp-navy2);border:1px solid rgba(255,255,255,0.08);border-radius:1rem;padding:1rem;position:relative;box-shadow:0 25px 60px rgba(0,0,0,0.4)}
.lp-mockup-dots{display:flex;gap:5px;margin-bottom:0.75rem}
.lp-mockup-dots span{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,0.12)}
.lp-mock-row{display:flex;align-items:center;gap:0.6rem;padding:0.5rem 0.65rem;border-radius:0.5rem;background:rgba(255,255,255,0.04);margin-bottom:0.35rem;border:1px solid rgba(255,255,255,0.04)}
.lp-mock-av{width:2rem;height:2rem;border-radius:0.35rem;display:flex;align-items:center;justify-content:center;font-size:0.6rem;font-weight:700;flex-shrink:0}
.lp-mock-lines{flex:1}
.lp-mock-line{height:5px;border-radius:3px;background:rgba(255,255,255,0.08)}
.lp-mock-tag{padding:0.1rem 0.45rem;border-radius:1rem;font-size:0.5rem;font-weight:600;flex-shrink:0}
.lp-mock-chart{padding:0.65rem;background:rgba(255,255,255,0.03);border-radius:0.5rem;margin-top:0.35rem;border:1px solid rgba(255,255,255,0.04)}
.lp-mock-chart-head{display:flex;align-items:center;gap:0.4rem;margin-bottom:0.4rem}
.lp-mock-chart-head span{font-size:0.55rem;font-weight:600}
.lp-lock-badge{position:absolute;top:-0.6rem;right:-0.6rem;width:2.5rem;height:2.5rem;border-radius:50%;background:var(--lp-green);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;box-shadow:0 4px 15px rgba(34,197,94,0.4);border:3px solid var(--lp-navy)}

/* HERO ENCRYPT ANIMATION - live encryption visualization */
.lp-enc-viz{position:relative;max-width:520px;margin:0 auto}
.lp-enc-panel{background:linear-gradient(160deg,#1a2138 0%,#0d1322 100%);border:1px solid rgba(61,90,241,0.2);border-radius:1rem;padding:1.5rem 1.25rem;box-shadow:0 25px 50px rgba(0,0,0,0.5),inset 0 1px 0 rgba(255,255,255,0.05);position:relative;overflow:hidden}
.lp-enc-panel::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 30% 40%,rgba(61,90,241,0.15) 0%,transparent 50%);pointer-events:none;animation:lpGlow 8s ease-in-out infinite}
@keyframes lpGlow{0%,100%{transform:translate(0,0)}50%{transform:translate(10%,-5%)}}
.lp-enc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.15rem;padding-bottom:0.85rem;border-bottom:1px solid rgba(255,255,255,0.06);position:relative;z-index:1}
.lp-enc-header-title{font-family:'Manrope';font-weight:700;font-size:0.75rem;color:#fff;letter-spacing:0.04em;text-transform:uppercase;display:flex;align-items:center;gap:0.5rem;transition:all 0.35s}
.lp-enc-header-title i{color:#4ade80;font-size:0.95rem;transition:color 0.35s}
.lp-enc-header-title.phase-typing i{color:#3d5af1}
.lp-enc-header-title.phase-typing{color:#cbd5e1}
.lp-enc-header-title.phase-encrypting i{color:#fbbf24}
.lp-enc-header-title.phase-encrypting{color:#fde68a}
.lp-enc-header-title.phase-sent i{color:#4ade80}
.lp-enc-header-title.phase-sent{color:#bbf7d0}
.lp-enc-status{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.65rem;font-weight:600;color:#4ade80;padding:0.2rem 0.55rem;background:rgba(34,197,94,0.1);border-radius:1rem;border:1px solid rgba(34,197,94,0.25)}
.lp-enc-status-dot{width:6px;height:6px;border-radius:50%;background:#4ade80;animation:lpBlink 1.4s ease-in-out infinite}
@keyframes lpBlink{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(74,222,128,0.6)}50%{opacity:0.6;box-shadow:0 0 0 6px rgba(74,222,128,0)}}

.lp-enc-field{margin-bottom:0.85rem;position:relative;z-index:1}
.lp-enc-field:last-child{margin-bottom:0}
.lp-enc-label{font-size:0.62rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:0.06em;margin-bottom:0.35rem;display:flex;align-items:center;gap:0.4rem}
.lp-enc-label i{font-size:0.7rem;color:#3d5af1}
.lp-enc-value{font-family:'DM Sans',sans-serif;font-size:0.88rem;color:#e2e8f0;padding:0.55rem 0.75rem;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);border-radius:0.5rem;min-height:2.15rem;display:flex;align-items:center;overflow:hidden;position:relative;transition:all 0.4s}
.lp-enc-value.encrypted{font-family:'Courier New',monospace;color:#4ade80;background:rgba(34,197,94,0.04);border-color:rgba(34,197,94,0.15);font-size:0.72rem;letter-spacing:0.02em;word-break:break-all;line-height:1.5}
.lp-enc-value .caret{display:inline-block;width:2px;height:14px;background:#3d5af1;margin-left:1px;vertical-align:middle;animation:lpCaret 0.8s steps(2) infinite}
@keyframes lpCaret{0%,50%{opacity:1}51%,100%{opacity:0}}

/* lock/unlock icon transitioning */
.lp-enc-lock{position:absolute;right:0.6rem;top:50%;transform:translateY(-50%);width:1.5rem;height:1.5rem;border-radius:0.3rem;display:flex;align-items:center;justify-content:center;font-size:0.7rem;transition:all 0.4s}
.lp-enc-value:not(.encrypted) .lp-enc-lock{background:rgba(255,255,255,0.05);color:#64748b}
.lp-enc-value.encrypted .lp-enc-lock{background:rgba(34,197,94,0.15);color:#4ade80}

.lp-enc-footer{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding-top:0.85rem;border-top:1px solid rgba(255,255,255,0.06);position:relative;z-index:1;gap:0.75rem;flex-wrap:wrap}
.lp-enc-algo{display:inline-flex;align-items:center;gap:0.35rem;font-size:0.68rem;font-weight:600;color:#94a3b8;font-family:'Courier New',monospace;letter-spacing:0.02em}
.lp-enc-algo strong{color:#60a5fa;font-weight:700}
.lp-enc-flying{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.65rem;color:#94a3b8;font-weight:500}
.lp-enc-flying i{color:#4ade80;animation:lpFly 1.6s ease-in-out infinite}
@keyframes lpFly{0%,100%{transform:translateX(0)}50%{transform:translateX(4px)}}

/* STATS BAR */
.lp-stats{padding:2.5rem 0;background:var(--lp-card);border-bottom:1px solid var(--lp-border)}
.lp-stat{text-align:center;padding:0.5rem}
.lp-stat-val{font-family:'Manrope';font-weight:800;font-size:2.2rem;background:linear-gradient(135deg,var(--lp-accent),var(--lp-teal));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;margin-bottom:0.25rem}
.lp-stat-label{font-size:0.82rem;color:var(--lp-muted);font-weight:500}

/* SECTIONS */
.lp-section{padding:5.5rem 0}
.lp-section-dark{background:var(--lp-navy);color:#fff}
.lp-section-alt{background:var(--lp-card)}
.lp-sh{text-align:center;margin-bottom:3.5rem}
.lp-sh h2{font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;margin-bottom:0.6rem}
.lp-sh p{font-size:1rem;color:var(--lp-muted);max-width:560px;margin:0 auto;line-height:1.7}
.lp-section-dark .lp-sh p{color:rgba(255,255,255,0.5)}

/* ADV CARDS */
.lp-card{background:var(--lp-card);border:1px solid var(--lp-border);border-radius:var(--lp-radius);padding:1.75rem;height:100%;transition:all 0.25s;position:relative}
.lp-card:hover{box-shadow:0 12px 40px rgba(0,0,0,0.06);transform:translateY(-3px);border-color:transparent}
.lp-card-icon{width:3rem;height:3rem;border-radius:0.75rem;display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:1.1rem}
.lp-card h5{font-weight:700;font-size:0.98rem;margin-bottom:0.45rem}
.lp-card p{color:var(--lp-text2);font-size:0.86rem;line-height:1.65;margin:0}

/* ENCRYPTION FLOW */
.lp-enc-flow{display:flex;align-items:center;justify-content:center;gap:0.4rem;flex-wrap:wrap;padding:2rem 0}
.lp-enc-step{display:flex;flex-direction:column;align-items:center;gap:0.5rem;padding:1rem;text-align:center;min-width:6rem}
.lp-enc-icon{width:3.2rem;height:3.2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.lp-enc-label{font-size:0.72rem;font-weight:600;max-width:6rem}
.lp-enc-arrow{color:rgba(255,255,255,0.2);font-size:1.1rem}

/* SHOWCASE SECTIONS */
.lp-showcase-img{background:var(--lp-surface);border:1px solid var(--lp-border);border-radius:var(--lp-radius);padding:1.5rem;overflow:hidden}
.lp-showcase-badge{display:inline-flex;align-items:center;gap:0.4rem;font-size:0.72rem;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;margin-bottom:1rem;color:var(--lp-accent)}
.lp-pill-row{display:flex;flex-wrap:wrap;gap:0.35rem;margin-bottom:1.25rem}
.lp-pill{padding:0.3rem 0.7rem;border-radius:2rem;font-size:0.72rem;font-weight:700;border:1px solid}

/* COMPARISON TABLE */
.lp-cmp{border-radius:var(--lp-radius);overflow:hidden;border:1px solid var(--lp-border);background:var(--lp-card)}
.lp-cmp table{width:100%;border-collapse:collapse;font-size:0.84rem}
.lp-cmp th{padding:0.7rem 1rem;text-align:left;font-weight:600;background:var(--lp-navy);color:#fff}
.lp-cmp td{padding:0.6rem 1rem;border-bottom:1px solid var(--lp-border)}
.lp-cmp tr:last-child td{border-bottom:none}
.lp-cmp tr:nth-child(even) td{background:var(--lp-surface)}
.lp-y{color:var(--lp-green);font-weight:700}
.lp-n{color:#cbd5e1}
.lp-p{color:var(--lp-amber)}

/* CTA */
.lp-cta{padding:5rem 0;background:linear-gradient(135deg,var(--lp-navy) 0%,var(--lp-ink) 50%,var(--lp-accent) 150%);color:#fff;text-align:center;position:relative;overflow:hidden}
.lp-cta::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 30% 50%,rgba(61,90,241,0.2),transparent 60%);pointer-events:none}
.lp-cta h2{font-weight:800;font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:0.8rem;position:relative}
.lp-cta p{color:rgba(255,255,255,0.6);font-size:1rem;margin-bottom:2rem;position:relative}

/* FOOTER */
.lp-footer{padding:1.5rem 0;text-align:center;font-size:0.82rem;color:var(--lp-muted);border-top:1px solid var(--lp-border)}

/* ANIMATIONS */
.lp-reveal{opacity:0;transform:translateY(28px);transition:opacity 0.7s cubic-bezier(0.16,1,0.3,1),transform 0.7s cubic-bezier(0.16,1,0.3,1)}
.lp-reveal.vis{opacity:1;transform:translateY(0)}

/* RESPONSIVE */
@media(max-width:991.98px){
    .lp-hero{padding:7rem 0 3.5rem}
    .lp-section{padding:3.5rem 0}
}
@media(max-width:767.98px){
    .lp-hero{padding:6rem 0 2.5rem}
    .lp-enc-flow{flex-direction:column}
    .lp-enc-arrow{transform:rotate(90deg)}
    .lp-nav{gap:0.75rem}
    .lp-nav .lp-hide-sm{display:none}
    .lp-enc-panel{padding:1.2rem 1rem}
    .lp-enc-footer{font-size:0.62rem}
}
