/* liteApps AI · v2: общий каркас. Цвета приходят из токенов варианта (:root в каждом файле) */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--fg);font:400 17px/1.6 var(--sans)}
a{color:var(--link)}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
h1,h2,h3{font-family:var(--mono);margin:0;letter-spacing:-.025em;text-wrap:balance}
.wrap{max-width:1240px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.eyebrow{font:600 12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--eyebrow)}
.btn{display:inline-flex;align-items:center;gap:8px;font:700 15px/1 var(--mono);padding:15px 20px;border-radius:var(--r);background:var(--accent);color:var(--on-accent);text-decoration:none;border:0;cursor:pointer;transition:transform .15s,filter .15s}
.btn:hover{transform:translateY(-2px);filter:brightness(1.08)}

/* шапка */
.hdr{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:var(--hdr-bg);backdrop-filter:blur(12px);border-bottom:1px solid var(--hdr-line);color:var(--hdr-fg)}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:50;background:var(--hero-bg)}
.nav{display:flex;align-items:center;gap:26px;height:70px}
.logo{display:flex;align-items:center;gap:10px;color:var(--hdr-fg);text-decoration:none}
.logo b{font:800 14px/1 var(--mono);background:var(--accent);color:var(--on-accent);padding:7px 8px;border-radius:7px}
.logo span{display:grid;font:800 18px/1.05 var(--mono)}
.logo small{font:500 11px/1.2 var(--mono);opacity:.75;letter-spacing:.02em}
.nav ul{display:flex;gap:6px;list-style:none;margin:0 0 0 auto;padding:0}
.nav ul a{display:block;padding:9px 13px;border-radius:999px;color:var(--hdr-fg);text-decoration:none;font:500 14px/1 var(--mono);opacity:.85}
.nav ul a:hover{opacity:1;background:var(--hdr-hover)}
.nav ul a[aria-current]{opacity:1;background:var(--accent);color:var(--on-accent)}
.nav .btn{padding:11px 16px;font-size:14px}
@media(max-width:900px){.nav ul{display:none}.nav .btn{margin-left:auto}}

/* первый экран: чат-поиск */
.hero{position:relative;overflow:hidden;background:var(--hero-bg);color:var(--hero-fg)}
.hero canvas.graph{position:absolute;inset:0;width:100%;height:100%}
.hero .blobs{position:absolute;inset:-20%;pointer-events:none}
.hero .blobs i{position:absolute;width:46vw;height:46vw;border-radius:50%;filter:blur(70px);opacity:.75;animation:drift 18s ease-in-out infinite alternate}
.hero .blobs i:nth-child(1){background:var(--blob1);left:5%;top:10%}
.hero .blobs i:nth-child(2){background:var(--blob2);right:0;top:30%;animation-duration:22s}
.hero .blobs i:nth-child(3){background:var(--blob3);left:35%;bottom:-10%;animation-duration:26s}
@keyframes drift{to{transform:translate(8vw,-6vw) scale(1.15)}}
.hero .rows{position:absolute;inset:0;display:grid;align-content:space-around;pointer-events:none;opacity:.14;font:800 clamp(40px,7vw,96px)/1 var(--mono);white-space:nowrap}
.hero .rows div{animation:slide 60s linear infinite}
.hero .rows div:nth-child(even){animation-direction:reverse;animation-duration:75s}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.hero-in{position:relative;padding-block:84px 72px;pointer-events:none}
.hero-in>*{pointer-events:auto}
.hero.center .hero-in{text-align:center}
.hero.center .chat{margin-inline:auto}
.hero.left .hero-in{display:grid;grid-template-columns:minmax(0,640px);}
.hero h1{font-size:clamp(34px,5.4vw,70px);line-height:1.02;font-weight:800;margin:18px 0 14px}
.hero h1 em{font-style:normal;color:var(--hero-em)}
.hero .lede{color:var(--hero-mute);font-size:19px;max-width:36em;margin:0 0 32px}
.hero.center .lede{margin-inline:auto}
.hero .eyebrow{color:var(--hero-eyebrow)}
.chat{max-width:780px;text-align:left}
.field{display:flex;align-items:center;gap:12px;background:var(--field-bg);color:var(--field-fg);border:2px solid var(--field-line);border-radius:18px;padding:6px 7px 6px 18px;box-shadow:var(--field-sh)}
.field .ic{font:800 18px/1 var(--mono);color:var(--accent-ink)}
.field input{flex:1;min-width:0;font:500 clamp(16px,2vw,21px)/1.4 var(--mono);border:0;background:transparent;color:inherit;padding:14px 0}
.field input:focus{outline:none}
.field button{font:700 14px/1 var(--mono);padding:14px 16px;border-radius:12px;border:0;background:var(--accent);color:var(--on-accent);cursor:pointer}
.fix{min-height:22px;margin:10px 4px 0;font:500 13px/1.5 var(--mono);color:var(--hero-mute)}
.fix b{color:var(--hero-em)}
.fix s{opacity:.6}
.ans{margin:6px 0 0;font:500 15px/1.5 var(--sans);color:var(--hero-fg);min-height:24px}
.ans .who{display:inline-block;font:700 11px/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;background:var(--accent);color:var(--on-accent);padding:5px 8px;border-radius:6px;margin-right:10px;vertical-align:1px}
.res{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:8px}
.res a{display:grid;grid-template-columns:170px 140px 1fr;gap:14px;align-items:baseline;padding:14px 16px;border-radius:14px;background:var(--res-bg);border:1px solid var(--res-line);color:var(--res-fg);text-decoration:none;animation:rin .4s both;transition:transform .2s,border-color .2s}
.res a:hover{transform:translateX(4px);border-color:var(--accent)}
@keyframes rin{from{transform:translateY(8px);opacity:.25}}
.res code{font:500 12.5px/1.3 var(--mono);color:var(--res-code)}
.res b{font:700 16px/1.3 var(--mono)}
.res span{font-size:14.5px;opacity:.85}
.res mark{background:var(--mark);color:inherit;border-radius:3px;padding:0 2px}
.hints{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.hero.center .hints{justify-content:center}
.hints button{font:500 13px/1 var(--mono);padding:10px 13px;border-radius:999px;border:1px solid var(--hint-line);background:var(--hint-bg);color:var(--hero-fg);cursor:pointer}
.hints button:hover{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
@media(max-width:760px){.res a{grid-template-columns:1fr;gap:2px}.hero-in{padding-block:52px 48px}}

section.s{padding-block:96px}
.sh{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:36px}
.sh h2{font-size:clamp(28px,3.6vw,48px);line-height:1.05;max-width:18em}
.sh p{margin:10px 0 0;color:var(--mute);max-width:40em}

/* мега-разделы */
.mega{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:16px}
.mc{border-radius:var(--rc);padding:28px;display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit;min-height:320px;position:relative;overflow:hidden;transition:transform .25s;min-width:0}
.mc:hover{transform:translateY(-4px)}
.mc .eyebrow{color:inherit;opacity:.8}
.mc h3{font-size:clamp(26px,2.6vw,34px);line-height:1.05}
.mc p{margin:0;opacity:.88;font-size:16px}
.mc .go{margin-top:auto;font:700 14px/1 var(--mono)}
.mc.m1{background:var(--m1);color:var(--m1-fg)}
.mc.m2{background:var(--m2);color:var(--m2-fg)}
.mc.m3{background:var(--m3);color:var(--m3-fg)}
.mc .mini{font:500 12.5px/1.8 var(--mono);white-space:pre;background:rgba(0,0,0,.28);color:#fff;border-radius:12px;padding:12px 14px;min-height:104px;overflow:hidden}
.mc .ba{position:relative;height:96px;border-radius:12px;overflow:hidden;font:600 12px/1 var(--mono)}
.mc .ba div{position:absolute;inset:0;display:grid;place-items:center}
.mc .ba .o{background:#D9D5C9;color:#555}
.mc .ba .n{background:#141A20;color:#fff;clip-path:inset(0 0 0 50%);animation:wipe 5s ease-in-out infinite alternate}
@keyframes wipe{from{clip-path:inset(0 0 0 85%)}to{clip-path:inset(0 0 0 15%)}}
.mc .wire{display:flex;align-items:center;gap:10px;font:700 12px/1 var(--mono);height:96px}
.mc .wire span{padding:12px;border-radius:10px;background:rgba(255,255,255,.9);color:#1D252D}
.mc .wire div{flex:1;height:2px;background:currentColor;position:relative;opacity:.8}
.mc .wire div i{position:absolute;top:-5px;width:12px;height:12px;border-radius:3px;background:currentColor;animation:pk 2s linear infinite}
.mc .wire div i+i{animation-delay:1s}
@keyframes pk{from{left:0}to{left:calc(100% - 12px)}}
.more{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.more a{display:flex;gap:14px;align-items:baseline;padding:18px 20px;border-radius:var(--rc);background:var(--surface);color:inherit;text-decoration:none;border:1px solid var(--line);min-width:0}
.more a:hover{border-color:var(--accent)}
.more b{font:700 16px/1.3 var(--mono);white-space:nowrap}
.more span{color:var(--mute);font-size:14.5px}
@media(max-width:980px){.mega{grid-template-columns:1fr}.mc{min-height:0}.more{grid-template-columns:1fr}}

/* раздел 1С Studio */
.studio{background:var(--studio-bg);color:var(--studio-fg)}
.studio .sh p{color:var(--studio-mute)}
.studio .eyebrow{color:var(--studio-eyebrow)}
.subnav{display:flex;gap:6px;flex-wrap:wrap;margin:-8px 0 40px}
.subnav a{font:500 13.5px/1 var(--mono);padding:10px 14px;border-radius:999px;border:1px solid var(--studio-line);color:var(--studio-fg);text-decoration:none}
.subnav a[aria-current]{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}
.layers{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center}
.stage{perspective:1400px;height:500px;display:grid;place-items:center;position:relative;overflow:hidden}
.stack{position:relative;width:min(360px,66vw);height:min(360px,66vw);transform:rotateX(58deg) rotateZ(-42deg);transform-style:preserve-3d}
.layers[data-mode=spin] .stack{animation:spin 26s linear infinite}
@keyframes spin{from{transform:rotateX(58deg) rotateZ(-42deg)}to{transform:rotateX(58deg) rotateZ(318deg)}}
.layer{all:unset;cursor:pointer;position:absolute;inset:0;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.layer .face{position:absolute;inset:0;border:1.5px solid var(--c);background:color-mix(in srgb,var(--c) var(--lfill,16%),transparent);box-shadow:0 0 40px color-mix(in srgb,var(--c) 30%,transparent) inset;display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:16px}
.layers[data-solid] .layer .face{background:var(--c);box-shadow:0 18px 30px rgba(0,0,0,.18)}
.layer .face i{border:1px solid color-mix(in srgb,var(--c) 60%,transparent);background:color-mix(in srgb,var(--c) 12%,transparent);font:600 12.5px/1.2 var(--mono);font-style:normal;color:var(--layer-text);display:grid;place-items:center;text-align:center;padding:4px}
.layers[data-solid] .layer .face i{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.5)}
.layer .name{position:absolute;left:100%;top:0;margin-left:18px;transform:rotateZ(42deg) rotateX(-58deg);transform-origin:left top;white-space:nowrap;font:700 14px/1 var(--mono);color:var(--c)}
.layers[data-mode=spin] .layer .name{display:none}
.layer:focus-visible .face{outline:3px solid var(--focus)}
.l1{--c:var(--L1);transform:translateZ(0)}
.l2{--c:var(--L2);transform:translateZ(66px)}
.l3{--c:var(--L3);transform:translateZ(132px)}
.l4{--c:var(--L4);transform:translateZ(198px)}
.stack.open .l1{transform:translateZ(-40px)}.stack.open .l2{transform:translateZ(60px)}.stack.open .l3{transform:translateZ(160px)}.stack.open .l4{transform:translateZ(260px)}
.layers[data-mode=explode] .stack.open .l1{transform:translateZ(-90px)}.layers[data-mode=explode] .stack.open .l2{transform:translateZ(40px)}.layers[data-mode=explode] .stack.open .l3{transform:translateZ(170px)}.layers[data-mode=explode] .stack.open .l4{transform:translateZ(300px)}
.layer.on{filter:drop-shadow(0 0 20px var(--c))}
.layer.on .face{--lfill:34%}
.info{background:var(--studio-card);border:1px solid var(--studio-line);border-radius:var(--rc);padding:24px 26px;min-height:220px}
.info .lnum{font:600 12px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--studio-eyebrow)}
.info h3{font-size:24px;margin:10px 0 8px}
.info p{margin:0;color:var(--studio-mute)}
.info .cmp{margin-top:12px;font:600 13px/1.6 var(--mono);color:var(--studio-fg)}
.hint-l{margin-top:12px;font:500 13px/1.4 var(--mono);color:var(--studio-mute)}
@media(max-width:900px){.layers{grid-template-columns:1fr}.stage{height:400px}.layer .face i{font-size:10px}.layer .name{font-size:11px}}

.split{display:grid;grid-template-columns:1fr 1.15fr;gap:40px;align-items:center;margin-top:96px}
.split h3{font-size:clamp(24px,2.8vw,36px);line-height:1.1;margin:12px 0}
.split p{color:var(--studio-mute)}
.feat{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px}
.feat li{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:start}
.feat .ic{width:48px;height:48px;border-radius:12px;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font:800 13px/1 var(--mono)}
.feat b{display:block;font:700 16px/1.3 var(--mono)}
.feat span{color:var(--studio-mute);font-size:15px}
.gbox{position:relative;height:440px;border-radius:var(--rc);overflow:hidden;background:var(--gbox-bg);border:1px solid var(--studio-line)}
.gbox canvas{position:absolute;inset:0;width:100%;height:100%}
.gbox .cap{position:absolute;left:16px;bottom:14px;font:600 12px/1.6 var(--mono);color:#fff;background:rgba(0,0,0,.45);padding:8px 10px;border-radius:8px}
.ide{border-radius:var(--rc);overflow:hidden;background:#11161C;border:1px solid var(--studio-line);font:500 13px/1.75 var(--mono);color:#E6EDF3;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.ide .bar{display:flex;gap:8px;align-items:center;padding:10px 14px;background:#1A2129;color:#93A3B1;font-size:12px}
.ide .bar i{width:10px;height:10px;border-radius:50%;background:#3A4652}
.ide .bar i:first-child{background:var(--accent)}
.ide .g{display:grid;grid-template-columns:160px 1fr;min-height:330px}
.ide .t{border-right:1px solid #26303A;padding:12px;font-size:12px;line-height:2;color:#93A3B1}
.ide .t .a{background:var(--accent);color:var(--on-accent);padding:0 6px;border-radius:4px}
.ide pre{margin:0;padding:12px 16px;font:inherit;white-space:pre;overflow:hidden}
.ide .k{color:var(--ide-k)}.ide .s{color:#FFB4A8}.ide .c{color:#6F8293}
.ide .ok{margin:0 14px 14px;padding:9px 12px;border:1px solid var(--ide-k);color:var(--ide-k);border-radius:8px;font-size:12px}
@media(max-width:900px){.split{grid-template-columns:1fr}.ide .g{grid-template-columns:1fr}.ide .t{display:none}.gbox{height:340px}}

.nums{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:80px}
.nums div{border-top:3px solid var(--accent);padding-top:16px}
.nums strong{display:block;font:800 clamp(34px,4.2vw,56px)/1 var(--mono);font-variant-numeric:tabular-nums;color:var(--num)}
.nums span{font-size:14.5px;color:var(--studio-mute)}
@media(max-width:820px){.nums{grid-template-columns:1fr 1fr}}

/* кейсы */
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.case{border-radius:var(--rc);background:var(--surface);border:1px solid var(--line);padding:24px;display:flex;flex-direction:column;gap:10px;min-width:0}
.case .tag{font:600 11px/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--link)}
.case b{font:700 19px/1.25 var(--mono)}
.case p{margin:0;color:var(--mute);font-size:15px}
.case .ph{margin-top:auto;font:500 12px/1.4 var(--mono);color:var(--mute);border-top:1px dashed var(--line);padding-top:10px}
@media(max-width:900px){.cases{grid-template-columns:1fr}}

/* связаться */
.lead{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:start}
.lead h2{font-size:clamp(28px,3.6vw,48px);line-height:1.05}
.lead p{color:var(--mute)}
form{display:grid;gap:14px;background:var(--form-bg);border-radius:var(--rc);padding:28px;border:1px solid var(--line)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:grid;gap:6px;font:600 13px/1 var(--mono)}
input,select,textarea{font:400 16px/1.4 var(--sans);padding:13px 14px;border:1.5px solid var(--line);border-radius:10px;background:var(--input-bg);color:var(--fg)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent)}
textarea{min-height:100px;resize:vertical}
form .btn{justify-self:start}
[data-out]{margin:0;font:500 13px/1.4 var(--mono);color:var(--link);min-height:1em}
@media(max-width:860px){.lead{grid-template-columns:1fr}.row2{grid-template-columns:1fr}}

footer{background:var(--foot-bg);color:var(--foot-fg);padding-block:48px 96px;font:400 13.5px/1.9 var(--mono)}
.fgrid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:24px}
footer h4{margin:0 0 10px;font:700 14px/1 var(--mono);color:var(--foot-h)}
footer a{display:block;color:var(--foot-fg);text-decoration:none}
footer a:hover{color:var(--accent)}
@media(max-width:820px){.fgrid{grid-template-columns:1fr 1fr}}
