/* ===== KOMPYUTER LABORATORIYASI (tezyoz-laboratoriya) =====
   Sahifa: hero + laboratoriya (virtual kompyuter + jurnal) + maslahatlar.
   Virtual kompyuterning o'z mavzusi bor (.lb-os / .lb-os.dark), sayt mavzusiga bog'liq emas. */
.tool-page.container { max-width: 1240px; }

/* ---------- HERO ---------- */
.lbh-hero { position:relative; overflow:hidden; border-radius:26px; padding:34px 32px; margin-top:16px; color:var(--text);
  background:radial-gradient(78% 120% at 92% -22%, color-mix(in srgb, #0ea5e9 22%, transparent) 0%, transparent 55%), radial-gradient(70% 110% at -4% 120%, color-mix(in srgb, var(--accent) 20%, transparent) 0%, transparent 55%), var(--surface);
  border:1px solid var(--border); box-shadow:0 30px 60px -34px rgba(49,46,129,.4); }
.lbh-hero::before { content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image:linear-gradient(color-mix(in srgb, var(--accent) 9%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--accent) 9%, transparent) 1px, transparent 1px);
  background-size:34px 34px; -webkit-mask-image:radial-gradient(120% 90% at 10% -10%, #000 0%, transparent 58%); mask-image:radial-gradient(120% 90% at 10% -10%, #000 0%, transparent 58%); }
.lbh-in { position:relative; z-index:1; display:grid; grid-template-columns:1fr 400px; gap:30px; align-items:center; }
@media (max-width:900px){ .lbh-in { grid-template-columns:1fr; gap:24px; } }
.lbh-pill { display:inline-flex; align-items:center; gap:8px; padding:7px 14px; border-radius:999px; background:var(--accent-soft); color:var(--accent); border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border)); font:800 12px var(--font-display),system-ui; }
.lbh-hero h1 { margin:15px 0 10px; font:800 clamp(25px,4vw,38px) var(--font-display),system-ui; letter-spacing:-.02em; line-height:1.13; color:var(--text); }
.lbh-hero h1 .grad { background:linear-gradient(120deg, #0ea5e9, var(--accent)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.lbh-sub { margin:0 0 22px; font-size:15px; line-height:1.62; max-width:500px; color:var(--muted); }
.lbh-cta-row { display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.lbh-cta { display:inline-flex; align-items:center; gap:9px; padding:14px 24px; border-radius:14px; font:800 15px var(--font-display),system-ui; text-decoration:none; color:#fff; cursor:pointer; border:none;
  background:linear-gradient(135deg, var(--accent), var(--accent-2)); box-shadow:0 12px 26px -8px color-mix(in srgb, var(--accent) 60%, transparent); transition:transform .16s, box-shadow .16s; }
.lbh-cta:hover { transform:translateY(-2px); text-decoration:none; color:#fff; }
.lbh-cta svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.lbh-trust { display:flex; align-items:center; gap:11px; flex-wrap:wrap; color:var(--muted); font:700 12.5px var(--font-display),system-ui; white-space:nowrap; }
.lbh-trust b { color:var(--text); }
.lbh-trust .dot { width:4px; height:4px; border-radius:50%; background:color-mix(in srgb, var(--muted) 60%, var(--border)); }
/* Hero o'ng tomoni: jurnal ko'rinishi (haqiqiy progress) */
.lbh-card { background:var(--surface); border:1px solid var(--border); border-radius:20px; padding:18px; box-shadow:0 22px 46px -22px rgba(30,27,75,.32); }
.lbh-card-top { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:12px; }
.lbh-rank { display:flex; align-items:center; gap:10px; min-width:0; }
.lbh-rank .ic { width:38px; height:38px; border-radius:12px; display:grid; place-items:center; background:linear-gradient(140deg,#0ea5e9,var(--accent)); color:#fff; flex-shrink:0; }
.lbh-rank .ic svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.lbh-rank small { display:block; font:700 10.5px var(--font-display),system-ui; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.lbh-rank > div { min-width:0; }
.lbh-rank b { display:block; font:800 15px var(--font-display),system-ui; line-height:1.2; color:var(--text); }
.lbh-pct { font:800 22px var(--font-display),system-ui; color:var(--accent); font-variant-numeric:tabular-nums; }
.lbh-list { display:grid; gap:5px; margin:0; padding:0; list-style:none; }
.lbh-list li { display:flex; align-items:center; gap:9px; padding:6px 9px; border-radius:10px; font:600 13px var(--font-display),system-ui; color:var(--muted); background:var(--bg); border:1px solid transparent; }
.lbh-list li .n { width:22px; height:22px; border-radius:7px; display:grid; place-items:center; font:800 11px var(--font-display),system-ui; background:var(--surface); border:1px solid var(--border); color:var(--muted); flex-shrink:0; }
.lbh-list li.done { color:var(--text); }
.lbh-list li.done .n { background:#10b981; border-color:#10b981; color:#fff; }
.lbh-list li.cur { color:var(--text); border-color:color-mix(in srgb, var(--accent) 35%, var(--border)); background:color-mix(in srgb, var(--accent) 7%, var(--surface)); }
.lbh-list li.cur .n { background:var(--accent); border-color:var(--accent); color:#fff; }
.lbh-list li .st { margin-left:auto; color:#f59e0b; font-size:11px; letter-spacing:1px; }
.lbh-list li.final { font-weight:800; }
@media (max-width:560px){ .lbh-hero{ padding:26px 20px; } }

/* ---------- LABORATORIYA MAYDONI ---------- */
.lb-wrap { margin-top:22px; scroll-margin-top:16px; }
.lb-head { display:flex; align-items:center; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:12px; }
.lb-modes { display:inline-flex; padding:4px; gap:4px; border-radius:13px; background:var(--surface); border:1px solid var(--border); }
.lb-modes button { border:none; background:transparent; cursor:pointer; padding:9px 15px; border-radius:10px; font:800 13px var(--font-display),system-ui; color:var(--muted); display:inline-flex; align-items:center; gap:7px; }
.lb-modes button svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.lb-modes button.on { background:linear-gradient(135deg,var(--accent),var(--accent-2)); color:#fff; box-shadow:0 8px 18px -10px var(--accent); }
.lb-tools { display:flex; gap:8px; }
.lb-tbtn { display:inline-flex; align-items:center; gap:7px; padding:9px 13px; border-radius:11px; border:1px solid var(--border); background:var(--surface); color:var(--text); font:700 13px var(--font-display),system-ui; cursor:pointer; }
.lb-tbtn:hover { border-color:color-mix(in srgb, var(--accent) 40%, var(--border)); }
.lb-tbtn svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }

.lb-grid { display:grid; grid-template-columns:minmax(0,1fr) clamp(272px, 24vw, 330px); gap:16px; align-items:start; }
@media (max-width:1100px){ .lb-grid { grid-template-columns:1fr; } }

/* Monitor */
.lb-pc { position:relative; }
.lb-monitor { position:relative; background:linear-gradient(180deg,#1f2230,#14161f); border-radius:18px; padding:12px 12px 30px; box-shadow:0 30px 60px -30px rgba(15,17,30,.65), inset 0 1px 0 rgba(255,255,255,.06); }
.lb-monitor::after { content:"OSON STUDIO"; position:absolute; left:50%; bottom:8px; transform:translateX(-50%); white-space:nowrap; font:800 9px var(--font-display),system-ui; letter-spacing:.32em; color:rgba(255,255,255,.28); }
.lb-power { position:absolute; right:18px; bottom:6px; width:20px; height:20px; border-radius:50%; border:none; cursor:pointer; background:#2a2e3d; color:#8c93a8; display:grid; place-items:center; box-shadow:inset 0 0 0 1px rgba(255,255,255,.1); padding:0; }
.lb-power svg { width:11px; height:11px; fill:none; stroke:currentColor; stroke-width:2.6; stroke-linecap:round; }
.lb-power.on { color:#34d399; box-shadow:inset 0 0 0 1px rgba(52,211,153,.5), 0 0 10px rgba(52,211,153,.55); }
.lb-stand { width:110px; height:26px; margin:0 auto; background:linear-gradient(180deg,#2a2e3d,#1a1c26); clip-path:polygon(22% 0,78% 0,100% 100%,0 100%); }
.lb-base { width:210px; height:9px; margin:0 auto; border-radius:0 0 12px 12px; background:#1a1c26; }
.lb-screen { position:relative; overflow:hidden; border-radius:8px; background:#000; height:clamp(460px, 62vh, 640px); }
.lb-screen:fullscreen { height:100vh; border-radius:0; }
.lb-scaler { position:absolute; left:0; top:0; transform-origin:0 0; }

/* ---------- VIRTUAL OS ---------- */
.lb-os { --os-text:#1b1d28; --os-muted:#687085; --os-win:#ffffff; --os-win2:#f5f6fa; --os-border:#dde1ea; --os-acc:#4f5bd5; --os-sel:rgba(79,91,213,.14);
  --os-task:rgba(246,247,251,.86); --os-menu:rgba(250,250,253,.97); --os-shadow:0 24px 50px -18px rgba(10,12,30,.55), 0 0 0 1px rgba(10,12,30,.08);
  position:relative; width:100%; height:100%; overflow:hidden; font:13px/1.4 "Segoe UI", system-ui, -apple-system, sans-serif; color:var(--os-text); user-select:none; -webkit-user-select:none; outline:none; }
.lb-os.dark { --os-text:#eceef5; --os-muted:#9aa1b6; --os-win:#23252f; --os-win2:#1b1d25; --os-border:#353848; --os-acc:#8b95ff; --os-sel:rgba(139,149,255,.18);
  --os-task:rgba(24,26,34,.88); --os-menu:rgba(33,35,45,.97); --os-shadow:0 24px 50px -18px rgba(0,0,0,.8), 0 0 0 1px rgba(255,255,255,.07); }
.lb-os svg { display:block; }
.lb-os input, .lb-os textarea, .lb-os select { user-select:text; -webkit-user-select:text; font:inherit; color:inherit; }
.lb-desk { position:absolute; inset:0 0 44px 0; background:var(--wall, linear-gradient(135deg,#1e3a8a,#6d28d9)); background-size:cover; }
.lb-dim { position:absolute; inset:0; background:#000; pointer-events:none; z-index:9000; opacity:0; transition:opacity .2s; }

/* Ish stoli belgilari */
.lb-icons { position:absolute; inset:8px; display:grid; grid-auto-flow:column; grid-template-rows:repeat(auto-fill, 88px); grid-auto-columns:84px; gap:4px; align-content:start; justify-content:start; }
.lb-dico { width:84px; height:84px; display:flex; flex-direction:column; align-items:center; justify-content:flex-start; gap:4px; padding:6px 4px; border-radius:8px; border:1px solid transparent; color:#fff; text-align:center; cursor:default; }
.lb-dico:hover { background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.14); }
.lb-dico.sel { background:rgba(255,255,255,.24); border-color:rgba(255,255,255,.4); }
.lb-dico.drop { background:rgba(255,255,255,.35); border-color:#fff; }
.lb-dico .gi { width:44px; height:44px; filter:drop-shadow(0 2px 4px rgba(0,0,0,.28)); }
.lb-dico span { font-size:12px; line-height:1.2; text-shadow:0 1px 3px rgba(0,0,0,.75); word-break:break-word; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.lb-dico.cut, .lb-item.cut { opacity:.5; }

/* Vazifalar paneli */
.lb-task { position:absolute; left:0; right:0; bottom:0; height:44px; display:flex; align-items:center; gap:4px; padding:0 8px; background:var(--os-task); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); border-top:1px solid var(--os-border); z-index:5000; }
.lb-start-btn, .lb-tb { height:36px; min-width:38px; border:none; border-radius:7px; background:transparent; color:var(--os-text); display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:0 9px; cursor:default; font:inherit; }
.lb-start-btn:hover, .lb-tb:hover, .lb-start-btn.on { background:rgba(127,127,160,.16); }
.lb-start-btn svg { width:22px; height:22px; }
.lb-tasks { display:flex; gap:3px; min-width:0; flex:1; overflow:hidden; }
.lb-tb { max-width:170px; justify-content:flex-start; position:relative; }
.lb-tb .gi { width:20px; height:20px; flex-shrink:0; }
.lb-tb span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:12.5px; }
.lb-tb::after { content:""; position:absolute; left:50%; bottom:2px; width:6px; height:3px; border-radius:2px; background:var(--os-muted); transform:translateX(-50%); transition:width .15s; }
.lb-tb.act { background:rgba(127,127,160,.14); }
.lb-tb.act::after { width:16px; background:var(--os-acc); }
.lb-tray { display:flex; align-items:center; gap:2px; margin-left:auto; }
.lb-tray .lb-tb { min-width:34px; padding:0 7px; }
.lb-tray .lb-tb::after { display:none; }
.lb-tray svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.lb-clock { display:flex; flex-direction:column; align-items:flex-end; font-size:11.5px; line-height:1.25; padding:0 6px; font-variant-numeric:tabular-nums; }

/* Start menyusi */
.lb-start { position:absolute; left:8px; bottom:52px; width:380px; max-width:calc(100% - 16px); background:var(--os-menu); border:1px solid var(--os-border); border-radius:12px; box-shadow:var(--os-shadow); z-index:6000; padding:14px; display:none; }
.lb-start.on { display:block; animation:lbUp .16s ease-out; }
@keyframes lbUp { from { opacity:0; transform:translateY(10px);} to { opacity:1; transform:none; } }
.lb-search { display:flex; align-items:center; gap:8px; height:36px; padding:0 11px; border-radius:18px; background:var(--os-win2); border:1px solid var(--os-border); }
.lb-search svg { width:15px; height:15px; fill:none; stroke:var(--os-muted); stroke-width:2.2; stroke-linecap:round; flex-shrink:0; }
.lb-search input { border:none; outline:none; background:transparent; flex:1; min-width:0; font-size:13px; }
.lb-start h6 { margin:14px 2px 8px; font:600 12px "Segoe UI",system-ui; color:var(--os-muted); }
.lb-apps { display:grid; grid-template-columns:repeat(4,1fr); gap:4px; }
.lb-app { display:flex; flex-direction:column; align-items:center; gap:5px; padding:9px 4px; border-radius:8px; border:none; background:transparent; cursor:default; font:inherit; color:var(--os-text); text-align:center; }
.lb-app:hover, .lb-app.hl { background:rgba(127,127,160,.15); }
.lb-app .gi { width:32px; height:32px; }
.lb-app span { font-size:11.5px; line-height:1.2; }
.lb-start-foot { display:flex; align-items:center; justify-content:space-between; margin-top:12px; padding-top:10px; border-top:1px solid var(--os-border); }
.lb-user { display:flex; align-items:center; gap:8px; font-size:12.5px; }
.lb-user i { width:28px; height:28px; border-radius:50%; background:linear-gradient(135deg,#0ea5e9,#6366f1); display:grid; place-items:center; color:#fff; font-style:normal; font-weight:700; }
.lb-pwr { width:34px; height:34px; border-radius:8px; border:none; background:transparent; color:var(--os-text); display:grid; place-items:center; cursor:default; position:relative; }
.lb-pwr:hover { background:rgba(127,127,160,.15); }
.lb-pwr svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; }
.lb-pwrmenu { position:absolute; right:0; bottom:40px; background:var(--os-menu); border:1px solid var(--os-border); border-radius:9px; box-shadow:var(--os-shadow); padding:4px; min-width:160px; display:none; }
.lb-pwrmenu.on { display:block; }

/* Kontekst menyu, popoverlar */
.lb-ctx { position:absolute; z-index:8000; min-width:190px; background:var(--os-menu); border:1px solid var(--os-border); border-radius:9px; box-shadow:var(--os-shadow); padding:4px; animation:lbUp .1s ease-out; }
.lb-ctx button, .lb-pwrmenu button { display:flex; width:100%; align-items:center; gap:10px; padding:7px 10px; border:none; background:transparent; border-radius:6px; color:var(--os-text); font:inherit; font-size:12.5px; cursor:default; text-align:left; }
.lb-ctx button:hover, .lb-pwrmenu button:hover { background:var(--os-sel); }
.lb-ctx button:disabled { opacity:.4; }
.lb-ctx button:disabled:hover { background:transparent; }
.lb-ctx button kbd { margin-left:auto; font:11px "Segoe UI",system-ui; color:var(--os-muted); }
.lb-ctx .sep { height:1px; background:var(--os-border); margin:4px 6px; }
.lb-pop { position:absolute; z-index:7000; right:8px; bottom:52px; width:250px; background:var(--os-menu); border:1px solid var(--os-border); border-radius:12px; box-shadow:var(--os-shadow); padding:14px; animation:lbUp .14s ease-out; }
.lb-pop label { display:flex; align-items:center; gap:10px; font-size:12.5px; }
.lb-pop input[type=range] { flex:1; accent-color:var(--os-acc); }

/* Oynalar */
.lb-win { position:absolute; display:flex; flex-direction:column; background:var(--os-win); border-radius:9px; box-shadow:var(--os-shadow); overflow:hidden; min-width:260px; min-height:170px; }
.lb-win.max { border-radius:0; }
.lb-win.min { display:none; }
.lb-win.opening { animation:lbOpen .16s ease-out; }
@keyframes lbOpen { from { opacity:0; transform:scale(.96);} to { opacity:1; transform:none; } }
.lb-wbar { height:34px; flex-shrink:0; display:flex; align-items:center; gap:8px; padding-left:11px; background:var(--os-win2); border-bottom:1px solid var(--os-border); }
.lb-win.focus .lb-wbar { background:color-mix(in srgb, var(--os-acc) 8%, var(--os-win2)); }
.lb-wbar .gi { width:17px; height:17px; flex-shrink:0; }
.lb-wtitle { flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-size:12.5px; }
.lb-win:not(.focus) .lb-wtitle { color:var(--os-muted); }
.lb-wbtns { display:flex; height:100%; }
.lb-wbtns button { width:44px; height:100%; border:none; background:transparent; color:var(--os-text); display:grid; place-items:center; cursor:default; padding:0; }
.lb-wbtns button:hover { background:rgba(127,127,160,.18); }
.lb-wbtns button.x:hover { background:#e81123; color:#fff; }
.lb-wbtns svg { width:12px; height:12px; fill:none; stroke:currentColor; stroke-width:1.6; }
.lb-wbody { flex:1; min-height:0; position:relative; display:flex; flex-direction:column; }
.lb-grip { position:absolute; right:0; bottom:0; width:16px; height:16px; cursor:nwse-resize; z-index:3; }
.lb-grip::before { content:""; position:absolute; right:3px; bottom:3px; width:8px; height:8px; border-right:2px solid var(--os-muted); border-bottom:2px solid var(--os-muted); opacity:.6; }
.lb-win.max .lb-grip { display:none; }

/* Umumiy ilova elementlari */
.lb-bar { display:flex; align-items:center; gap:4px; padding:6px 8px; border-bottom:1px solid var(--os-border); background:var(--os-win); flex-wrap:wrap; }
.lb-btn { display:inline-flex; align-items:center; gap:6px; height:30px; padding:0 10px; border-radius:6px; border:1px solid transparent; background:transparent; color:var(--os-text); font:inherit; font-size:12.5px; cursor:default; white-space:nowrap; }
.lb-btn:hover { background:rgba(127,127,160,.14); }
.lb-btn:disabled { opacity:.4; }
.lb-btn:disabled:hover { background:transparent; }
.lb-btn svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.lb-btn.pri { background:var(--os-acc); color:#fff; }
.lb-btn.pri:hover { filter:brightness(1.08); background:var(--os-acc); }
.lb-btn.line { border-color:var(--os-border); background:var(--os-win); }
.lb-vsep { width:1px; height:20px; background:var(--os-border); margin:0 3px; }
.lb-status { display:flex; gap:16px; padding:4px 10px; font-size:11.5px; color:var(--os-muted); border-top:1px solid var(--os-border); background:var(--os-win2); flex-shrink:0; }
.lb-input { height:30px; border:1px solid var(--os-border); border-radius:6px; padding:0 9px; background:var(--os-win); outline:none; min-width:0; }
.lb-input:focus { border-color:var(--os-acc); box-shadow:0 0 0 2px var(--os-sel); }

/* Fayllar (Explorer) */
.lb-exp { flex:1; min-height:0; display:flex; }
.lb-side { width:150px; flex-shrink:0; padding:8px 6px; border-right:1px solid var(--os-border); background:var(--os-win2); overflow:auto; }
.lb-side button { display:flex; width:100%; align-items:center; gap:8px; padding:6px 8px; border:1px solid transparent; border-radius:6px; background:transparent; color:var(--os-text); font:inherit; font-size:12.5px; cursor:default; text-align:left; }
.lb-side button:hover { background:rgba(127,127,160,.13); }
.lb-side button.on { background:var(--os-sel); }
.lb-side button.drop { border-color:var(--os-acc); background:var(--os-sel); }
.lb-side .gi { width:18px; height:18px; flex-shrink:0; }
.lb-path { flex:1; min-width:120px; display:flex; align-items:center; gap:4px; height:30px; padding:0 9px; border:1px solid var(--os-border); border-radius:6px; font-size:12.5px; color:var(--os-text); overflow:hidden; white-space:nowrap; }
.lb-path i { font-style:normal; color:var(--os-muted); }
.lb-files { flex:1; min-width:0; overflow:auto; padding:10px; display:grid; grid-template-columns:repeat(auto-fill, 92px); grid-auto-rows:max-content; gap:6px; align-content:start; position:relative; }
.lb-item { display:flex; flex-direction:column; align-items:center; gap:4px; padding:7px 4px; border-radius:7px; border:1px solid transparent; text-align:center; cursor:default; }
.lb-item:hover { background:rgba(127,127,160,.1); }
.lb-item.sel { background:var(--os-sel); border-color:color-mix(in srgb, var(--os-acc) 45%, transparent); }
.lb-item.drop { border-color:var(--os-acc); background:var(--os-sel); }
.lb-item .gi { width:46px; height:46px; }
.lb-item .th { width:58px; height:44px; border-radius:4px; overflow:hidden; box-shadow:0 1px 3px rgba(0,0,0,.25); background:#fff; }
.lb-item .th svg, .lb-item .th img { width:100%; height:100%; object-fit:cover; display:block; }
.lb-item span { font-size:12px; line-height:1.25; word-break:break-word; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.lb-item span i, .lb-dico span i { font-style:normal; opacity:.6; }
.lb-empty { grid-column:1/-1; text-align:center; color:var(--os-muted); padding:40px 10px; font-size:12.5px; }
.lb-ren { width:88px; font-size:12px; padding:2px 4px; border:1px solid var(--os-acc); border-radius:3px; outline:none; background:var(--os-win); text-align:center; }
.lb-dico .lb-ren { color:#1b1d28; background:#fff; }

/* Bloknot */
.lb-note { flex:1; min-height:0; width:100%; resize:none; border:none; outline:none; padding:12px 14px; background:var(--os-win); font:14px/1.55 Consolas, "Cascadia Mono", ui-monospace, monospace !important; tab-size:4; }

/* Dialog (oyna ichida) */
.lb-modal { position:absolute; inset:0; z-index:20; background:rgba(10,12,25,.32); display:grid; place-items:center; padding:12px; }
.lb-dlg { width:min(430px, 100%); background:var(--os-win); border:1px solid var(--os-border); border-radius:10px; box-shadow:var(--os-shadow); overflow:hidden; animation:lbOpen .14s ease-out; }
.lb-dlg h5 { margin:0; padding:11px 14px; font:600 13px "Segoe UI",system-ui; background:var(--os-win2); border-bottom:1px solid var(--os-border); }
.lb-dlg-b { padding:14px; display:grid; gap:10px; }
.lb-dlg-b p { margin:0; font-size:13px; line-height:1.5; }
.lb-dlg-f { display:flex; justify-content:flex-end; gap:8px; padding:10px 14px; border-top:1px solid var(--os-border); background:var(--os-win2); flex-wrap:wrap; }
.lb-folders { display:grid; gap:2px; max-height:150px; overflow:auto; border:1px solid var(--os-border); border-radius:6px; padding:4px; }
.lb-folders button { display:flex; align-items:center; gap:8px; padding:5px 8px; border:none; border-radius:5px; background:transparent; font:inherit; font-size:12.5px; color:var(--os-text); text-align:left; cursor:default; }
.lb-folders button.on { background:var(--os-sel); }
.lb-folders .gi { width:16px; height:16px; }
.lb-field { display:flex; align-items:center; gap:8px; font-size:12.5px; }
.lb-field .lb-input { flex:1; }

/* Brauzer */
.lb-web { flex:1; min-height:0; overflow:auto; background:#fff; color:#1f2330; user-select:text; -webkit-user-select:text; }
.lb-os.dark .lb-web { background:#fff; color:#1f2330; }
.lb-addr { flex:1; min-width:140px; display:flex; align-items:center; gap:7px; height:30px; padding:0 11px; border-radius:15px; background:var(--os-win2); border:1px solid var(--os-border); }
.lb-addr svg { width:13px; height:13px; fill:none; stroke:var(--os-muted); stroke-width:2.2; flex-shrink:0; }
.lb-addr input { border:none; outline:none; background:transparent; flex:1; min-width:0; font-size:12.5px; }
.lb-dlbar { display:flex; align-items:center; gap:10px; padding:8px 12px; border-top:1px solid var(--os-border); background:var(--os-win2); font-size:12.5px; }
.lb-dlbar .gi { width:22px; height:22px; }
.wb { padding:26px 30px; max-width:760px; margin:0 auto; font:14px/1.6 "Segoe UI",system-ui,sans-serif; }
.wb h1 { font:700 24px/1.25 "Segoe UI",system-ui; margin:0 0 10px; }
.wb h2 { font:700 17px "Segoe UI",system-ui; margin:18px 0 8px; }
.wb p { margin:0 0 10px; }
.wb a, .wb .lnk { color:#1a56db; cursor:pointer; text-decoration:none; }
.wb a:hover, .wb .lnk:hover { text-decoration:underline; }
.wb-home { min-height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:40px 20px; gap:18px; }
.wb-logo { font:800 38px/1 "Segoe UI",system-ui; letter-spacing:-.02em; }
.wb-logo b:nth-child(1){ color:#2563eb; } .wb-logo b:nth-child(2){ color:#dc2626; } .wb-logo b:nth-child(3){ color:#f59e0b; } .wb-logo b:nth-child(4){ color:#16a34a; }
.wb-sbox { display:flex; align-items:center; gap:8px; width:min(480px,100%); height:44px; padding:0 8px 0 16px; border-radius:22px; border:1px solid #d6d9e2; box-shadow:0 2px 8px rgba(0,0,0,.06); background:#fff; }
.wb-sbox input { flex:1; border:none; outline:none; font-size:14.5px; min-width:0; background:transparent; color:#1f2330; }
.wb-sbox button { height:32px; padding:0 14px; border-radius:16px; border:none; background:#2563eb; color:#fff; font:600 13px "Segoe UI",system-ui; cursor:pointer; }
.wb-quick { display:flex; gap:10px; flex-wrap:wrap; justify-content:center; }
.wb-quick span { padding:8px 13px; border-radius:10px; background:#f2f4f8; font-size:12.5px; cursor:pointer; }
.wb-quick span:hover { background:#e6e9f1; }
.wb-res { margin:0 0 20px; }
.wb-res small { color:#1e7e34; font-size:12.5px; display:block; }
.wb-res .lnk { font-size:17px; }
.wb-res p { color:#4b5160; font-size:13px; margin:2px 0 0; }
.wb-img { position:relative; border-radius:10px; overflow:hidden; background:#eef1f6; }
.wb-img svg { width:100%; height:auto; display:block; }
.wb-dl { display:inline-flex; align-items:center; gap:7px; margin-top:10px; padding:9px 15px; border-radius:9px; border:none; background:#16a34a; color:#fff; font:600 13px "Segoe UI",system-ui; cursor:pointer; }
.wb-dl svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.wb-gal { display:grid; grid-template-columns:repeat(auto-fill,minmax(170px,1fr)); gap:14px; }
.wb-gal figure { margin:0; }
.wb-gal figcaption { font-size:12.5px; margin-top:6px; display:flex; justify-content:space-between; align-items:center; gap:6px; }
.wb-gal .wb-dl { margin:0; padding:6px 10px; font-size:12px; }
.wb-weather { display:flex; align-items:center; gap:22px; padding:20px; border-radius:16px; background:linear-gradient(135deg,#38bdf8,#2563eb); color:#fff; }
.wb-weather b { font:700 48px/1 "Segoe UI",system-ui; }
.wb-days { display:grid; grid-template-columns:repeat(5,1fr); gap:8px; margin-top:12px; }
.wb-days div { text-align:center; padding:10px 4px; border-radius:10px; background:#f2f4f8; font-size:12.5px; }
.wb-quote { padding:12px 16px; border-left:4px solid #2563eb; background:#f2f6ff; border-radius:0 8px 8px 0; }
.wb-404 { text-align:center; padding:60px 20px; color:#4b5160; }
.wb-404 b { display:block; font:700 42px "Segoe UI",system-ui; color:#9aa1b6; }

/* Kalkulyator */
.lb-calc { flex:1; display:flex; flex-direction:column; padding:10px; gap:8px; background:var(--os-win2); }
.lb-cdisp { text-align:right; padding:8px 10px; border-radius:8px; }
.lb-cdisp small { display:block; min-height:18px; font-size:12.5px; color:var(--os-muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lb-cdisp b { display:block; font:600 32px/1.15 "Segoe UI",system-ui; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lb-ckeys { flex:1; display:grid; grid-template-columns:repeat(4,1fr); gap:4px; }
.lb-ckeys button { border:none; border-radius:6px; background:var(--os-win); color:var(--os-text); font:500 16px "Segoe UI",system-ui; cursor:default; min-height:36px; }
.lb-ckeys button:hover { filter:brightness(.96); }
.lb-os.dark .lb-ckeys button:hover { filter:brightness(1.2); }
.lb-ckeys button.op { background:color-mix(in srgb, var(--os-win2) 60%, var(--os-border)); }
.lb-ckeys button.eq { background:var(--os-acc); color:#fff; }

/* Rasm (Paint) va ko'ruvchi */
.lb-paint { flex:1; min-height:0; display:flex; align-items:center; justify-content:center; background:var(--os-win2); overflow:auto; padding:10px; }
.lb-paint canvas { background:#fff; box-shadow:0 2px 10px rgba(0,0,0,.18); cursor:crosshair; touch-action:none; max-width:100%; }
.lb-colors { display:flex; gap:4px; }
.lb-colors button { width:20px; height:20px; border-radius:50%; border:2px solid var(--os-win); box-shadow:0 0 0 1px var(--os-border); padding:0; cursor:default; }
.lb-colors button.on { box-shadow:0 0 0 2px var(--os-acc); }
.lb-view { flex:1; min-height:0; display:flex; align-items:center; justify-content:center; background:#0f1117; padding:14px; }
.lb-view svg, .lb-view img { max-width:100%; max-height:100%; border-radius:4px; box-shadow:0 8px 30px rgba(0,0,0,.5); }

/* Sozlamalar */
.lb-set { flex:1; min-height:0; overflow:auto; padding:16px 18px; display:grid; gap:18px; align-content:start; }
.lb-set h4 { margin:0 0 8px; font:600 14px "Segoe UI",system-ui; }
.lb-walls { display:grid; grid-template-columns:repeat(auto-fill, 86px); gap:8px; }
.lb-walls button { height:54px; border-radius:7px; border:2px solid transparent; cursor:default; padding:0; box-shadow:0 0 0 1px var(--os-border); }
.lb-walls button.on { border-color:var(--os-acc); box-shadow:0 0 0 2px var(--os-sel); }
.lb-seg { display:inline-flex; padding:3px; gap:3px; border-radius:8px; background:var(--os-win2); border:1px solid var(--os-border); }
.lb-seg button { border:none; background:transparent; padding:6px 14px; border-radius:6px; font:inherit; font-size:12.5px; color:var(--os-text); cursor:default; }
.lb-seg button.on { background:var(--os-win); box-shadow:0 1px 3px rgba(0,0,0,.15); }
.lb-set label { display:flex; align-items:center; gap:10px; font-size:12.5px; max-width:360px; }
.lb-set input[type=range] { flex:1; accent-color:var(--os-acc); }
.lb-set .val { width:40px; text-align:right; font-variant-numeric:tabular-nums; color:var(--os-muted); }

/* Yoqish / qulf ekrani */
.lb-off { position:absolute; inset:0; z-index:9500; background:#000; display:grid; place-items:center; color:#5b6275; font:600 13px "Segoe UI",system-ui; text-align:center; }
.lb-off p { margin:0; opacity:.8; }
.lb-boot { position:absolute; inset:0; z-index:9500; background:#000; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:34px; color:#fff; }
.lb-boot .logo { display:grid; grid-template-columns:1fr 1fr; gap:5px; width:62px; }
.lb-boot .logo i { height:28px; border-radius:3px; background:linear-gradient(135deg,#38bdf8,#6366f1); }
.lb-spin { width:30px; height:30px; border-radius:50%; border:3px solid rgba(255,255,255,.18); border-top-color:#fff; animation:lbSpin .8s linear infinite; }
@keyframes lbSpin { to { transform:rotate(360deg); } }
.lb-lock { position:absolute; inset:0; z-index:9400; background:var(--wall); background-size:cover; color:#fff; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; cursor:default; }
.lb-lock::before { content:""; position:absolute; inset:0; background:rgba(5,8,20,.25); backdrop-filter:blur(0px); transition:backdrop-filter .3s, background .3s; }
.lb-lock.login::before { backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); background:rgba(5,8,20,.4); }
.lb-lock > * { position:relative; }
.lb-lock .t { font:300 76px/1 "Segoe UI",system-ui; letter-spacing:-.02em; text-shadow:0 2px 14px rgba(0,0,0,.3); }
.lb-lock .d { font:500 17px "Segoe UI",system-ui; margin-top:8px; text-shadow:0 1px 8px rgba(0,0,0,.35); }
.lb-lock .h { position:absolute; bottom:22px; left:0; right:0; font-size:12.5px; opacity:.85; animation:lbPulse 2s infinite; }
@keyframes lbPulse { 50% { opacity:.4; } }
.lb-login { display:flex; flex-direction:column; align-items:center; gap:14px; }
.lb-login .av { width:96px; height:96px; border-radius:50%; background:linear-gradient(135deg,#0ea5e9,#6366f1); display:grid; place-items:center; font:600 38px "Segoe UI",system-ui; box-shadow:0 10px 30px rgba(0,0,0,.35); }
.lb-login b { font:600 20px "Segoe UI",system-ui; }
.lb-login button { padding:9px 32px; border-radius:7px; border:1px solid rgba(255,255,255,.45); background:rgba(255,255,255,.18); color:#fff; font:600 13.5px "Segoe UI",system-ui; cursor:default; }
.lb-login button:hover { background:rgba(255,255,255,.3); }

/* OS bildirishnomasi */
.lb-toast { position:absolute; right:12px; bottom:56px; z-index:7500; width:280px; display:flex; gap:10px; align-items:flex-start; padding:12px 14px; border-radius:10px; background:var(--os-menu); border:1px solid var(--os-border); box-shadow:var(--os-shadow); animation:lbSlide .22s ease-out; font-size:12.5px; }
.lb-toast .gi { width:26px; height:26px; flex-shrink:0; }
.lb-toast b { display:block; font-size:13px; margin-bottom:2px; }
@keyframes lbSlide { from { opacity:0; transform:translateX(24px);} to { opacity:1; transform:none; } }
.lb-ghost { position:absolute; z-index:9800; pointer-events:none; opacity:.85; transform:translate(-50%,-60%); display:flex; flex-direction:column; align-items:center; gap:2px; }
.lb-ghost .gi { width:40px; height:40px; }
.lb-ghost em { font-style:normal; font-size:11px; padding:1px 6px; border-radius:4px; background:var(--os-acc); color:#fff; }
.lb-marq { position:absolute; z-index:4; border:1px solid var(--os-acc); background:var(--os-sel); pointer-events:none; }

/* Ko'rsatma halqasi (hint) */
.lb-ring { position:absolute; z-index:9900; pointer-events:none; border-radius:10px; border:3px solid #f59e0b; box-shadow:0 0 0 5px rgba(245,158,11,.22), 0 0 22px rgba(245,158,11,.75); animation:lbRing 1.2s ease-in-out infinite; transition:all .2s; }
@keyframes lbRing { 50% { transform:scale(1.08); } }
.lb-ring em { position:absolute; left:50%; top:calc(100% + 8px); transform:translateX(-50%); white-space:nowrap; font:800 12px var(--font-display),system-ui; font-style:normal; color:#fff; background:#f59e0b; padding:4px 10px; border-radius:8px; box-shadow:0 6px 14px -4px rgba(0,0,0,.4); }
.lb-ring.up em { top:auto; bottom:calc(100% + 8px); }

/* ---------- JURNAL ---------- */
.lb-journal { background:var(--surface); border:1px solid var(--border); border-radius:18px; padding:16px; position:sticky; top:14px; max-height:calc(100vh - 28px); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; }
@media (max-width:1100px){ .lb-journal { position:static; max-height:none; overflow:visible; } }
.lb-jh { display:flex; align-items:center; gap:10px; margin-bottom:12px; }
.lb-jh .ic { width:36px; height:36px; border-radius:11px; display:grid; place-items:center; background:linear-gradient(140deg,#0ea5e9,var(--accent)); color:#fff; flex-shrink:0; }
.lb-jh .ic svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.lb-jh small { display:block; font:700 10.5px var(--font-display),system-ui; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.lb-jh b { display:block; font:800 15px var(--font-display),system-ui; color:var(--text); line-height:1.25; }
.lb-prog { height:7px; border-radius:5px; background:var(--bg); border:1px solid var(--border); overflow:hidden; margin-bottom:14px; }
.lb-prog span { display:block; height:100%; background:linear-gradient(90deg,#0ea5e9,var(--accent)); border-radius:5px; transition:width .4s; }
.lb-exp-card { border-radius:14px; padding:14px; background:color-mix(in srgb, var(--accent) 6%, var(--bg)); border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border)); }
.lb-exp-no { font:800 11px var(--font-display),system-ui; letter-spacing:.08em; text-transform:uppercase; color:var(--accent); }
.lb-exp-card h3 { margin:3px 0 4px; font:800 17px var(--font-display),system-ui; color:var(--text); }
.lb-exp-card > p { margin:0 0 12px; font-size:13px; line-height:1.5; color:var(--muted); }
.lb-steps { list-style:none; margin:0; padding:0; display:grid; gap:6px; }
.lb-steps li { display:flex; gap:9px; align-items:flex-start; font-size:13px; line-height:1.45; color:var(--muted); padding:7px 9px; border-radius:10px; }
.lb-steps li .c { width:20px; height:20px; border-radius:50%; flex-shrink:0; border:2px solid var(--border); display:grid; place-items:center; margin-top:1px; background:var(--surface); }
.lb-steps li .c svg { width:11px; height:11px; fill:none; stroke:#fff; stroke-width:3.4; stroke-linecap:round; stroke-linejoin:round; opacity:0; }
.lb-steps li.done { color:var(--text); opacity:.75; }
.lb-steps li.done .c { background:#10b981; border-color:#10b981; }
.lb-steps li.done .c svg { opacity:1; }
.lb-steps li.cur { background:var(--surface); color:var(--text); font-weight:600; box-shadow:0 6px 16px -10px rgba(30,27,75,.35); border:1px solid color-mix(in srgb, var(--accent) 30%, var(--border)); }
.lb-steps li.cur .c { border-color:var(--accent); animation:lbCur 1.4s infinite; }
@keyframes lbCur { 50% { box-shadow:0 0 0 5px color-mix(in srgb, var(--accent) 22%, transparent); } }
.lb-steps li.goal .c { border-radius:6px; }
.lb-steps li.done.just { animation:lbJust .5s ease-out; }
@keyframes lbJust { 0% { transform:scale(1.04); background:color-mix(in srgb, #10b981 18%, transparent); } }
.lb-lab { display:flex; gap:10px; align-items:flex-start; margin-top:12px; }
.lb-lab .av { width:34px; height:34px; border-radius:50%; flex-shrink:0; display:grid; place-items:center; background:linear-gradient(140deg,#f59e0b,#ef4444); color:#fff; }
.lb-lab .av svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.lb-lab p { margin:0; flex:1; font-size:12.5px; line-height:1.5; padding:9px 11px; border-radius:4px 12px 12px 12px; background:var(--bg); border:1px solid var(--border); color:var(--text); }
.lb-jbtns { display:flex; gap:8px; margin-top:12px; flex-wrap:wrap; }
.lb-jb { flex:1; display:inline-flex; align-items:center; justify-content:center; gap:7px; padding:10px 12px; border-radius:11px; border:1px solid var(--border); background:var(--surface); color:var(--text); font:800 13px var(--font-display),system-ui; cursor:pointer; white-space:nowrap; }
.lb-jb:hover { border-color:color-mix(in srgb, var(--accent) 45%, var(--border)); }
.lb-jb:disabled { opacity:.45; cursor:not-allowed; }
.lb-jb svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.lb-jb.pri { background:linear-gradient(135deg,var(--accent),var(--accent-2)); border-color:transparent; color:#fff; box-shadow:0 10px 22px -12px var(--accent); }
.lb-jb.hint { color:#b45309; border-color:color-mix(in srgb, #f59e0b 40%, var(--border)); background:color-mix(in srgb, #f59e0b 8%, var(--surface)); }
.lb-timer { display:inline-flex; align-items:center; gap:6px; font:800 13px var(--font-display),system-ui; color:var(--accent); font-variant-numeric:tabular-nums; }
.lb-timer svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; }
.lb-done { text-align:center; padding:6px 2px 2px; }
.lb-done .medal { width:64px; height:64px; margin:0 auto 10px; border-radius:20px; display:grid; place-items:center; background:linear-gradient(140deg,#10b981,#0ea5e9); color:#fff; box-shadow:0 14px 28px -12px #10b981; }
.lb-done .medal svg { width:32px; height:32px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.lb-done h3 { margin:0 0 4px; font:800 18px var(--font-display),system-ui; color:var(--text); }
.lb-done p { margin:0 0 6px; font-size:13px; color:var(--muted); line-height:1.5; }
.lb-stars { font-size:24px; letter-spacing:4px; color:#f59e0b; margin:4px 0 6px; }
.lb-stars i { font-style:normal; color:var(--border); }
.lb-name { width:100%; height:40px; border-radius:10px; border:1px solid var(--border); background:var(--bg); color:var(--text); padding:0 12px; font:600 14px var(--font-display),system-ui; margin:6px 0 2px; }
.lb-name:focus { outline:none; border-color:var(--accent); }
.lb-list { margin-top:14px; border-top:1px solid var(--border); padding-top:12px; }
.lb-list summary { cursor:pointer; font:800 13px var(--font-display),system-ui; color:var(--text); list-style:none; display:flex; align-items:center; justify-content:space-between; }
.lb-list summary::-webkit-details-marker { display:none; }
.lb-list summary svg { width:16px; height:16px; fill:none; stroke:var(--muted); stroke-width:2.2; transition:transform .2s; }
.lb-list[open] summary svg { transform:rotate(180deg); }
.lb-exps { display:grid; gap:4px; margin-top:10px; }
.lb-exps button { display:flex; align-items:center; gap:9px; width:100%; padding:7px 9px; border-radius:10px; border:1px solid transparent; background:transparent; color:var(--text); font:600 13px var(--font-display),system-ui; cursor:pointer; text-align:left; }
.lb-exps button:hover:not(:disabled) { background:var(--bg); }
.lb-exps button.on { background:color-mix(in srgb, var(--accent) 8%, var(--surface)); border-color:color-mix(in srgb, var(--accent) 28%, var(--border)); }
.lb-exps button:disabled { opacity:.45; cursor:not-allowed; }
.lb-exps .n { width:22px; height:22px; border-radius:7px; display:grid; place-items:center; font:800 11px var(--font-display),system-ui; background:var(--bg); border:1px solid var(--border); color:var(--muted); flex-shrink:0; }
.lb-exps .ok .n { background:#10b981; border-color:#10b981; color:#fff; }
.lb-exps .st { margin-left:auto; font-size:11px; color:#f59e0b; letter-spacing:1px; }
.lb-exps .lk { margin-left:auto; width:14px; height:14px; fill:none; stroke:var(--muted); stroke-width:2.2; }
.lb-free p { margin:0 0 10px; font-size:13px; line-height:1.55; color:var(--muted); }
.lb-free ul { margin:0 0 12px; padding-left:18px; font-size:13px; line-height:1.7; color:var(--text); }

/* Kichik ekran eslatmasi */
.lb-small { display:none; margin-bottom:10px; padding:10px 14px; border-radius:12px; font-size:13px; line-height:1.5; background:color-mix(in srgb, #f59e0b 10%, var(--surface)); border:1px solid color-mix(in srgb, #f59e0b 35%, var(--border)); color:var(--text); }
@media (max-width:760px){ .lb-small { display:block; } .lb-monitor { padding:8px 8px 24px; border-radius:14px; } .lb-screen { height:auto; } }

/* Maslahatlar */
.lb-tips { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:22px; }
@media (max-width:760px){ .lb-tips { grid-template-columns:1fr; } }
.lb-tip { background:var(--surface); border:1px solid var(--border); border-radius:16px; padding:16px 18px; }
.lb-tip .n { width:30px; height:30px; border-radius:9px; display:grid; place-items:center; background:var(--accent-soft); color:var(--accent); margin-bottom:9px; }
.lb-tip .n svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
.lb-tip h4 { margin:0 0 5px; font:800 14.5px var(--font-display),system-ui; color:var(--text); }
.lb-tip p { margin:0; font-size:13px; color:var(--muted); line-height:1.55; }

/* Sahifa ichidagi toast */
.lb-ptoast { position:fixed; left:50%; bottom:24px; z-index:400; transform:translateX(-50%) translateY(20px); opacity:0; transition:.25s; display:flex; align-items:center; gap:10px; padding:12px 18px; border-radius:13px; background:linear-gradient(135deg,#10b981,#059669); color:#fff; font:800 13.5px var(--font-display),system-ui; box-shadow:0 16px 34px -10px rgba(5,150,105,.6); pointer-events:none; }
.lb-ptoast.on { opacity:1; transform:translateX(-50%) translateY(0); }
.lb-ptoast svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round; }
@media (prefers-reduced-motion:reduce){ .lb-ring, .lb-steps li.cur .c, .lb-lock .h { animation:none; } }

/* Qo'shimcha: oynalar qatlami, sensorli ekran, to'liq ekran */
.lb-wins { position:absolute; inset:0 0 44px 0; pointer-events:none; z-index:10; }
.lb-wins .lb-win { pointer-events:auto; }
.lb-dico, .lb-item, .lb-wbar, .lb-grip, .lb-paint canvas { touch-action:none; }
/* To'liq ekran: butun bo'lim (rejimlar + monitor + jurnal). Brauzer API bermasa ham .lb-fs oynani to'ldiradi */
.lb-wrap.lb-fs { position:fixed; inset:0; z-index:10050; margin:0; padding:12px 16px 8px; background:var(--bg); overflow:auto; overscroll-behavior:contain; }
.lb-wrap.lb-fs:fullscreen { width:100%; height:100%; }
html.lb-fs-lock, html.lb-fs-lock body { overflow:hidden; }
.lb-wrap.lb-fs .lb-small, .lb-wrap.lb-fs .lb-stand, .lb-wrap.lb-fs .lb-base { display:none; }
.lb-wrap.lb-fs .lb-head { margin-bottom:10px; }
.lb-wrap.lb-fs .lb-grid { grid-template-columns:minmax(0,1fr) clamp(280px, 24vw, 340px); gap:14px; }
.lb-wrap.lb-fs .lb-journal { top:0; max-height:calc(100vh - 80px); }
@media (max-width:1100px){ .lb-wrap.lb-fs .lb-grid { grid-template-columns:1fr; } .lb-wrap.lb-fs .lb-journal { max-height:none; } }
#lbFull.on { border-color:color-mix(in srgb, var(--accent) 45%, var(--border)); color:var(--accent); }
.lb-pwrwrap { position:relative; }

/* Monitor ustidagi joriy vazifa paneli (barcha o'lchamlarda) */
.lb-now { display:flex; align-items:center; gap:12px; margin-bottom:10px; padding:10px 12px 10px 14px; border-radius:14px; background:var(--surface); border:1px solid color-mix(in srgb, var(--accent) 30%, var(--border)); box-shadow:0 8px 20px -14px rgba(30,27,75,.4); }
.lb-now:empty { display:none; }
.lb-now .t { flex:1; min-width:0; }
.lb-now small { display:block; font:800 10.5px var(--font-display),system-ui; letter-spacing:.06em; text-transform:uppercase; color:var(--accent); }
.lb-now b { display:block; font:700 14px/1.4 var(--font-display),system-ui; color:var(--text); margin-top:1px; }
.lb-now p { margin:2px 0 0; font-size:12.5px; line-height:1.45; color:var(--muted); display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.lb-now .pg { display:flex; gap:4px; margin-top:7px; }
.lb-now .pg i { flex:1; max-width:46px; height:4px; border-radius:3px; background:var(--border); }
.lb-now .pg i.ok { background:#10b981; }
.lb-now .pg i.cur { background:var(--accent); }
.lb-now .lb-jb { flex:0 0 auto; padding:9px 12px; }
.lb-now.ok { border-color:color-mix(in srgb, #10b981 45%, var(--border)); background:color-mix(in srgb, #10b981 7%, var(--surface)); }
.lb-now.ok small { color:#059669; }
@media (max-width:560px){ .lb-now { padding:9px 10px; } .lb-now p { -webkit-line-clamp:3; } .lb-now .lb-jb span { display:none; } }

/* Himoya dasturi */
.lb-sec-app { flex:1; min-height:0; overflow:auto; padding:18px; display:grid; gap:12px; align-content:start; }
.lb-sec-app .sh { display:flex; align-items:center; gap:14px; padding:14px; border-radius:12px; background:var(--os-win2); border:1px solid var(--os-border); }
.lb-sec-app .sh .big .gi { width:54px; height:54px; }
.lb-sec-app .sh.warn { background:color-mix(in srgb, #ef4444 12%, var(--os-win)); border-color:color-mix(in srgb, #ef4444 45%, transparent); }
.lb-sec-app .sh.warn .gi .tl { fill:#ef4444; }
.lb-sec-app .sh.unk .gi .tl, .lb-sec-app .sh.scan .gi .tl { fill:#94a3b8; }
.lb-sec-app .sh b { display:block; font-size:15px; }
.lb-sec-app .sh small { font-size:12px; color:var(--os-muted); }
.lb-sec-app > .lb-btn { justify-self:start; height:34px; }
.lb-sec-app .bar { height:8px; border-radius:5px; background:var(--os-win2); border:1px solid var(--os-border); overflow:hidden; }
.lb-sec-app .bar span { display:block; height:100%; width:0; background:linear-gradient(90deg,#10b981,#0ea5e9); transition:width 1.6s linear; }
.lb-sec-app .thr { display:flex; align-items:center; gap:10px; padding:9px 11px; border-radius:10px; border:1px solid color-mix(in srgb, #ef4444 40%, var(--os-border)); }
.lb-sec-app .thr .gi { width:32px; height:32px; }
.lb-sec-app .thr div { flex:1; min-width:0; }
.lb-sec-app .thr b { display:block; font-size:12.5px; }
.lb-sec-app .thr small { font-size:11.5px; color:#dc2626; }

/* Sozlamalar: hisob va himoya */
.lb-passbox { display:grid; gap:6px; max-width:440px; }
.lb-passbox .lb-field { flex-wrap:wrap; }
.lb-meter { display:flex; align-items:center; gap:4px; }
.lb-meter i { width:40px; height:5px; border-radius:3px; background:var(--os-border); }
.lb-meter i.on.s1 { background:#ef4444; }
.lb-meter i.on.s2 { background:#f97316; }
.lb-meter i.on.s3 { background:#eab308; }
.lb-meter i.on.s4 { background:#22c55e; }
.lb-meter i.on.s5 { background:#10b981; }
.lb-meter span { font-size:11.5px; color:var(--os-muted); margin-left:6px; }
.lb-passst { display:flex; align-items:center; gap:5px; font-size:12px; color:#16a34a; font-weight:600; min-height:16px; }
.lb-passst svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:3; }
.lb-switch { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; max-width:440px; margin-top:10px; padding:10px 12px; border-radius:10px; border:1px solid var(--os-border); background:var(--os-win2); color:var(--os-text); font:inherit; cursor:default; text-align:left; }
.lb-switch .t b { display:block; font-size:12.5px; }
.lb-switch .t small { font-size:11.5px; color:var(--os-muted); }
.lb-switch .sw { width:38px; height:22px; border-radius:11px; background:var(--os-border); position:relative; flex-shrink:0; transition:background .2s; }
.lb-switch .sw::after { content:""; position:absolute; left:3px; top:3px; width:16px; height:16px; border-radius:50%; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.3); transition:left .2s; }
.lb-switch.on .sw { background:#10b981; }
.lb-switch.on .sw::after { left:19px; }

/* Qulf ekrani: parol */
.lb-login .pw { display:flex; border-radius:8px; overflow:hidden; border:1px solid rgba(255,255,255,.45); background:rgba(255,255,255,.14); }
.lb-login .pw input { width:190px; height:38px; padding:0 12px; border:none; outline:none; background:transparent; color:#fff; font:500 14px "Segoe UI",system-ui; }
.lb-login .pw input::placeholder { color:rgba(255,255,255,.7); }
.lb-login .pw button { width:40px; border:none; border-left:1px solid rgba(255,255,255,.3); border-radius:0; padding:0; display:grid; place-items:center; background:rgba(255,255,255,.18); }
.lb-login .pw button svg { width:16px; height:16px; fill:none; stroke:#fff; stroke-width:2.4; }
.lb-login .pw.shake { animation:lbShake .35s; }
@keyframes lbShake { 25% { transform:translateX(-6px); } 75% { transform:translateX(6px); } }
.lb-login em { font-style:normal; font-size:12.5px; color:#fecaca; min-height:16px; }
.lb-login .fg { color:#fff; opacity:.8; font-size:12px; text-decoration:underline; }

/* Brauzer: sayt xavfsizligi, fishing va bank sahifalari */
.lb-sec { width:22px; height:22px; border:none; background:transparent; padding:0; display:grid; place-items:center; border-radius:5px; cursor:default; flex-shrink:0; }
.lb-sec:hover { background:rgba(127,127,160,.18); }
.lb-sec svg { width:14px; height:14px; fill:none; stroke:#16a34a; stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
.lb-sec.bad svg { stroke:#dc2626; }
.lb-siteinfo { position:absolute; left:120px; top:44px; z-index:15; width:290px; padding:13px 14px; border-radius:12px; background:var(--os-menu); border:1px solid var(--os-border); box-shadow:var(--os-shadow); display:grid; gap:8px; animation:lbUp .14s ease-out; }
.lb-siteinfo b { display:flex; align-items:center; gap:7px; font-size:13.5px; color:#16a34a; }
.lb-siteinfo.bad b { color:#dc2626; }
.lb-siteinfo b svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
.lb-siteinfo p { margin:0; font-size:12px; line-height:1.5; color:var(--os-text); }
.lb-siteinfo .lb-btn.pri { justify-self:start; background:#dc2626; }
.wb-res.ad { padding:10px 12px; border-radius:10px; background:#fffbeb; }
.wb-adl { display:inline-block; padding:0 6px; border-radius:4px; background:#1f2937; color:#fff; font-weight:700; font-size:11px; }
.wb-phish { min-height:100%; padding:26px 24px; text-align:center; background:linear-gradient(160deg,#fde047,#f97316 55%,#dc2626); color:#1f0a00; font-family:Arial,sans-serif; }
.wb-phish .ph-top { font:900 22px Arial,sans-serif; letter-spacing:.08em; color:#fff; text-shadow:0 2px 0 #b91c1c; }
.wb-phish .ph-top i { font-style:normal; background:#16a34a; color:#fff; padding:0 6px; border-radius:4px; text-shadow:none; }
.wb-phish h1 { font:900 24px/1.2 Arial,sans-serif; color:#fff; text-shadow:0 2px 0 #7f1d1d; margin:12px 0 8px; }
.wb-phish p { margin:0 0 10px; font-size:14px; font-weight:700; }
.wb-phish .ph-timer { display:inline-block; font:900 26px monospace; color:#fff; background:#7f1d1d; padding:4px 14px; border-radius:8px; margin-bottom:12px; animation:lbPulse 1s infinite; }
.wb-phish .ph-form { max-width:330px; margin:0 auto; display:grid; gap:8px; text-align:left; background:#fff; padding:14px; border-radius:12px; box-shadow:0 10px 30px rgba(0,0,0,.25); }
.wb-phish label { display:grid; gap:3px; font-size:12px; font-weight:700; color:#374151; }
.wb-phish input { height:34px; border:1px solid #d1d5db; border-radius:6px; padding:0 9px; font-size:13px; }
.wb-phish .ph-row { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.wb-phish button { height:38px; border:none; border-radius:8px; background:#16a34a; color:#fff; font:900 14px Arial,sans-serif; cursor:pointer; }
.wb-bank .bk-top { display:flex; align-items:center; justify-content:space-between; padding:12px 26px; background:#0f766e; color:#fff; }
.wb-bank .bk-top b { font:800 18px "Segoe UI",system-ui; }
.wb-bank .bk-top span { display:inline-flex; align-items:center; gap:5px; font-size:12px; opacity:.9; }
.wb-bank .bk-top svg { width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:2.4; }
.wb-blocked { min-height:100%; padding:50px 24px; text-align:center; background:#b91c1c; color:#fff; font-family:"Segoe UI",system-ui; }
.wb-blocked .ic svg { width:54px; height:54px; fill:none; stroke:#fff; stroke-width:2; margin:0 auto 10px; display:block; }
.wb-blocked h1 { font-size:22px; margin:0 0 8px; }
.wb-blocked p { max-width:420px; margin:0 auto 10px; font-size:14px; line-height:1.5; }
.wb-blocked .lnk { color:#fff; text-decoration:underline; cursor:pointer; }

/* Jurnal: bo'lim nomi va guruhlangan ro'yxat */
.lb-exp-room { font:700 11.5px var(--font-display),system-ui; color:var(--muted); margin-top:2px; }
.lb-exps .rh { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:8px; padding:0 4px; font:800 11.5px var(--font-display),system-ui; color:var(--muted); text-transform:uppercase; letter-spacing:.03em; }
.lbh-list li .st { color:var(--muted); letter-spacing:0; font-weight:700; }
.lbh-list li.done .st { color:#059669; }

/* =================== HAYOTIY MISSIYALAR =================== */
.lb-story { margin:0 0 12px; padding:10px 12px; border-radius:10px; background:var(--surface); border:1px dashed color-mix(in srgb, var(--accent) 35%, var(--border)); font-size:12.5px; line-height:1.55; color:var(--text); }
.lb-story b { color:var(--accent); }
.lbh-list li.mis .n { background:color-mix(in srgb, var(--accent) 12%, var(--surface)); border-color:color-mix(in srgb, var(--accent) 30%, var(--border)); color:var(--accent); }
.lbh-list li.mis.done .n { background:#10b981; border-color:#10b981; color:#fff; }

/* pochta.uz (brauzer ichidagi veb-pochta) */
.pm { display:grid; grid-template-columns:170px minmax(0,1fr); min-height:100%; font:13px/1.45 "Segoe UI",system-ui,sans-serif; color:#1f2330; }
.pm-nav { display:flex; flex-direction:column; gap:3px; padding:12px 10px; background:#f4f6fb; border-right:1px solid #e3e6ee; }
.pm-logo { font:800 18px "Segoe UI",system-ui; color:#dc2626; margin:0 4px 10px; }
.pm-logo b { color:#1f2330; }
.pm-new { display:flex; align-items:center; gap:7px; margin-bottom:8px; padding:9px 12px; border-radius:12px; background:#dbeafe; color:#1e40af; font-weight:700; cursor:pointer; }
.pm-new:hover { background:#bfdbfe; }
.pm-new svg { width:15px; height:15px; fill:none; stroke:currentColor; stroke-width:2.2; }
.pm-f { display:flex; justify-content:space-between; align-items:center; padding:7px 12px; border-radius:10px; cursor:pointer; }
.pm-f:hover { background:#e8ecf5; }
.pm-f.on { background:#e0e7ff; font-weight:700; }
.pm-f em { font-style:normal; font-size:11px; font-weight:700; padding:0 7px; border-radius:9px; background:#1e40af; color:#fff; }
.pm-me { margin-top:auto; padding:8px 4px 0; font-size:11.5px; color:#6b7280; }
.pm-main { min-width:0; padding:10px 14px; }
.pm-row { display:grid; grid-template-columns:minmax(90px,150px) minmax(0,1fr) auto; gap:12px; align-items:center; padding:10px 10px; border-bottom:1px solid #eef0f5; cursor:pointer; }
.pm-row:hover { background:#f5f7fc; }
.pm-row b { font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.pm-row span { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:#4b5160; }
.pm-row small { color:#6b7280; font-size:11.5px; display:inline-flex; align-items:center; gap:3px; }
.pm-row small svg { width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:2; }
.pm-row.unread b, .pm-row.unread span { font-weight:700; color:#111827; }
.pm-empty { padding:30px 10px; text-align:center; color:#6b7280; }
.pm-read h2 { margin:4px 0 12px; font:700 18px/1.3 "Segoe UI",system-ui; }
.pm-from { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.pm-from i { width:36px; height:36px; border-radius:50%; display:grid; place-items:center; font-style:normal; font-weight:700; color:#fff; background:#6366f1; }
.pm-from b { display:block; }
.pm-from small { color:#6b7280; }
.pm-body { padding:12px 14px; border-radius:10px; background:#f8f9fc; border:1px solid #eef0f5; line-height:1.6; }
.pm-acts { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
.pm-btn { height:34px; padding:0 14px; border-radius:17px; border:1px solid #d6dae4; background:#fff; color:#1f2330; font:600 12.5px "Segoe UI",system-ui; cursor:pointer; }
.pm-btn:hover { background:#f2f4f9; }
.pm-btn.pri { background:#2563eb; border-color:#2563eb; color:#fff; }
.pm-btn.pri:hover { background:#1d4ed8; }
.pm-compose { display:grid; gap:9px; max-width:560px; }
.pm-compose label { display:grid; gap:3px; font-size:12px; font-weight:600; color:#4b5160; }
.pm-compose input, .pm-compose textarea { border:1px solid #d6dae4; border-radius:8px; padding:8px 10px; font:13px "Segoe UI",system-ui; color:#1f2330; background:#fff; outline:none; resize:vertical; }
.pm-compose input:focus, .pm-compose textarea:focus { border-color:#2563eb; box-shadow:0 0 0 3px rgba(37,99,235,.15); }
.pm-att { display:flex; flex-wrap:wrap; gap:6px; }
.pm-att:empty { display:none; }
.pm-att span, .gv-file span { display:inline-flex; align-items:center; gap:6px; padding:5px 8px 5px 10px; border-radius:8px; background:#eef2ff; color:#3730a3; font-size:12px; font-weight:600; }
.pm-att svg, .gv-file svg { width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:2; }
.pm-att button { border:none; background:transparent; color:#3730a3; font-size:15px; line-height:1; cursor:pointer; padding:0 2px; }

/* davxizmat.uz (onlayn davlat xizmati) */
.gv { min-height:100%; font-family:"Segoe UI",system-ui,sans-serif; color:#1f2330; }
.gv-top { display:flex; align-items:center; justify-content:space-between; gap:10px; flex-wrap:wrap; padding:12px 26px; background:#0c4a6e; color:#fff; }
.gv-top b { font:800 17px "Segoe UI",system-ui; }
.gv-top b span { color:#7dd3fc; }
.gv-top small { font-size:11.5px; opacity:.8; }
.gv-list { display:grid; gap:8px; margin-top:12px; }
.gv-svc { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:13px 14px; border-radius:10px; border:1px solid #dbe3ee; background:#f8fbff; font-weight:600; cursor:pointer; }
.gv-svc:hover { border-color:#0284c7; }
.gv-svc span svg { width:16px; height:16px; fill:none; stroke:#0284c7; stroke-width:2.4; }
.gv-svc.off { color:#9aa1b6; cursor:default; background:#fafafa; }
.gov-form { display:grid; gap:10px; max-width:460px; }
.gov-form label { display:grid; gap:3px; font-size:12.5px; font-weight:600; color:#4b5160; }
.gov-form input[name=name], .gov-form input[name=year] { height:36px; border:1px solid #cbd5e1; border-radius:8px; padding:0 10px; font:13px "Segoe UI",system-ui; color:#1f2330; outline:none; }
.gov-form input:focus { border-color:#0284c7; box-shadow:0 0 0 3px rgba(2,132,199,.15); }
.gv-l { font-size:12.5px; font-weight:600; color:#4b5160; margin-top:2px; }
.gv-seg { display:flex; flex-wrap:wrap; gap:6px; }
.gv-seg label { display:inline-flex; flex-direction:row; align-items:center; gap:6px; padding:7px 11px; border-radius:8px; border:1px solid #cbd5e1; font-weight:500; cursor:pointer; }
.gv-file { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.gov-form .gv-chk { display:flex; flex-direction:row; align-items:center; gap:8px; font-weight:500; }
.gv-err { margin:0; color:#dc2626; font-size:12.5px; font-weight:600; }
.gv-send { height:40px; border:none; border-radius:10px; background:#0284c7; color:#fff; font:700 14px "Segoe UI",system-ui; cursor:pointer; }
.gv-send:hover { background:#0369a1; }
.gv-ok { text-align:center; }
.gv-ok .ic { width:56px; height:56px; margin:0 auto 10px; border-radius:50%; display:grid; place-items:center; background:#dcfce7; }
.gv-ok .ic svg { width:28px; height:28px; fill:none; stroke:#16a34a; stroke-width:3; }
.gv-num { display:inline-block; font:800 26px ui-monospace,monospace; letter-spacing:.06em; padding:8px 18px; border-radius:10px; background:#f1f5f9; border:1px dashed #94a3b8; user-select:all; }

/* Oson Studio videokursi e'loni: video kartochka (chizilgan ekran sahnalari, kursor bosadi), matn, narx, Aloqa */
.lb-promo { position:absolute; right:12px; bottom:54px; z-index:5500; width:312px; border-radius:16px; overflow:hidden; background:var(--os-win); color:var(--os-text); box-shadow:0 26px 54px -20px rgba(10,12,30,.65), 0 0 0 1px var(--os-border); font-family:"Segoe UI", system-ui, sans-serif; animation:lbPrIn .5s cubic-bezier(.2,.8,.2,1) both; }
.lb-promo.out { animation:lbPrOut .3s ease-in both; }
@keyframes lbPrIn { from { opacity:0; transform:translateY(22px) scale(.97); } }
@keyframes lbPrOut { to { opacity:0; transform:translateY(14px) scale(.98); } }
.lb-promo .x { position:absolute; right:7px; top:7px; z-index:3; width:26px; height:26px; border-radius:50%; border:none; background:rgba(0,0,0,.5); color:#fff; display:grid; place-items:center; cursor:pointer; padding:0; }
.lb-promo .x:hover { background:rgba(0,0,0,.72); }
.lb-promo .x svg { width:13px; height:13px; fill:none; stroke:currentColor; stroke-width:2.4; stroke-linecap:round; }
/* Video ko'rinishi */
.lb-promo .vk-th { position:relative; display:block; aspect-ratio:16/9; overflow:hidden; background:#23486f; text-decoration:none !important; }
.lb-promo .vk-th svg { display:block; width:100%; height:100%; }
.lb-promo .vk-th .sc { position:absolute; inset:0; opacity:0; animation:lbSc 16s infinite; }
.lb-promo .vk-th .sc:nth-child(2) { animation-delay:4s; } .lb-promo .vk-th .sc:nth-child(3) { animation-delay:8s; } .lb-promo .vk-th .sc:nth-child(4) { animation-delay:12s; }
@keyframes lbSc { 0% { opacity:0; } 3%, 25% { opacity:1; } 28%, 100% { opacity:0; } }
.lb-promo .vk-th .cur { animation:lbCur 4s ease-in-out infinite; }
.lb-promo .vk-th .clk { transform-box:fill-box; transform-origin:center; opacity:0; animation:lbClk 4s ease-out infinite; }
@keyframes lbCur { 0% { transform:translate(132px,74px); } 45% { transform:translate(var(--x),var(--y)); } 50% { transform:translate(var(--x),var(--y)) scale(.85); } 55%, 80% { transform:translate(var(--x),var(--y)); } 100% { transform:translate(132px,74px); } }
@keyframes lbClk { 0%, 48% { opacity:0; transform:scale(.3); } 52% { opacity:.9; } 72%, 100% { opacity:0; transform:scale(1.7); } }
.lb-promo .vk-th .pl { position:absolute; left:50%; top:46%; width:46px; height:46px; margin:-23px 0 0 -23px; border-radius:50%; display:grid; place-items:center; background:rgba(0,0,0,.55); color:#fff; transition:background .15s, transform .15s; }
.lb-promo .vk-th:hover .pl { background:#229ed9; transform:scale(1.08); }
.lb-promo .vk-th .pl svg { width:20px; height:20px; fill:currentColor; margin-left:2px; }
.lb-promo .vk-th .lb { position:absolute; left:8px; bottom:10px; padding:2px 7px; border-radius:4px; background:rgba(0,0,0,.72); color:#fff; font-size:12px; font-weight:600; line-height:1.4; white-space:nowrap; }
.lb-promo .vk-th .bdg { position:absolute; right:8px; bottom:10px; padding:2px 7px; border-radius:4px; background:#229ed9; color:#fff; font-size:12px; font-weight:700; line-height:1.4; }
.lb-promo .vk-th::after { content:""; position:absolute; left:0; right:0; bottom:0; height:3px; background:rgba(255,255,255,.25); }
.lb-promo .vk-th::before { content:""; position:absolute; z-index:1; left:0; bottom:0; width:38%; height:3px; background:#229ed9; }
/* Matn, narx, tugma */
.lb-promo .bd { position:relative; padding:12px 16px 15px; }
.lb-promo .br { display:block; margin-bottom:3px; font-size:12.5px; font-weight:600; color:#229ed9; }
.lb-promo .pt { margin:0 0 10px; font-size:15px; line-height:1.45; font-weight:600; }
.lb-promo .pt em { font-style:normal; font-weight:800; }
.lb-promo .pr { display:flex; align-items:baseline; gap:8px; flex-wrap:wrap; margin-bottom:12px; }
.lb-promo .pr span { font-size:13px; color:var(--os-muted); }
.lb-promo .pr b { font-size:18px; font-weight:800; color:var(--os-text); }
.lb-promo .tg { display:flex; align-items:center; justify-content:center; gap:8px; height:40px; border-radius:11px; background:#229ed9; color:#fff !important; text-decoration:none !important; font-size:14.5px; font-weight:700; transition:background .15s; }
.lb-promo .tg:hover { background:#1b8cc2; }
.lb-promo .tg svg { width:17px; height:17px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:2; stroke-linejoin:round; stroke-linecap:round; }
.lb-promo .tg .tt { display:flex; align-items:baseline; gap:8px; }
.lb-promo .tg small { font-size:12.5px; font-weight:600; opacity:.85; }
/* Telefon: ekranni yopmaydigan ixcham pastki banner, chapda kichik video, haqiqiy o'lchamda (masshtablanmagan) */
.lb-promo.big { left:6px; right:6px; bottom:6px; width:auto; z-index:30; display:grid; grid-template-columns:76px minmax(0,1fr) auto; align-items:center; gap:5px 8px; padding:5px 6px 6px 5px; border-radius:13px; --os-win:#fff; --os-win2:#f5f6fa; --os-text:#1b1d28; --os-muted:#687085; --os-border:#dde1ea; }
.lb-promo.big .vk-th { grid-column:1; grid-row:1; border-radius:7px; }
.lb-promo.big .vk-th .lb, .lb-promo.big .vk-th .bdg { display:none; }
.lb-promo.big .vk-th .pl { width:24px; height:24px; margin:-12px 0 0 -12px; }
.lb-promo.big .vk-th .pl svg { width:11px; height:11px; }
.lb-promo.big .x { right:2px; top:2px; width:18px; height:18px; background:transparent; color:var(--os-muted); }
.lb-promo.big .x svg { width:11px; height:11px; }
.lb-promo.big .bd { display:contents; }
.lb-promo.big .br { display:none; }
.lb-promo.big .pt { grid-column:2 / 4; grid-row:1; margin:0; padding-right:14px; font-size:11.5px; line-height:1.32; }
.lb-promo.big .pr { grid-column:1 / 3; grid-row:2; margin:0; gap:5px; flex-wrap:nowrap; white-space:nowrap; }
.lb-promo.big .pr span { font-size:10.5px; }
.lb-promo.big .pr b { font-size:13.5px; }
.lb-promo.big .tg { grid-column:3; grid-row:2; height:auto; padding:4px 10px; gap:6px; border-radius:8px; font-size:12.5px; }
.lb-promo.big .tg .tt { flex-direction:column; align-items:flex-start; gap:0; line-height:1.15; }
.lb-promo.big .tg svg { width:15px; height:15px; }
.lb-promo.big .tg small { font-size:10px; }
@media (prefers-reduced-motion:reduce){ .lb-promo, .lb-promo .vk-th .cur, .lb-promo .vk-th .clk, .lb-promo .vk-th .sc { animation:none; } .lb-promo .vk-th .cur { transform:translate(var(--x),var(--y)); } .lb-promo .vk-th .sc:first-child { opacity:1; } }
