*{box-sizing:border-box}
:root{--ink:#15142E;--ink2:#1B1A47;--amber:#F7A21E;--orange:#F2702A;--red:#E84338;--grad:linear-gradient(120deg,#F7A21E,#F2702A 50%,#E84338);--bg:#FAFBFD;--soft:#F0F2F8;--line:#E3E6EF;--muted:#6C6F84;--head:'Space Grotesk',system-ui,sans-serif;--body:'Manrope',system-ui,sans-serif}
html,body{margin:0}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;min-height:100vh}
a{color:var(--orange);text-decoration:none}a:hover{color:var(--red)}
h1{font-family:var(--head);font-size:28px;font-weight:600;letter-spacing:-.02em;line-height:1.1;margin:0 0 8px;color:var(--ink)}
.aprasas{color:var(--muted);font-size:14.5px;font-weight:500;margin:0 0 22px}
label{display:block;font-size:13.5px;font-weight:600;color:var(--ink);margin:16px 0 6px}
input{width:100%;height:48px;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:#fff;font-family:var(--body);font-size:15px;color:var(--ink);transition:.2s}
input:focus{outline:none;border-color:var(--orange);box-shadow:0 0 0 4px rgba(242,112,42,.14)}
button.pagrindinis{width:100%;height:50px;margin-top:22px;border:0;border-radius:12px;background:var(--grad);background-size:160% 100%;color:#fff;font-family:var(--head);font-size:16px;font-weight:600;cursor:pointer;transition:.28s}
button.pagrindinis:hover{background-position:100% 0;transform:translateY(-2px);box-shadow:0 16px 34px -12px rgba(242,112,42,.55)}
button.pagrindinis:disabled{background:#B9BBC9;box-shadow:none;transform:none;cursor:wait}
button.nuoroda{background:none;border:0;color:var(--ink);font-family:var(--body);font-weight:700;font-size:14px;cursor:pointer;padding:0;transition:.2s}
button.nuoroda:hover{color:var(--orange)}
.pastaba,.paskutinis{font-size:13px;color:var(--muted);margin:14px 0 0;line-height:1.55}
.pranesimas{color:#B4232A}
.zinute{padding:12px 14px;border-radius:12px;font-size:14px;font-weight:500;margin:0 0 14px}
.zinute.ok{background:#E8F6EE;color:#14663A}
.zinute.ispejimas,.vykdoma{background:#FEF1E2;color:#8A4A0B}
.zinute.klaida,.klaida{background:#FDECEC;color:#8F1D22;padding:12px 14px;border-radius:12px;font-size:14px;font-weight:500;margin:0 0 6px}
.vykdoma{padding:16px 18px;border-radius:14px;font-size:14px;border:1px solid #F8D9B4;position:relative;overflow:hidden}
.vykdoma::before{content:"";position:absolute;left:0;top:0;height:3px;width:40%;background:var(--grad);animation:juosta 1.6s ease-in-out infinite}
@keyframes juosta{0%{left:-40%}100%{left:100%}}
.vykdoma p{margin:0}
.vykdoma .antraste{font-family:var(--head);font-weight:600;font-size:16px;margin-bottom:4px;color:var(--ink)}

/* pagrindinis */
.fonas{position:fixed;inset:0;z-index:-1;background:radial-gradient(ellipse 60% 46% at 50% -4%,rgba(242,112,42,.18),rgba(247,162,30,.07) 46%,transparent 74%),radial-gradient(circle,rgba(21,20,46,.06) 1.2px,transparent 1.3px) 0 0/28px 28px}
.virsus{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 32px;font-size:14px;color:var(--muted);max-width:1100px;margin:0 auto}
.virsus .logo img{height:64px;width:auto;display:block;filter:drop-shadow(0 3px 9px rgba(242,112,42,.2))}
.virsus .vartotojas{display:flex;align-items:center;gap:16px;font-weight:600}
.virsus form{margin:0}
.kortele{max-width:520px;margin:40px auto 60px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:36px;position:relative;overflow:hidden;box-shadow:0 40px 80px -48px rgba(21,20,46,.35)}
.kortele::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--grad)}

/* prisijungimas */
[hidden]{display:none!important}
body.prisijungimas{overflow:hidden;background:#F3F4F8}
.p-fonas{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(1100px 700px at 22% 38%,rgba(27,26,71,.10),transparent 60%),radial-gradient(900px 620px at 84% 80%,rgba(242,112,42,.14),transparent 60%),radial-gradient(700px 480px at 72% 8%,rgba(247,162,30,.09),transparent 60%)}
.zenklas{position:fixed;left:0;top:0;bottom:110px;right:calc(72px + 500px + 40px);z-index:1}
.zenklas-atsarginis{position:fixed;left:0;top:0;bottom:110px;right:calc(72px + 500px + 40px);z-index:1;display:none;align-items:center;justify-content:center;pointer-events:none}
.zenklas-atsarginis img{width:min(440px,70%);height:auto;filter:drop-shadow(0 20px 40px rgba(21,20,46,.18))}
html.no-webgl .zenklas{display:none}
html.no-webgl .zenklas-atsarginis{display:flex}
.apacia{position:fixed;left:64px;bottom:52px;z-index:2;font-size:13px;color:#8A8C9E}
.p-kortele{position:fixed;right:72px;top:50%;transform:translateY(-50%);width:500px;padding:44px;border-radius:28px;z-index:3;background:rgba(255,255,255,.66);-webkit-backdrop-filter:blur(24px) saturate(1.2);backdrop-filter:blur(24px) saturate(1.2);border:1px solid rgba(255,255,255,.9);box-shadow:0 40px 80px -30px rgba(21,20,46,.25);display:flex;flex-direction:column;gap:28px}
.p-kortele>img{width:130px;height:auto;display:block}
.p-kortele h1{font-size:32px;margin:0}
.p-kortele .aprasas{margin:8px 0 0;font-size:16px}
.p-kortele form{display:flex;flex-direction:column;gap:14px}
.p-kortele input{height:54px;border-radius:14px;border:1px solid rgba(21,20,46,.12);background:rgba(255,255,255,.85);padding:0 18px;font-size:16px}
.p-kortele input::placeholder{color:#9A9CAD}
.slapt{position:relative}
.slapt input{padding-right:88px}
.akis{position:absolute;right:7px;top:7px;height:40px;padding:0 12px;border:0;border-radius:10px;background:transparent;font-family:var(--body);font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;transition:.15s}
.akis:hover{background:rgba(242,112,42,.1);color:var(--orange)}
.caps{font-size:13px;color:#B4232A}
.p-kortele .klaida{margin:0}
.p-kortele button.pagrindinis{height:56px;margin-top:4px;border-radius:14px;background:var(--ink);display:flex;align-items:center;justify-content:center;gap:10px}
.p-kortele button.pagrindinis span{color:var(--amber);font-size:18px;transition:.2s}
.p-kortele button.pagrindinis:hover{background:var(--grad);background-size:160% 100%}
.p-kortele button.pagrindinis:hover span{color:#fff;transform:translateX(3px)}
@media(max-width:1023px){.zenklas,.zenklas-atsarginis{display:none!important}.p-kortele{right:50%;transform:translate(50%,-50%);width:min(500px,calc(100vw - 32px))}.apacia{left:50%;transform:translateX(-50%);bottom:20px}}
@media(max-width:559px){.p-kortele{padding:28px;gap:22px}}
@media(max-height:680px){body.prisijungimas{overflow:auto}.p-kortele{position:relative;top:auto;right:auto;transform:none;margin:24px 72px 24px auto;gap:20px;padding:32px 40px}.apacia{position:fixed;left:64px;bottom:20px}}
@media(max-height:680px) and (max-width:1023px){.p-kortele{margin:24px auto 56px}.apacia{left:50%;transform:translateX(-50%)}}
@media(max-width:560px){.virsus{padding:14px 18px}.virsus .logo img{height:48px}.kortele{margin:20px 14px 40px;padding:26px 22px}}
@media(prefers-reduced-motion:reduce){.vykdoma::before{animation:none}}

/* instrukcija šone */
.isdestymas{display:flex;justify-content:center;align-items:flex-start;gap:28px;max-width:1100px;margin:40px auto 60px;padding:0 32px}
.isdestymas .kortele{margin:0;flex:0 1 520px}
.instrukcija{flex:0 1 380px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px 30px;box-shadow:0 40px 80px -48px rgba(21,20,46,.35);position:relative;overflow:hidden}
.instrukcija::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--grad)}
.instrukcija h2{font-family:var(--head);font-size:19px;font-weight:600;letter-spacing:-.01em;margin:0 0 16px;color:var(--ink)}
.instrukcija ol{margin:0;padding:0;list-style:none;counter-reset:z}
.instrukcija li{counter-increment:z;position:relative;padding:0 0 14px 40px;font-size:14px;line-height:1.5}
.instrukcija li::before{content:counter(z);position:absolute;left:0;top:0;width:26px;height:26px;border-radius:50%;background:var(--grad);color:#fff;font-family:var(--head);font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:center}
.instrukcija li b{display:block;font-weight:700;color:var(--ink)}
.instrukcija li span{color:var(--muted)}
.instrukcija .pastaba{margin:2px 0 0}
/* žingsnių varnelės + prilimpanti kortelė */
.instrukcija li.tikr{padding:0}
.instrukcija li.tikr label{display:block;position:relative;margin:0 0 6px -10px;padding:8px 48px 10px 50px;border-radius:12px;cursor:pointer;font-size:14px;font-weight:400;color:inherit;transition:background .15s}
.instrukcija li.tikr label:hover{background:#F7F3EE}
.instrukcija li.tikr::before{left:0;top:8px;z-index:1;pointer-events:none;transition:.2s}
.instrukcija li.tikr:has(.zym:checked)::before{content:"✓";background:#1F9D57;font-size:14px}
.instrukcija li.tikr:has(.zym:checked) b{color:#14663A}
.instrukcija li.tikr:has(.zym:focus-visible) label{outline:2px solid var(--orange);outline-offset:2px}
.instrukcija .zym{-webkit-appearance:none;appearance:none;position:absolute;right:10px;top:9px;width:24px;height:24px;padding:0;margin:0;border:2px solid #C4C7D6;border-radius:7px;background:#fff;cursor:pointer;transition:.15s}
.instrukcija .zym:hover{border-color:var(--orange)}
.instrukcija .zym:focus{box-shadow:none}
.instrukcija .zym:focus-visible{outline:2px solid var(--orange);outline-offset:2px}
.instrukcija .zym:checked{border-color:#1F9D57;background:#1F9D57 url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27white%27 stroke-width=%273.2%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3E%3Cpath d=%27M5 12.5l4.5 4.5L19 7.5%27/%3E%3C/svg%3E") center/15px no-repeat}
.instrukcija .zym:checked ~ b{color:#14663A}
.uzrakto-pastaba{display:flex;align-items:center;gap:8px;margin:12px 0 0;padding:10px 12px;border-radius:12px;background:#F4F1FA;color:var(--ink);font-size:13px;font-weight:600}
.uzrakto-pastaba::before{content:"→";color:var(--orange);font-size:15px}
@media(max-width:960px){.uzrakto-pastaba::before{content:"↓"}}
button.pagrindinis:disabled:not(.siunciama){cursor:not-allowed}
@media(min-width:961px){.isdestymas .kortele{position:sticky;top:24px}}
@media(max-width:960px){.isdestymas{flex-direction:column;align-items:center;padding:0 14px;margin:20px auto 40px}.isdestymas .kortele,.instrukcija{width:100%;max-width:520px;flex:none}}

/* klaidos šone (po instrukcija) */
.sonas{flex:0 1 380px;min-width:0;display:flex;flex-direction:column;gap:24px}
.sonas .instrukcija{flex:none}
.klaidos{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px 26px;box-shadow:0 40px 80px -48px rgba(21,20,46,.35);position:relative;overflow:hidden}
.klaidos::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--grad)}
.klaidos h2{font-family:var(--head);font-size:19px;font-weight:600;letter-spacing:-.01em;margin:0 0 6px;color:var(--ink)}
.k-info{font-size:13px;color:var(--muted);margin:0 0 12px}
.k-filtras{width:100%;height:40px;border:1px solid var(--line);border-radius:10px;padding:0 10px;margin:0 0 10px;background:#fff;font-family:var(--body);font-size:14px;color:var(--ink)}
.k-grupe{border-top:1px solid var(--line)}
.k-grupe summary{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 2px;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--ink);list-style:none}
.k-grupe summary::-webkit-details-marker{display:none}
.k-grupe summary:hover{color:var(--orange)}
.k-grupe summary em{flex:none;font-style:normal;min-width:28px;height:22px;padding:0 8px;border-radius:11px;background:#FEF1E2;color:#8A4A0B;font-size:12px;display:inline-flex;align-items:center;justify-content:center}
.k-grupe ul{list-style:none;margin:0 0 10px;padding:0;max-height:320px;overflow:auto}
.k-grupe li{padding:7px 2px;border-top:1px dashed var(--line);font-size:13px;line-height:1.45}
.k-grupe li b{font-weight:700;color:var(--ink)}
.k-imone{color:var(--muted);font-size:12px;margin-left:6px}
.k-detale{color:var(--muted)}
.k-nera{margin:0;padding:12px 14px;border-radius:12px;background:#E8F6EE;color:#14663A;font-size:14px;font-weight:500}
@media(max-width:960px){.sonas{width:100%;max-width:520px;flex:none}}

/* trys kortelės vienoje eilėje: generavimas | instrukcija | klaidos */
.virsus{max-width:1440px}
.isdestymas{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:28px;max-width:1440px;margin:40px auto 60px;padding:0 32px}
.isdestymas>.kortele,.isdestymas>.instrukcija,.isdestymas>.klaidos{margin:0;width:auto;max-width:none;flex:none}
@media(max-width:1199px){.isdestymas{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.isdestymas>.klaidos{grid-column:1/-1}}
@media(max-width:960px){.isdestymas{grid-template-columns:minmax(0,1fr);max-width:560px;padding:0 14px;margin:20px auto 40px}}
