/* KU Robotikos klubas — kurobotics.club
   Tapatybė: logotipo grafitas + raudonas žiedas, „įspėjamoji“ geltona (sumo ringas, saugos juosta).
   Kampai nukirsti (šarvo plokštės), ne apvalūs. */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }

:root {
    --bg:#0D0E11; --bg-2:#111317; --surface:#171A1F; --surface-2:#1E2128; --surface-3:#272B33;
    --line:#2B2F38; --text:#F1F2F4; --muted:#A1A7B1; --muted-2:#727986;
    --red:#EE4136; --red-2:#FF6A5C; --red-soft:rgba(238,65,54,.14);
    --yel:#FFC531; --yel-soft:rgba(255,197,49,.13);
    --nav-bg:rgba(13,14,17,.78); --shadow:rgba(0,0,0,.5);
    --cut:14px; --cut-s:9px;
    --topbar:34px; --navh:68px;
    color-scheme:dark;
}
:root[data-theme="light"] {
    --bg:#EEF0F3; --bg-2:#E6E9ED; --surface:#FFFFFF; --surface-2:#F4F5F7; --surface-3:#E3E6EA;
    --line:#D4D8DE; --text:#16181C; --muted:#4E545E; --muted-2:#767C87;
    --red:#D7332A; --red-2:#E5483E; --red-soft:rgba(215,51,42,.09);
    --yel:#E3A600; --yel-soft:rgba(227,166,0,.13);
    --nav-bg:rgba(238,240,243,.86); --shadow:rgba(20,25,35,.14);
    color-scheme:light;
}
:root.theme-anim, :root.theme-anim * { transition:background-color .6s ease, color .6s ease, border-color .6s ease !important; }

html { scroll-behavior:smooth; font-size:106.25%; scroll-padding-top:calc(var(--topbar) + var(--navh) + 12px); }
body {
    font-family:'Manrope',system-ui,sans-serif; background:var(--bg); color:var(--text);
    line-height:1.62; overflow-x:hidden; -webkit-font-smoothing:antialiased;
    background-image:radial-gradient(var(--line) 1px, transparent 1.2px); background-size:26px 26px; background-attachment:fixed;
}
:root[data-theme="light"] body { background-image:radial-gradient(rgba(22,24,28,.11) 1px, transparent 1.2px); }
::selection { background:var(--red); color:#fff; }
a { color:inherit; }
img { max-width:100%; display:block; }
.mono { font-family:'IBM Plex Mono',monospace; }
.wrap { max-width:1260px; margin:0 auto; padding:0 5vw; }
.chamfer { clip-path:polygon(var(--cut) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut)); }
.hazard { height:10px; background:repeating-linear-gradient(-45deg,var(--yel) 0 14px,#121317 14px 28px); }

/* ── antraštės ── */
.kicker { display:inline-flex; align-items:center; gap:.55rem; font:600 .74rem/1 'IBM Plex Mono',monospace; letter-spacing:.2em; text-transform:uppercase; color:var(--red); }
.kicker::before { content:''; width:10px; height:10px; background:var(--red); clip-path:polygon(0 0,100% 50%,0 100%); }
.h2 { font-family:'Chakra Petch',sans-serif; font-weight:700; font-size:clamp(2rem,4.2vw,3.1rem); line-height:1.02; letter-spacing:-.01em; margin:.8rem 0 1rem; text-transform:uppercase; }
.h2 em { font-style:normal; color:var(--red); }
.lead { color:var(--muted); max-width:60ch; font-size:1.04rem; }
section.block { padding:6.5rem 0; position:relative; }
.sec-head { display:flex; justify-content:space-between; align-items:flex-end; gap:2rem; flex-wrap:wrap; margin-bottom:2.8rem; }
.sec-head > div { max-width:680px; }
.sec-num { font:700 4.2rem/1 'Chakra Petch',sans-serif; color:transparent; -webkit-text-stroke:1px var(--line); user-select:none; }

/* ── mygtukai ── */
.btn { --c:var(--red); display:inline-flex; align-items:center; gap:.55rem; padding:.95rem 1.5rem; font:700 .9rem/1 'Chakra Petch',sans-serif; letter-spacing:.08em; text-transform:uppercase;
    text-decoration:none; cursor:pointer; border:0; background:var(--c); color:#fff;
    clip-path:polygon(var(--cut-s) 0,100% 0,100% calc(100% - var(--cut-s)),calc(100% - var(--cut-s)) 100%,0 100%,0 var(--cut-s)); transition:transform .2s, filter .2s, background .2s; }
.btn:hover { transform:translateY(-2px); filter:brightness(1.08); }
.btn svg { width:18px; height:18px; }
.btn-ghost { background:var(--surface-3); color:var(--text); }
.btn-ghost:hover { background:var(--text); color:var(--bg); filter:none; }
.btn-yel { --c:var(--yel); color:#17130a; }

/* ── kontaktų juosta ── */
.topbar { position:fixed; top:0; left:0; right:0; height:var(--topbar); z-index:1101; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:0 5vw;
    background:#0A0B0D; color:#9CA2AC; font:500 .74rem/1 'IBM Plex Mono',monospace; border-bottom:2px solid var(--red); }
.topbar-note { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; letter-spacing:.04em; }
.topbar-note b { color:var(--yel); font-weight:600; }
.topbar-links { display:flex; gap:1.4rem; margin-left:auto; }
.topbar a { display:inline-flex; align-items:center; gap:.45rem; color:#F1F2F4; text-decoration:none; white-space:nowrap; transition:color .2s; }
.topbar a:hover { color:var(--yel); }
.topbar svg { width:14px; height:14px; color:var(--red-2); }

/* ── navigacija ── */
nav.top { position:fixed; top:var(--topbar); left:0; right:0; height:var(--navh); z-index:1100; display:flex; align-items:center; justify-content:space-between; gap:1.2rem; padding:0 5vw;
    background:var(--nav-bg); backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); border-bottom:1px solid var(--line); }
.brand { display:flex; align-items:center; gap:.7rem; text-decoration:none; flex-shrink:0; }
.brand img { height:46px; width:auto; }
:root:not([data-theme="light"]) .brand img { filter:invert(1) hue-rotate(180deg) brightness(1.15) saturate(1.3); }   /* tamsioje temoje grafitas → šviesus, raudona išlieka */
.brand-txt { font:700 1rem/1.05 'Chakra Petch',sans-serif; letter-spacing:.06em; text-transform:uppercase; }
.brand-txt small { display:block; font:500 .62rem/1.3 'IBM Plex Mono',monospace; letter-spacing:.14em; color:var(--muted-2); }
/* logotipas: O raidė — raudona akis su antenomis (buvusio robotuko užuomina) */
.eye-o { display:inline-block; position:relative; width:.74em; height:.74em; margin:0 .03em; border:.155em solid var(--red); border-radius:50%; box-sizing:border-box; vertical-align:-.01em;
    color:transparent; line-height:.44em; text-align:center; text-indent:-.02em; transition:border-color .25s, color .25s; }
.eye-o::before, .eye-o::after { content:''; position:absolute; top:-.43em; width:.1em; height:.33em; background:var(--ant, var(--text)); border-radius:.05em; transition:opacity .2s; }
.eye-o::before { left:.06em; transform:rotate(-24deg); } .eye-o::after { right:.06em; transform:rotate(24deg); }
.eye-o.plain { display:inline; width:auto; height:auto; margin:0; border:0; color:inherit; line-height:inherit; text-indent:0; vertical-align:baseline; }
.eye-o.plain::before, .eye-o.plain::after { opacity:0; }
.brand { padding-top:.25rem; }                                     /* vieta antenoms */
.nav-links { display:flex; gap:1.5rem; list-style:none; }
.nav-links a { font:600 .8rem/1 'Chakra Petch',sans-serif; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); text-decoration:none; padding:.4rem 0; position:relative; transition:color .2s; }
.nav-links a::after { content:''; position:absolute; left:0; right:100%; bottom:-2px; height:2px; background:var(--red); transition:right .25s; }
.nav-links a:hover, .nav-links a.on { color:var(--text); }
.nav-links a:hover::after, .nav-links a.on::after { right:0; }
.nav-right { display:flex; align-items:center; gap:.55rem; }
.icon-btn { width:40px; height:40px; display:grid; place-items:center; background:var(--surface-2); color:var(--text); border:1px solid var(--line); cursor:pointer;
    clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px); transition:background .2s; }
.icon-btn:hover { background:var(--surface-3); }
.icon-btn svg { width:18px; height:18px; }
.ic-sun { display:none; } :root[data-theme="light"] .ic-sun { display:block; } :root[data-theme="light"] .ic-moon { display:none; }
.lang { display:flex; background:var(--surface-2); border:1px solid var(--line); padding:3px; gap:2px; clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px); }
.lang button { border:0; background:transparent; color:var(--muted); font:600 .74rem/1 'IBM Plex Mono',monospace; padding:.5rem .6rem; cursor:pointer; display:flex; align-items:center; gap:.35rem; }
.lang button svg { width:18px; height:12px; box-shadow:0 0 0 1px rgba(0,0,0,.25); }
.lang button.on { background:var(--red); color:#fff; }
.burger { display:none; }
.nav-drawer { position:fixed; inset:0; z-index:1200; pointer-events:none; }
.nav-drawer .back { position:absolute; inset:0; background:rgba(0,0,0,.55); opacity:0; transition:opacity .3s; }
.nav-drawer .panel { position:absolute; top:0; right:0; bottom:0; width:min(300px,84vw); background:var(--surface); padding:1.4rem 1.6rem; transform:translateX(100%); transition:transform .35s; border-left:3px solid var(--red); overflow-y:auto; }
.nav-drawer.open { pointer-events:auto; }
.nav-drawer.open .back { opacity:1; }
.nav-drawer.open .panel { transform:none; }
.nav-drawer a { display:block; font:700 1.15rem/1 'Chakra Petch',sans-serif; letter-spacing:.06em; text-transform:uppercase; color:var(--text); text-decoration:none; padding:1rem 0; border-bottom:1px solid var(--line); }
.nav-drawer .close { display:block; margin:0 0 .6rem auto; background:none; border:0; color:var(--muted); font-size:1.8rem; cursor:pointer; }

/* ── HERO: 3D sumo arena ── */
.hero { padding-top:calc(var(--topbar) + var(--navh)); min-height:100vh; display:flex; align-items:center; position:relative; overflow:hidden; }
.hero::before { content:''; position:absolute; right:-10vw; top:10%; width:60vw; height:60vw; border-radius:50%; background:radial-gradient(circle,var(--red-soft),transparent 65%); pointer-events:none; }
.hero-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:2.5rem; align-items:center; width:100%; padding-top:2.5rem; padding-bottom:3rem; }
.hero h1 { font:700 clamp(2.6rem,5.6vw,4.9rem)/.95 'Chakra Petch',sans-serif; text-transform:uppercase; letter-spacing:-.01em; margin:1.1rem 0 1.4rem; }
.hero h1 em { font-style:normal; color:var(--red); }
.hero h1 .stroke { color:transparent; -webkit-text-stroke:1.5px var(--text); }
.hero .sub { color:var(--muted); font-size:1.08rem; max-width:46ch; margin-bottom:2rem; }
.hero-cta { display:flex; gap:.8rem; flex-wrap:wrap; }
.hero-meet { margin-top:2.2rem; display:inline-grid; grid-template-columns:auto 1fr; gap:.2rem 1rem; align-items:center; padding:1rem 1.2rem; background:var(--surface); border-left:3px solid var(--yel); }
.hero-meet .ic { grid-row:span 2; width:42px; height:42px; display:grid; place-items:center; background:var(--yel-soft); color:var(--yel); }
.hero-meet .ic svg { width:22px; height:22px; }
.hero-meet b { font:700 1rem/1.2 'Chakra Petch',sans-serif; letter-spacing:.04em; text-transform:uppercase; }
.hero-meet span { font-size:.85rem; color:var(--muted); }

.arena { position:relative; aspect-ratio:1.12; width:100%; background:linear-gradient(180deg,var(--surface),var(--bg-2)); }
.arena canvas { position:absolute; inset:0; width:100% !important; height:100% !important; cursor:grab; touch-action:pan-y; }
.arena canvas:active { cursor:grabbing; }
.arena-corner { position:absolute; width:22px; height:22px; border:2px solid var(--red); pointer-events:none; z-index:2; }
.arena-corner.tl { left:10px; top:10px; border-right:0; border-bottom:0; } .arena-corner.tr { right:10px; top:10px; border-left:0; border-bottom:0; }
.arena-corner.bl { left:10px; bottom:10px; border-right:0; border-top:0; } .arena-corner.br { right:10px; bottom:10px; border-left:0; border-top:0; }
.hud { position:absolute; left:0; right:0; top:0; display:flex; justify-content:space-between; align-items:flex-start; padding:1.1rem 1.4rem; z-index:3; pointer-events:none; font-family:'IBM Plex Mono',monospace; }
.hud-side { display:flex; flex-direction:column; gap:.2rem; min-width:0; }
.hud-side.r { align-items:flex-end; text-align:right; }
.hud-team { font:600 .66rem/1 'IBM Plex Mono',monospace; letter-spacing:.16em; text-transform:uppercase; color:var(--muted-2); }
.hud-name { font:700 1.05rem/1.1 'Chakra Petch',sans-serif; letter-spacing:.04em; text-transform:uppercase; white-space:nowrap; }
.hud-side.l .hud-name { color:var(--red-2); } .hud-side.r .hud-name { color:var(--yel); }
.hud-score { font:700 2rem/1 'Chakra Petch',sans-serif; display:flex; gap:.55rem; align-items:center; padding:.35rem .9rem; background:var(--nav-bg); backdrop-filter:blur(6px); }
.hud-score i { font-style:normal; color:var(--muted-2); font-size:1.2rem; }
.hud-round { font-size:.62rem; letter-spacing:.18em; color:var(--muted-2); text-align:center; margin-top:.3rem; }
.hud-mid { display:flex; flex-direction:column; align-items:center; }
.hud-call { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%) scale(.9); z-index:3; pointer-events:none; font:700 clamp(2rem,6vw,4rem)/1 'Chakra Petch',sans-serif; letter-spacing:.06em; text-transform:uppercase;
    color:#fff; text-shadow:0 0 18px rgba(0,0,0,.65), 0 4px 0 rgba(0,0,0,.35); opacity:0; transition:opacity .2s, transform .25s; white-space:nowrap; max-width:92%; }
.hud-call { font-size:clamp(1.5rem,3.6vw,3rem); }
.hud-call.show { opacity:1; transform:translate(-50%,-50%) scale(1); }
.hud-call.red { color:var(--red-2); } .hud-call.yel { color:var(--yel); }
.arena-bar { position:absolute; left:0; right:0; bottom:0; z-index:3; display:flex; align-items:center; justify-content:space-between; gap:.8rem; padding:1rem 1.4rem; pointer-events:none; }
.arena-bar > * { pointer-events:auto; }
.arena-hint { font:500 .68rem/1.3 'IBM Plex Mono',monospace; color:var(--muted-2); letter-spacing:.06em; }
.arena-bar { justify-content:flex-start; }
.arena-bar .boost { margin-left:auto; }
.arena-hint { flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
@media (max-width:1300px) { .arena-hint { display:none; } }
.arena-modes { display:flex; gap:2px; padding:3px; background:var(--nav-bg); backdrop-filter:blur(6px); border:1px solid var(--line); flex-shrink:0; }
.arena-modes button { border:0; background:transparent; color:var(--muted); font:700 .72rem/1 'Chakra Petch',sans-serif; letter-spacing:.1em; text-transform:uppercase; padding:.55rem .75rem; cursor:pointer; transition:background .2s, color .2s; }
.arena-modes button:hover { color:var(--text); }
.arena-modes button.on { background:var(--text); color:var(--bg); }
.hud-hp { display:none; width:min(150px,28vw); height:7px; background:rgba(127,127,127,.25); margin-top:.35rem; clip-path:polygon(0 0,100% 0,calc(100% - 4px) 100%,0 100%); }
.hud-hp.r { clip-path:polygon(0 0,100% 0,100% 100%,4px 100%); }
.hud-hp i { display:block; height:100%; width:100%; background:var(--red-2); transition:width .25s; }
.hud-hp.r i { background:var(--yel); margin-left:auto; }
.mode-ant .hud-hp { display:block; }
.hud-parts { display:none; gap:3px; margin-top:5px; }
.mode-ant .hud-parts { display:flex; }
.hud-parts.r { justify-content:flex-end; }
.hud-parts i { position:relative; width:30px; height:13px; background:rgba(127,127,127,.22); overflow:hidden; font-style:normal; }
.hud-parts i b { position:absolute; left:0; top:0; bottom:0; background:rgba(120,210,140,.75); transition:width .25s; }
.hud-parts i.low b { background:rgba(255,170,40,.85); }
.hud-parts i.dead { background:rgba(238,65,54,.35); }
.hud-parts i::after { content:attr(data-k); position:absolute; inset:0; display:grid; place-items:center; font:700 .5rem/1 'IBM Plex Mono',monospace; letter-spacing:.06em; color:#fff; text-shadow:0 0 3px #000; }
.hud-parts i.dead::after { text-decoration:line-through; }
@media (max-width:640px) { .hud-parts i { width:22px; height:11px; } .hud-parts i::after { font-size:.42rem; } }
.hud-type { display:block; font:500 .6rem/1.2 'IBM Plex Mono',monospace; letter-spacing:.12em; text-transform:uppercase; color:var(--muted-2); }
.cam-auto { display:inline-flex; align-items:center; gap:.4rem; padding:.62rem .8rem; border:1px solid var(--line); background:var(--nav-bg); backdrop-filter:blur(6px); color:var(--text); cursor:pointer;
    font:700 .72rem/1 'Chakra Petch',sans-serif; letter-spacing:.1em; text-transform:uppercase; margin-left:auto; transition:background .2s; }
.cam-auto:hover { background:var(--surface-3); }
.cam-auto[hidden] { display:none; }
.cam-auto:not([hidden]) + .boost { margin-left:.5rem; }
.boost { display:inline-flex; align-items:center; gap:.5rem; padding:.7rem 1.1rem; border:0; cursor:pointer; background:var(--red); color:#fff; font:700 .8rem/1 'Chakra Petch',sans-serif; letter-spacing:.12em; text-transform:uppercase;
    clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px); position:relative; overflow:hidden; user-select:none; -webkit-user-select:none; touch-action:manipulation; }
.boost::after { content:''; position:absolute; left:0; bottom:0; height:3px; width:var(--charge,100%); background:var(--yel); transition:width .1s linear; }
.boost:active, .boost.hit { filter:brightness(1.25); transform:scale(.97); }
.boost[disabled] { opacity:.55; cursor:default; }
.boost kbd { font:600 .62rem/1 'IBM Plex Mono',monospace; padding:.2rem .35rem; background:rgba(0,0,0,.25); }
.arena-loader { position:absolute; left:50%; top:50%; width:44px; height:44px; margin:-22px 0 0 -22px; border:3px solid var(--line); border-top-color:var(--red); border-radius:50%; animation:spin .9s linear infinite; }
.arena.ready .arena-loader { display:none; }
@keyframes spin { to { transform:rotate(360deg); } }
.arena-fallback { position:absolute; inset:0; display:none; place-items:center; }
.arena.nogl .arena-fallback { display:grid; } .arena.nogl .arena-loader { display:none; }
.arena-fallback img { width:70%; height:70%; object-fit:cover; opacity:.85; }

/* ── artimiausios varžybos ── */
.event { position:relative; background:#121317; color:#F1F2F4; overflow:hidden; }
:root[data-theme="light"] .event { background:#16181C; }
.event-in { display:grid; grid-template-columns:1.25fr 1fr; gap:2.5rem; align-items:center; padding-top:3rem; padding-bottom:3rem; }
.event .kicker { color:var(--yel); } .event .kicker::before { background:var(--yel); }
.event h2 { font:700 clamp(1.9rem,4vw,3rem)/1 'Chakra Petch',sans-serif; text-transform:uppercase; margin:.7rem 0 .8rem; }
.event h2 em { font-style:normal; color:var(--yel); }
.event p { color:#A9AFB9; max-width:52ch; }
.event-meta { display:flex; flex-wrap:wrap; gap:.5rem 1.4rem; margin:1.2rem 0 1.5rem; font:600 .85rem/1.3 'IBM Plex Mono',monospace; }
.event-meta span { display:inline-flex; align-items:center; gap:.45rem; }
.event-meta svg { width:16px; height:16px; color:var(--yel); }
.event-btns { display:flex; flex-wrap:wrap; gap:.7rem; }
.event .btn-ghost { background:#2A2E36; color:#F1F2F4; } .event .btn-ghost:hover { background:#F1F2F4; color:#121317; }
.countdown { display:grid; grid-template-columns:repeat(4,1fr); gap:.6rem; }
.cd { background:#1C1F25; padding:1.1rem .6rem .9rem; text-align:center; clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px); border-top:3px solid var(--yel); }
.cd b { display:block; font:700 clamp(2rem,4.5vw,3.2rem)/1 'Chakra Petch',sans-serif; font-variant-numeric:tabular-nums; }
.cd span { font:500 .64rem/1 'IBM Plex Mono',monospace; letter-spacing:.16em; text-transform:uppercase; color:#8D94A0; }
.event-stats { display:flex; justify-content:space-between; gap:1rem; margin-top:1rem; font:500 .74rem/1.4 'IBM Plex Mono',monospace; color:#8D94A0; flex-wrap:wrap; }
.event-stats b { color:#F1F2F4; font-weight:600; }
.event.past .countdown { display:none; }
.event-done { display:none; font:700 1.4rem/1.2 'Chakra Petch',sans-serif; text-transform:uppercase; color:var(--yel); }
.event.past .event-done { display:block; }

/* ── skaičiai ── */
.stats { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--surface); }
.stat { padding:1.8rem 1.4rem; border-right:1px solid var(--line); }
.stat:last-child { border-right:0; }
.stat b { display:block; font:700 clamp(2rem,3.6vw,2.8rem)/1 'Chakra Petch',sans-serif; }
.stat b sup { font-size:.5em; color:var(--red); vertical-align:top; }
.stat span { font:500 .74rem/1.4 'IBM Plex Mono',monospace; color:var(--muted); letter-spacing:.05em; text-transform:uppercase; }

/* ── apie ── */
.about-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:3.5rem; align-items:start; }
.about-text p { color:var(--muted); margin-bottom:1rem; max-width:60ch; }
.about-text p strong { color:var(--text); }
.quote { margin:1.6rem 0 0; padding:1.3rem 1.5rem; background:var(--surface); border-left:3px solid var(--red); font-size:1.02rem; font-style:italic; color:var(--text); }
.learn { display:grid; grid-template-columns:repeat(2,1fr); gap:.8rem; margin-top:1.8rem; }
.learn div { display:flex; gap:.7rem; align-items:center; padding:.85rem 1rem; background:var(--surface); font-weight:600; font-size:.92rem; }
.learn svg { width:22px; height:22px; color:var(--red); flex-shrink:0; }
.about-media { position:relative; }
.about-media .main { aspect-ratio:4/3; object-fit:cover; width:100%; }
.about-media .tag { position:absolute; left:-1rem; bottom:-1rem; background:var(--yel); color:#17130a; padding:1rem 1.2rem; font:700 1rem/1.15 'Chakra Petch',sans-serif; text-transform:uppercase; letter-spacing:.04em; max-width:230px; }
.about-media .tag small { display:block; font:600 .68rem/1.3 'IBM Plex Mono',monospace; letter-spacing:.06em; text-transform:none; margin-top:.25rem; }
.video-btn { margin-top:2.4rem; position:relative; display:block; aspect-ratio:16/9; overflow:hidden; background:#000; border:0; cursor:pointer; width:100%; padding:0; }
.video-btn img { width:100%; height:100%; object-fit:cover; opacity:.75; transition:opacity .3s, transform .6s; }
.video-btn:hover img { opacity:.9; transform:scale(1.03); }
.video-btn .play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:74px; height:74px; display:grid; place-items:center; background:var(--red); color:#fff; clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px); }
.video-btn .play svg { width:28px; height:28px; margin-left:4px; }
.video-btn .cap { position:absolute; left:1rem; bottom:.9rem; color:#fff; font:600 .74rem/1.3 'IBM Plex Mono',monospace; letter-spacing:.05em; text-shadow:0 1px 6px #000; }
.video-btn iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }

/* ── prisijunk ── */
.join { display:grid; grid-template-columns:1fr 1.1fr; gap:0; background:var(--surface); }
.join-card { background:var(--red); color:#fff; padding:2.6rem; position:relative; overflow:hidden; }
.join-card::after { content:''; position:absolute; right:-40px; bottom:-40px; width:220px; height:220px; background:url('../img/logo-eye.svg') center/contain no-repeat; opacity:.13; filter:brightness(0) invert(1); }
.join-card .kicker { color:#fff; } .join-card .kicker::before { background:#fff; }
.join-card h3 { font:700 clamp(1.7rem,3vw,2.3rem)/1.05 'Chakra Petch',sans-serif; text-transform:uppercase; margin:.8rem 0 1.4rem; }
.ticket { display:grid; grid-template-columns:auto 1fr; gap:.9rem 1rem; align-items:center; position:relative; z-index:1; }
.ticket .ic { width:40px; height:40px; display:grid; place-items:center; background:rgba(255,255,255,.16); }
.ticket .ic svg { width:20px; height:20px; }
.ticket b { display:block; font:700 1.05rem/1.2 'Chakra Petch',sans-serif; letter-spacing:.03em; }
.ticket span { font-size:.84rem; opacity:.85; }
.join-card .btn { margin-top:1.8rem; background:#fff; color:var(--red); position:relative; z-index:1; }
.steps { padding:2.6rem; display:flex; flex-direction:column; gap:1.3rem; }
.step { display:grid; grid-template-columns:auto 1fr; gap:1.1rem; align-items:start; }
.step-n { font:700 1.6rem/1 'Chakra Petch',sans-serif; color:var(--red); width:52px; height:52px; display:grid; place-items:center; background:var(--red-soft); clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px); }
.step h4 { font:700 1.1rem/1.2 'Chakra Petch',sans-serif; text-transform:uppercase; letter-spacing:.03em; margin-bottom:.25rem; }
.step p { color:var(--muted); font-size:.92rem; }
.faq { margin-top:2.2rem; display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; }
.faq details { background:var(--surface); padding:1.1rem 1.3rem; border-top:2px solid var(--line); transition:border-color .2s; }
.faq details[open] { border-color:var(--red); }
.faq summary { cursor:pointer; font:700 .98rem/1.3 'Chakra Petch',sans-serif; letter-spacing:.02em; list-style:none; display:flex; justify-content:space-between; gap:.8rem; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary::after { content:'+'; color:var(--red); font-size:1.3rem; line-height:1; transition:transform .2s; }
.faq details[open] summary::after { transform:rotate(45deg); }
.faq p { color:var(--muted); font-size:.9rem; margin-top:.7rem; }

/* ── robotai ── */
.filters { display:flex; flex-wrap:wrap; gap:.45rem; }
.filter { border:1px solid var(--line); background:transparent; color:var(--muted); font:600 .74rem/1 'IBM Plex Mono',monospace; letter-spacing:.08em; text-transform:uppercase; padding:.6rem .95rem; cursor:pointer; transition:all .2s; }
.filter:hover { color:var(--text); border-color:var(--muted-2); }
.filter.on { background:var(--text); color:var(--bg); border-color:var(--text); }
.filter sup { font-size:.62rem; margin-left:.2rem; color:var(--red); }
.filter.on sup { color:var(--red-2); }
.robots { display:grid; grid-template-columns:repeat(4,1fr); gap:1.1rem; }
.robot { background:var(--surface); display:flex; flex-direction:column; cursor:pointer; transition:transform .3s; text-align:left; border:0; color:inherit; font:inherit; padding:0; }
.robot:hover { transform:translateY(-5px); }
.robot.hide { display:none; }
.robot-img { position:relative; aspect-ratio:4/5; overflow:hidden; background:var(--surface-2); }
.robot-img img { width:100%; height:100%; object-fit:cover; transition:transform .6s; }
.robot:hover .robot-img img { transform:scale(1.06); }
.robot-class { position:absolute; left:0; top:.9rem; padding:.35rem .7rem; background:var(--red); color:#fff; font:600 .62rem/1 'IBM Plex Mono',monospace; letter-spacing:.12em; text-transform:uppercase; }
.robot-class.mega { background:var(--yel); color:#17130a; }
.robot-class.ant { background:#3A7BFF; } .robot-class.other { background:#4A505B; }
.robot-medals { position:absolute; right:.7rem; top:.8rem; display:flex; gap:.25rem; }
.medal { width:24px; height:24px; border-radius:50%; display:grid; place-items:center; font:700 .66rem/1 'Chakra Petch',sans-serif; color:#17130a; box-shadow:0 2px 6px rgba(0,0,0,.4); }
.medal.m1 { background:#F5C542; } .medal.m2 { background:#C9CED6; } .medal.m3 { background:#D08A4E; }
.robot-body { padding:1.05rem 1.15rem 1.25rem; flex:1; display:flex; flex-direction:column; gap:.35rem; }
.robot-name { font:700 1.2rem/1.1 'Chakra Petch',sans-serif; text-transform:uppercase; letter-spacing:.03em; }
.robot-spec { font:500 .72rem/1.4 'IBM Plex Mono',monospace; color:var(--muted-2); }
.robot-desc { font-size:.86rem; color:var(--muted); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.robot-more { margin-top:auto; padding-top:.5rem; font:600 .7rem/1 'IBM Plex Mono',monospace; letter-spacing:.08em; text-transform:uppercase; color:var(--red); }

/* robotų kortelė (modalas) */
.modal { position:fixed; inset:0; z-index:1400; display:grid; place-items:center; padding:5vh 4vw; background:rgba(6,7,9,.86); opacity:0; visibility:hidden; transition:opacity .25s, visibility .25s; }
.modal.open { opacity:1; visibility:visible; }
.modal-box { width:min(980px,100%); max-height:90vh; overflow:auto; background:var(--surface); display:grid; grid-template-columns:.9fr 1.1fr; transform:translateY(14px); transition:transform .3s; }
.modal.open .modal-box { transform:none; }
.modal-box img { width:100%; height:100%; object-fit:cover; min-height:320px; max-height:90vh; }
.modal-body { padding:2.2rem; display:flex; flex-direction:column; gap:.8rem; position:relative; }
.modal-body h3 { font:700 2.1rem/1 'Chakra Petch',sans-serif; text-transform:uppercase; }
.modal-body p { color:var(--muted); }
.modal-close { position:absolute; right:1rem; top:1rem; width:40px; height:40px; border:0; background:var(--surface-3); color:var(--text); font-size:1.3rem; cursor:pointer; }
.modal-ach { list-style:none; display:flex; flex-direction:column; gap:.5rem; margin-top:.4rem; }
.modal-ach li { display:flex; gap:.7rem; align-items:center; font-size:.9rem; }
.modal-ach .mono { color:var(--muted-2); font-size:.74rem; }

/* ── pasiekimai ── */
.ach-wrap { display:grid; grid-template-columns:.85fr 1.15fr; gap:3rem; align-items:start; }
.podium { position:sticky; top:calc(var(--topbar) + var(--navh) + 2rem); }
.podium-bars { display:grid; grid-template-columns:repeat(3,1fr); align-items:end; gap:.6rem; height:250px; margin:1.6rem 0 1rem; }
.pbar { display:flex; flex-direction:column; align-items:center; justify-content:flex-end; height:100%; }
.pbar b { font:700 2.4rem/1 'Chakra Petch',sans-serif; margin-bottom:.4rem; }
.pbar i { display:block; width:100%; height:var(--h); clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%,0 10px); display:grid; place-items:start center; padding-top:.7rem; font:700 1.3rem/1 'Chakra Petch',sans-serif; font-style:normal; color:#17130a;
    transform-origin:bottom; transform:scaleY(0); transition:transform 1s cubic-bezier(.2,.8,.2,1); }
.vis .pbar i { transform:none; }
.pbar.p1 i { background:#F5C542; } .pbar.p2 i { background:#C9CED6; } .pbar.p3 i { background:#D08A4E; }
.podium-cap { font:500 .78rem/1.5 'IBM Plex Mono',monospace; color:var(--muted); }
.podium-photo { margin-top:1.6rem; aspect-ratio:16/10; object-fit:cover; width:100%; }
.timeline { position:relative; padding-left:1.6rem; }
.timeline::before { content:''; position:absolute; left:5px; top:.4rem; bottom:.4rem; width:2px; background:linear-gradient(var(--red),var(--line) 40%); }
.tl-year { font:700 1.6rem/1 'Chakra Petch',sans-serif; margin:2rem 0 .8rem; position:relative; }
.tl-year:first-child { margin-top:0; }
.tl-year::before { content:''; position:absolute; left:calc(-1.6rem + 0px); top:.25rem; width:12px; height:12px; background:var(--red); transform:rotate(45deg); }
.tl-item { display:grid; grid-template-columns:auto 1fr auto; gap:1rem; align-items:center; padding:.8rem 1rem; background:var(--surface); margin-bottom:.45rem; }
.tl-item .medal { width:32px; height:32px; font-size:.85rem; }
.tl-item h4 { font:700 .98rem/1.25 'Chakra Petch',sans-serif; letter-spacing:.02em; }
.tl-item p { font-size:.8rem; color:var(--muted); }
.tl-item p b { color:var(--text); font-weight:600; }
.tl-item .when { font:500 .7rem/1 'IBM Plex Mono',monospace; color:var(--muted-2); white-space:nowrap; }
.tl-item.founded { background:var(--red); color:#fff; } .tl-item.founded p, .tl-item.founded .when { color:rgba(255,255,255,.8); }
.tl-more { margin-top:1rem; }
.timeline.collapsed .tl-old { display:none; }

/* ── varžybos (organizuojame) ── */
.comp-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; }
.cat { background:var(--surface); padding:1.4rem; display:flex; flex-direction:column; gap:.55rem; position:relative; overflow:hidden; }
.cat::before { content:''; position:absolute; left:0; top:0; right:0; height:3px; background:var(--c,var(--red)); }
.cat h4 { font:700 1.12rem/1.15 'Chakra Petch',sans-serif; text-transform:uppercase; letter-spacing:.03em; }
.cat .w { font:600 .72rem/1 'IBM Plex Mono',monospace; color:var(--c,var(--red)); letter-spacing:.08em; }
.cat p { font-size:.86rem; color:var(--muted); flex:1; }
.cat .n { font:500 .72rem/1.3 'IBM Plex Mono',monospace; color:var(--muted-2); }
.cat .n b { color:var(--text); }
.cat a { font:600 .72rem/1 'IBM Plex Mono',monospace; letter-spacing:.06em; text-transform:uppercase; color:var(--text); text-decoration:none; display:inline-flex; gap:.35rem; align-items:center; }
.cat a:hover { color:var(--red); }
.cat a svg { width:12px; height:12px; flex-shrink:0; }
.cat .links { display:flex; flex-direction:column; gap:.45rem; margin-top:.3rem; }
.rules { display:flex; flex-wrap:wrap; gap:.6rem; margin-top:2rem; align-items:center; }
.rules > span { font:600 .74rem/1 'IBM Plex Mono',monospace; letter-spacing:.12em; text-transform:uppercase; color:var(--muted-2); margin-right:.4rem; }
.doc { display:inline-flex; align-items:center; gap:.5rem; padding:.6rem .9rem; background:var(--surface); text-decoration:none; font-size:.86rem; font-weight:600; transition:background .2s; }
.doc:hover { background:var(--surface-3); }
.doc svg { width:16px; height:16px; color:var(--red); }
.doc small { font:500 .66rem/1 'IBM Plex Mono',monospace; color:var(--muted-2); }

/* ── paslaugos ── */
.svc-intro { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:end; margin-bottom:2.6rem; }
.svc-why { padding:1.4rem 1.6rem; background:var(--yel-soft); border-left:3px solid var(--yel); color:var(--text); font-size:.95rem; }
.svc-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line); }
.svc { background:var(--bg); padding:1.8rem 1.6rem; display:flex; flex-direction:column; gap:.6rem; transition:background .25s; position:relative; }
.svc:hover { background:var(--surface); }
.svc-top { display:flex; justify-content:space-between; align-items:flex-start; }
.svc-ic { width:46px; height:46px; display:grid; place-items:center; background:var(--red-soft); color:var(--red); }
.svc-ic svg { width:24px; height:24px; }
.svc-n { font:500 .7rem/1 'IBM Plex Mono',monospace; color:var(--muted-2); }
.svc h4 { font:700 1.1rem/1.2 'Chakra Petch',sans-serif; text-transform:uppercase; letter-spacing:.02em; margin-top:.4rem; }
.svc p { font-size:.88rem; color:var(--muted); }
.cta-band { margin-top:2.4rem; display:flex; justify-content:space-between; align-items:center; gap:1.5rem; flex-wrap:wrap; padding:1.8rem 2rem; background:var(--surface); border-left:3px solid var(--red); }
.cta-band h3 { font:700 1.4rem/1.15 'Chakra Petch',sans-serif; text-transform:uppercase; }
.cta-band p { color:var(--muted); font-size:.92rem; max-width:60ch; }

/* ── komanda ── */
.team { display:grid; grid-template-columns:repeat(5,1fr); gap:1rem; }
.member { background:var(--surface); display:flex; flex-direction:column; }
.member-img { aspect-ratio:1; overflow:hidden; position:relative; background:var(--surface-2); }
.member-img img { width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(1.05); transition:filter .4s, transform .5s; }
.member:hover .member-img img { filter:none; transform:scale(1.04); }
.member-role { position:absolute; left:0; bottom:0; padding:.3rem .6rem; background:var(--red); color:#fff; font:600 .6rem/1 'IBM Plex Mono',monospace; letter-spacing:.1em; text-transform:uppercase; }
.member-body { padding:.9rem 1rem 1rem; display:flex; flex-direction:column; gap:.4rem; flex:1; }
.member h4 { font:700 1rem/1.15 'Chakra Petch',sans-serif; letter-spacing:.02em; }
.member .mail { font:500 .72rem/1.3 'IBM Plex Mono',monospace; color:var(--muted); text-decoration:none; word-break:break-all; }
.member .mail:hover { color:var(--red); }
.socials { display:flex; gap:.35rem; margin-top:auto; padding-top:.3rem; }
.socials a { width:28px; height:28px; display:grid; place-items:center; background:var(--surface-3); color:var(--muted); transition:all .2s; }
.socials a:hover { background:var(--red); color:#fff; }
.socials svg { width:14px; height:14px; }

/* ── partneriai ── */
.partners { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:1px; background:var(--line); border:1px solid var(--line); }
.partner { background:var(--surface); display:grid; place-items:center; padding:1.3rem 1rem; aspect-ratio:3/2; transition:background .2s; }
.partner img { max-height:58px; max-width:100%; object-fit:contain; filter:grayscale(1); opacity:.8; transition:filter .3s, opacity .3s; }
:root:not([data-theme="light"]) .partner { background:#E9EBEE; }
.partner:hover img { filter:none; opacity:1; }
.partner img.inv { filter:grayscale(1) invert(1); opacity:.85; } .partner:hover img.inv { filter:invert(1); opacity:1; }   /* baltas logotipas (KU) šviesiame fone */
.partner span { font:700 .9rem/1.2 'Chakra Petch',sans-serif; text-align:center; color:#2a2d33; }

/* ── galerija ── */
.gal { columns:4 240px; column-gap:.8rem; }
.gal button { display:block; width:100%; margin:0 0 .8rem; padding:0; border:0; background:var(--surface-2); cursor:zoom-in; break-inside:avoid; overflow:hidden; position:relative; }
.gal img { width:100%; height:auto; transition:transform .6s, filter .3s; }
.gal button:hover img { transform:scale(1.04); }
.gal button.hide { display:none; }
.gal-more { margin-top:1.6rem; text-align:center; }
.lightbox { position:fixed; inset:0; z-index:1500; background:rgba(5,6,8,.95); display:flex; align-items:center; justify-content:center; padding:4rem 4.5rem; opacity:0; visibility:hidden; transition:opacity .25s, visibility .25s; }
.lightbox.open { opacity:1; visibility:visible; }
.lightbox img { max-width:100%; max-height:calc(100vh - 8rem); object-fit:contain; }
.lb-btn { position:absolute; width:48px; height:48px; border:0; background:rgba(255,255,255,.1); color:#fff; font-size:1.5rem; cursor:pointer; display:grid; place-items:center; transition:background .2s; }
.lb-btn:hover { background:var(--red); }
.lb-close { top:1rem; right:1rem; font-size:1.2rem; } .lb-prev { left:1rem; top:50%; transform:translateY(-50%); } .lb-next { right:1rem; top:50%; transform:translateY(-50%); }
.lb-count { position:absolute; bottom:1.2rem; left:50%; transform:translateX(-50%); color:#9aa0aa; font:500 .8rem 'IBM Plex Mono',monospace; }

/* ── kontaktai ── */
.contact { display:grid; grid-template-columns:1fr 1.2fr; background:var(--surface); }
.contact-info { padding:2.6rem; display:flex; flex-direction:column; gap:1.1rem; }
.contact-info h3 { font:700 1.8rem/1.05 'Chakra Petch',sans-serif; text-transform:uppercase; }
.contact-info > p { color:var(--muted); }
.cline { display:grid; grid-template-columns:44px 1fr; gap:.9rem; align-items:center; text-decoration:none; color:inherit; padding:.55rem 0; border-bottom:1px solid var(--line); }
.cline .ic { width:44px; height:44px; display:grid; place-items:center; background:var(--red-soft); color:var(--red); }
.cline .ic svg { width:20px; height:20px; }
.cline small { display:block; font:500 .66rem/1 'IBM Plex Mono',monospace; letter-spacing:.14em; text-transform:uppercase; color:var(--muted-2); margin-bottom:.3rem; }
.cline b { font-weight:700; font-size:1rem; }
a.cline:hover b { color:var(--red); }
.contact-btns { display:flex; gap:.7rem; flex-wrap:wrap; margin-top:.6rem; }
.map { position:relative; min-height:440px; background:var(--surface-2); z-index:0; }
.map.leaflet-container { background:#e8e6e1; }
:root:not([data-theme="light"]) .map .leaflet-tile-pane { filter:invert(1) hue-rotate(180deg) brightness(.85) contrast(.9) saturate(.5); }
:root:not([data-theme="light"]) .map.leaflet-container { background:#1a1a1c; }
.map-pin { width:34px; height:34px; display:grid; place-items:center; background:var(--red); color:#fff; clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px); box-shadow:0 4px 12px rgba(0,0,0,.4); }
.map-pin img { width:20px; height:20px; filter:brightness(0) invert(1); object-fit:contain; }
.map .leaflet-popup-content { font-family:'Manrope',sans-serif; font-size:.85rem; color:#16181C; line-height:1.45; }

/* ── poraštė ── */
footer { margin-top:5rem; background:#0A0B0D; color:#B4BAC4; }
footer .hazard { height:8px; }
.foot-grid { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:2.5rem; padding:3.5rem 0 2.5rem; }
.foot-logo { font-size:1.55rem; color:#F1F2F4; padding-top:.45rem; --ant:#F1F2F4; }   /* poraštė visada tamsi */
.foot-logo small { color:#8D94A0; }
.foot-logo .eye-o { border-color:#EE4136; }
.foot-brand p { font-size:.88rem; max-width:34ch; margin-top:1rem; color:#8D94A0; }
.foot-col h5 { font:600 .7rem/1 'IBM Plex Mono',monospace; letter-spacing:.16em; text-transform:uppercase; color:#6F7682; margin-bottom:1rem; }
.foot-col a, .foot-col span { display:block; color:#B4BAC4; text-decoration:none; font-size:.88rem; margin-bottom:.55rem; }
.foot-col a:hover { color:var(--yel); }
.foot-bottom { border-top:1px solid #1E2127; padding:1.4rem 0 2rem; display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; font:500 .74rem/1.4 'IBM Plex Mono',monospace; color:#6F7682; }
.foot-bottom a { color:#8D94A0; }

/* ── atsiradimas ── */
.reveal { opacity:0; transform:translateY(24px); transition:opacity .7s ease, transform .7s ease; }
.reveal.vis { opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce) { .reveal { opacity:1; transform:none; transition:none; } html { scroll-behavior:auto; } }

/* ── prisitaikymas ── */
@media (max-width:1220px) { .nav-links { display:none; } .burger { display:grid; } }
@media (max-width:1100px) {
    .robots { grid-template-columns:repeat(3,1fr); } .team { grid-template-columns:repeat(4,1fr); } .partners { grid-template-columns:repeat(4,minmax(0,1fr)); }
    .comp-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:960px) {
    .hero { min-height:0; }
    .hero-grid, .event-in, .about-grid, .join, .ach-wrap, .svc-intro, .contact, .modal-box { grid-template-columns:1fr; }
    .hero-grid { padding-top:1.5rem; }
    .arena { order:-1; aspect-ratio:1.2; }
    .podium { position:static; }
    .stats { grid-template-columns:repeat(2,1fr); } .stat:nth-child(2) { border-right:0; } .stat:nth-child(-n+2) { border-bottom:1px solid var(--line); }
    .svc-grid { grid-template-columns:repeat(2,1fr); } .faq { grid-template-columns:1fr; }
    .foot-grid { grid-template-columns:1fr 1fr; }
    .modal-box img { max-height:46vh; min-height:0; }
    .map { min-height:320px; }
    .about-media .tag { left:.8rem; bottom:.8rem; }
}
@media (max-width:640px) {
    :root { --navh:62px; }
    section.block { padding:4.5rem 0; }
    .topbar-note { display:none; } .topbar-links { margin:0 auto; gap:1.1rem; }
    .brand-txt { font-size:.86rem; } .brand-txt small { display:none; }   /* telefone — tik pagrindinė eilutė */
    .robots { grid-template-columns:repeat(2,1fr); gap:.7rem; } .team { grid-template-columns:repeat(2,1fr); gap:.7rem; }
    .robot-desc { display:none; } .robot-body { padding:.8rem .85rem 1rem; } .robot-name { font-size:1rem; }
    .svc-grid, .comp-grid { grid-template-columns:1fr; } .learn { grid-template-columns:1fr; }
    .partners { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .join-card, .steps, .contact-info, .modal-body { padding:1.6rem; }
    .countdown { gap:.4rem; } .cd { padding:.8rem .3rem .7rem; }
    .hud { padding:.8rem .9rem; } .hud-name { font-size:.82rem; } .hud-score { font-size:1.4rem; padding:.25rem .6rem; }
    .arena-bar { padding:.7rem .9rem; } .arena-hint { display:none; } .arena-modes button { padding:.5rem .55rem; font-size:.66rem; }
    .lightbox { padding:3.5rem .5rem; } .lb-prev, .lb-next { top:auto; bottom:.8rem; transform:none; }
    .tl-item { grid-template-columns:auto 1fr; } .tl-item .when { grid-column:2; }
    .sec-num { display:none; }
    .foot-grid { grid-template-columns:1fr; }
}

@media (hover:none) { .boost kbd { display:none; } }
.arena-bar:has(.cam-auto:not([hidden])) .arena-hint { display:none; }

/* ── „Valdyk pats“ ── */
.play-btn, .play-exit { display:inline-flex; align-items:center; gap:.45rem; padding:.62rem .85rem; border:1px solid var(--line); background:var(--nav-bg); backdrop-filter:blur(6px); color:var(--text); cursor:pointer;
    font:700 .72rem/1 'Chakra Petch',sans-serif; letter-spacing:.1em; text-transform:uppercase; transition:background .2s, border-color .2s; }
.play-btn { margin-left:auto; border-color:var(--yel); }
.play-btn:hover { background:var(--yel); color:#17130a; }
.play-exit { display:none; margin-left:auto; border-color:var(--red); }
.playing .play-btn, .playing .arena-hint { display:none; }
.playing .play-exit { display:inline-flex; }
.play-btn ~ .cam-auto { margin-left:.5rem; }
.picker { position:absolute; inset:0; z-index:6; display:grid; place-items:center; background:rgba(8,9,12,.72); backdrop-filter:blur(4px); padding:1rem; }
.picker[hidden] { display:none; }
.picker-box { position:relative; width:min(520px,100%); background:var(--surface); padding:1.4rem; border-top:3px solid var(--yel); }
.picker-box h4 { font:700 1.1rem/1.2 'Chakra Petch',sans-serif; text-transform:uppercase; letter-spacing:.06em; margin-bottom:1rem; padding-right:2rem; }
.picker-x { position:absolute; right:.6rem; top:.6rem; width:34px; height:34px; border:0; background:var(--surface-3); color:var(--text); font-size:1.2rem; cursor:pointer; }
.pick-list { display:grid; grid-template-columns:1fr 1fr; gap:.6rem; }
.pick { text-align:left; border:1px solid var(--line); background:var(--surface-2); color:var(--text); padding:.8rem .9rem; cursor:pointer; display:flex; flex-direction:column; gap:.3rem; transition:border-color .2s, transform .2s; }
.pick:hover { border-color:var(--yel); transform:translateY(-2px); }
.pick b { font:700 .95rem/1.1 'Chakra Petch',sans-serif; text-transform:uppercase; letter-spacing:.04em; }
.pick span { font-size:.78rem; color:var(--muted); line-height:1.35; }
.pick-keys { margin-top:.9rem; font:500 .72rem/1.4 'IBM Plex Mono',monospace; color:var(--muted-2); }
.play-keys { display:none; position:absolute; left:50%; bottom:4.3rem; transform:translateX(-50%); z-index:3; font:500 .66rem/1 'IBM Plex Mono',monospace; color:var(--muted); background:var(--nav-bg); padding:.4rem .7rem; white-space:nowrap; pointer-events:none; }
.playing .play-keys { display:block; }
.joy { display:none; position:absolute; left:1rem; bottom:4.4rem; z-index:4; width:96px; height:96px; border-radius:50%; background:rgba(255,255,255,.08); border:2px solid rgba(255,255,255,.25); touch-action:none; }
.joy i { position:absolute; left:50%; top:50%; width:40px; height:40px; margin:-20px 0 0 -20px; border-radius:50%; background:var(--yel); box-shadow:0 2px 10px rgba(0,0,0,.4); }
@media (hover:none) { .playing .joy { display:block; } .playing .play-keys { display:none; } .pick-keys { display:none; } }
@media (max-width:640px) { .pick-list { grid-template-columns:1fr; } .pick span { display:none; } .picker-box { padding:1rem; } }
.hud-call.small { font-size:clamp(1rem,2.2vw,1.55rem); white-space:normal; text-align:center; line-height:1.25; max-width:84%; }
/* sumo jutikliai HUD'e: ◤ kairys kampinis · ▲ priekinis · ◥ dešinys kampinis (galas aklas) */
.hud-sens { display:none; gap:4px; margin-top:6px; }
.sumo-auto .hud-sens { display:flex; }
.hud-sens.r { justify-content:flex-end; }
.hud-sens i { width:16px; height:10px; background:rgba(127,127,127,.28); transition:background .1s; }
.hud-sens i:nth-child(1) { clip-path:polygon(0 0,100% 100%,0 100%); }
.hud-sens i:nth-child(2) { clip-path:polygon(50% 0,100% 100%,0 100%); }
.hud-sens i:nth-child(3) { clip-path:polygon(100% 0,100% 100%,0 100%); }
.hud-side.l .hud-sens i.on { background:var(--red-2); }
.hud-side.r .hud-sens i.on { background:var(--yel); }
.hud-sens i.on.flag { background:#fff; }
.boost.used { opacity:.45; filter:grayscale(.8); cursor:default; }
.arena:not(.can-play) .play-btn { display:none; }
.arena:not(.can-play) .cam-auto { margin-left:auto; }
.arena-modes button { padding:.55rem .6rem; }
@media (max-width:1700px) { .arena-modes button span { display:none; } .arena-modes button::after { content:attr(data-s); } .play-btn span { display:none; } }

/* garso mygtukas (arena) */
.snd-btn { display:inline-grid; place-items:center; width:40px; height:38px; border:1px solid var(--line); background:var(--nav-bg); backdrop-filter:blur(6px); color:var(--muted); cursor:pointer; margin-left:auto; transition:color .2s, border-color .2s, background .2s; }
.snd-btn:hover { background:var(--surface-3); color:var(--text); }
.snd-btn .snd-on, .snd-btn.on .snd-off { display:none; }
.snd-btn.on .snd-on { display:block; }
.snd-btn.on { color:var(--yel); border-color:var(--yel); }
.arena-bar .snd-btn ~ .cam-auto, .arena-bar .snd-btn ~ .boost { margin-left:.5rem; }

/* 1 / 2 žaidėjai */
.pick-mode { grid-column:1 / -1; display:flex; gap:.4rem; margin-bottom:.2rem; }
.pick-mode button { flex:1; padding:.55rem .7rem; border:1px solid var(--line); background:var(--surface-2); color:var(--muted); font:700 .74rem/1 'Chakra Petch',sans-serif; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; }
.pick-mode button.on { border-color:var(--yel); color:var(--text); box-shadow:inset 0 -3px 0 var(--yel); }
.pick-mode button:disabled:not(.on) { opacity:.45; cursor:default; }
@media (hover:none) { .pick-mode { display:none; } }

/* paslėptas robotukas: paspaudus logotipą išlenda iš O, paspaudus vėl — grįžta (animacija — main.js) */
.brand-mascot { transform-origin:50% 60%; will-change:transform; }
.foot-full { height:64px; width:auto; filter:invert(1) hue-rotate(180deg) brightness(1.15) saturate(1.3); }
.foot-full[hidden], .foot-logo[hidden] { display:none; }

/* visas ekranas (arena) */
.fs-btn { margin-left:.5rem; }
.fs-btn .fs-out, .fs-btn.on .fs-in { display:none; }
.fs-btn.on .fs-out { display:block; }
.arena:fullscreen { aspect-ratio:auto; width:100vw; height:100vh; clip-path:none; }
.arena:-webkit-full-screen { aspect-ratio:auto; width:100vw; height:100vh; clip-path:none; }
.arena.arena-max { position:fixed; inset:0; z-index:3000; aspect-ratio:auto; width:100vw; height:100vh; height:100dvh; clip-path:none; }
html.arena-max-on, html.arena-max-on body { overflow:hidden; }

/* telefonai: juosta dviem eilutėm; liečiamuose ekranuose BOOST — didelis apvalus mygtukas nykščiui (dešinėje, priešais vairalazdę) */
@media (max-width:640px) {
    .arena-bar { flex-wrap:wrap; gap:.4rem; padding:.55rem .6rem; }
    .arena-modes { flex:1 1 100%; } .arena-modes button { flex:1; }
    .arena-bar .snd-btn { margin-left:0; }
    .arena-bar .play-btn, .arena-bar .play-exit { margin-left:0; }
}
@media (hover:none) {
    .arena-bar .boost { position:absolute; right:.9rem; bottom:calc(100% + .7rem); width:76px; height:76px; padding:0; margin:0; border-radius:50%; clip-path:none;
        flex-direction:column; justify-content:center; gap:.15rem; font-size:.66rem; box-shadow:0 6px 20px rgba(0,0,0,.5); touch-action:manipulation; }
    .arena-bar .boost svg { width:24px; height:24px; }
    .arena-bar .boost:active { transform:scale(.94); }
}
@media (hover:none) and (max-width:640px) { .arena-bar .boost { width:66px; height:66px; } }
@media (hover:none) and (max-width:640px) { .joy { bottom:7rem; width:88px; height:88px; } }   /* virš dviejų eilučių juostos */
/* telefonas horizontaliai: arena telpa į ekraną (be slinkimo), mygtukai matomi kartu su ringu */
@media (orientation:landscape) and (max-height:520px) {
    .arena { aspect-ratio:auto; height:calc(100vh - var(--topbar, 34px) - var(--navh, 64px) - 14px); height:calc(100svh - var(--topbar, 34px) - var(--navh, 64px) - 14px); }
}
/* siaura arena (ir kompiuteryje, kai arena šoninėje kolonoje) — juosta dviem eilutėm, BOOST nenukerpamas */
.arena { container-type:inline-size; container-name:arena; }
@container arena (max-width:620px) {
    .arena-bar { flex-wrap:wrap; gap:.4rem; padding:.55rem .6rem; }
    .arena-modes { flex:1 1 100%; } .arena-modes button { flex:1; }
    .arena-bar .snd-btn { margin-left:0; }
    .arena-bar .play-btn, .arena-bar .play-exit { margin-left:0; }
    .arena-hint { display:none; }
    .arena-bar .snd-btn ~ .boost { margin-left:auto; }
}
