/* To‘r — shveytsar to‘ri: ko‘rinadigan modul chiziqlari, chapga tekislash, raqamlangan qatorlar, vertikal sana. */
.t-tor .inv{background:var(--p1)}
.t-tor .sw-grid{position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:repeating-linear-gradient(90deg,var(--w1) 0 1px,transparent 1px 25%),repeating-linear-gradient(180deg,var(--w2) 0 1px,transparent 1px 56px);
  animation:sw-grid 1.6s cubic-bezier(.2,.7,.2,1) both}
.t-tor .small{font-family:var(--fb);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--gl);font-weight:500}

/* ---------- Birinchi ekran ---------- */
.t-tor .sw-hero{position:relative;z-index:1;padding:104px 46px 44px 20px;text-align:left}
.t-tor .sw-vdate{position:absolute;right:12px;top:104px;writing-mode:vertical-rl;text-orientation:mixed;font-family:var(--fn);font-size:12px;font-weight:500;letter-spacing:.44em;color:var(--tx2);font-variant-numeric:tabular-nums;animation:sw-in .9s .15s both}
.t-tor .sw-idx{font-family:var(--fn);font-size:11px;font-weight:500;letter-spacing:.16em;color:var(--tx2);margin-bottom:26px;animation:sw-in .8s .05s both}
.t-tor .sw-lab{animation:sw-in .8s .18s both}
.t-tor .names{font-family:var(--fd);font-size:clamp(36px,11.4vw,60px);line-height:.94;font-weight:600;letter-spacing:-.03em;text-transform:uppercase;margin:10px 0 0;color:var(--tx);animation:sw-in .9s .28s both}
.t-tor .names .n{display:block}
.t-tor .names .amp{display:block;font-family:var(--fb);font-size:.26em;font-weight:400;letter-spacing:0;color:var(--gl);margin:8px 0;text-transform:none}
.t-tor .sw-rule{height:1px;background:var(--tx);margin:26px 0 14px;transform-origin:left center;animation:sw-line 1.1s .5s cubic-bezier(.2,.7,.2,1) both}
.t-tor .sw-meta{display:flex;flex-wrap:wrap;gap:4px 18px;font-family:var(--fb);font-size:10px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--tx2);animation:sw-in .8s .62s both}
.t-tor .sw-ph{margin-top:30px;aspect-ratio:16/10;overflow:hidden;filter:grayscale(1) contrast(1.06);animation:sw-in .9s .7s both}
.t-tor .sw-ph img{width:100%;height:100%;object-fit:cover}

/* ---------- Raqamlangan qatorlar ---------- */
.t-tor .content{position:relative;z-index:1;padding:0 20px 72px;gap:0;text-align:left;counter-reset:sw}
.t-tor .content>section{position:relative;padding:16px 0 38px 46px;border-top:1px solid var(--tx);animation:sw-in .85s cubic-bezier(.2,.7,.2,1) both}
.t-tor .content>section:before{counter-increment:sw;content:counter(sw,decimal-leading-zero);position:absolute;left:0;top:16px;font-family:var(--fn);font-size:11px;font-weight:500;letter-spacing:.16em;color:var(--tx2);font-variant-numeric:tabular-nums}
.t-tor .content>section:nth-child(1){animation-delay:.1s}
.t-tor .content>section:nth-child(2){animation-delay:.2s}
.t-tor .content>section:nth-child(3){animation-delay:.3s}
.t-tor .content>section:nth-child(4){animation-delay:.4s}
.t-tor .content>section:nth-child(5){animation-delay:.5s}
.t-tor .content>section:nth-child(n+6){animation-delay:.6s}

.t-tor .quote{font-family:var(--fd);font-style:normal;font-weight:500;font-size:22px;line-height:1.34;letter-spacing:-.015em;color:var(--tx);margin:0;padding:0;max-width:20ch}
.t-tor .greeting{padding:0}
.t-tor .greeting p{font-family:var(--fb);font-style:normal;font-size:15.5px;line-height:1.72;color:var(--tx);max-width:38ch}
.t-tor .greeting p::first-line{font-family:var(--fd);font-weight:600;font-size:18px;letter-spacing:.01em;line-height:2.1;color:var(--gl)}
.t-tor .datebig{font-family:var(--fn);font-size:46px;font-weight:600;letter-spacing:-.04em;line-height:1}
.t-tor .datebig small{font-family:var(--fb);font-size:10px;font-weight:500;letter-spacing:.24em;color:var(--tx2);margin-top:10px}
.t-tor .cd{gap:0;border-top:1px solid var(--line);margin-top:4px}
.t-tor .cd>div{background:transparent;border:0;border-right:1px solid var(--line);border-radius:0;padding:12px 6px 8px 0;text-align:left}
.t-tor .cd>div:last-child{border-right:0}
.t-tor .cd b{font-family:var(--fn);font-size:26px;font-weight:600;letter-spacing:-.03em;color:var(--tx)}
.t-tor .cd span{font-family:var(--fb);font-size:9px;font-weight:500;letter-spacing:.16em;color:var(--tx2)}
.t-tor .today{border-radius:0;text-align:left;padding:20px 16px}
.t-tor .today .big{font-family:var(--fn);font-weight:600;letter-spacing:-.03em}

/* Dastur — raqamlangan qatorlar 01 / 02 / 03 */
.t-tor .sw-evs{list-style:none;margin:16px 0 0;padding:0}
.t-tor .sw-ev{display:grid;grid-template-columns:28px 52px 1fr;gap:0 10px;padding:14px 0;border-top:1px solid var(--line)}
.t-tor .sw-ev:last-child{border-bottom:1px solid var(--line)}
.t-tor .sw-no{font-family:var(--fn);font-size:11px;font-weight:600;letter-spacing:.1em;color:var(--gl)}
.t-tor .sw-tm{font-family:var(--fn);font-size:15px;font-weight:600;color:var(--tx);font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.t-tor .sw-nm{font-family:var(--fd);font-size:19px;font-weight:600;line-height:1.2;letter-spacing:-.015em;color:var(--tx)}
.t-tor .sw-dt{font-family:var(--fb);font-size:10px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--tx2);margin-top:5px}
.t-tor .sw-ad{font-family:var(--fb);font-size:13px;line-height:1.5;color:var(--tx2);margin-top:6px}
.t-tor .sw-ad b{color:var(--tx);font-weight:600}
.t-tor .maps{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}

/* ---------- Umumiy elementlar: burchaklar to‘g‘ri, ramkalar hairline ---------- */
.t-tor .parents{grid-template-columns:1fr;gap:0;margin-top:10px}
.t-tor .parents>div{background:transparent;border-radius:0;border-top:1px solid var(--line);padding:12px 0;text-align:left}
.t-tor .parents>div:first-child{border-top:0}
.t-tor .parents .who,.t-tor .parents .nm{background:transparent;border-radius:0;padding:0}
.t-tor .parents .who{font-size:9.5px;letter-spacing:.2em;color:var(--gl)}
.t-tor .parents .nm{font-family:var(--fd);font-size:18px;font-weight:600;letter-spacing:-.01em;margin-top:3px}
.t-tor .note{background:transparent;border-radius:0;padding:16px 0 38px 46px;font-family:var(--fb);font-size:14px}
.t-tor .btn{border-radius:0;border:1px solid var(--tx);color:var(--tx);font-family:var(--fb);font-size:10.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;padding:11px 15px}
.t-tor .btn.solid{background:var(--gl);color:var(--p1);border-color:var(--gl)}
.t-tor .btn.sm{padding:8px 11px;font-size:9.5px}
.t-tor .row{justify-content:flex-start}
.t-tor .form input,.t-tor .form select,.t-tor .form textarea{border-radius:0;background:transparent;border:1px solid var(--line)}
.t-tor .seg{gap:0}
.t-tor .seg button{border-radius:0;border:1px solid var(--line);border-right:0;color:var(--tx2);font-size:11px;letter-spacing:.04em}
.t-tor .seg button:last-child{border-right:1px solid var(--line)}
.t-tor .seg button[aria-pressed="true"]{background:var(--gl);border-color:var(--gl);color:var(--p1)}
.t-tor .wl{gap:0}
.t-tor .wi{background:transparent;border-radius:0;border-top:1px solid var(--line);padding:11px 0}
.t-tor .gift .card{background:transparent;border:1px solid var(--tx);border-radius:0;font-family:var(--fn);font-size:20px;font-weight:600;letter-spacing:.06em}
.t-tor .closing{font-family:var(--fd);font-size:20px;font-weight:500;letter-spacing:-.01em;color:var(--tx)}
.t-tor .tl{padding-left:0;margin-top:12px}
.t-tor .tl:before{display:none}
.t-tor .tl .it{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;padding:12px 0;margin:0}
.t-tor .tl .it:before{display:none}
.t-tor .tl .it.cur{transform:none;border-top-color:var(--gl)}
.t-tor .tl .h{font-family:var(--fd);font-weight:600;letter-spacing:-.01em}
.t-tor .together{font-family:var(--fn);font-size:62px;font-weight:600;letter-spacing:-.04em}
.t-tor .together small{font-family:var(--fb);font-size:10px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--tx2)}
.t-tor .next{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;box-shadow:none;padding:14px 0}
.t-tor .smp{background:transparent;border:1px solid var(--line);border-radius:0;text-align:left;justify-items:start}
.t-tor .smp-b{border-radius:0;border-color:var(--line)}
.t-tor .smp-l{justify-content:flex-start}
.t-tor .wm{text-align:left}
/* Boshqaruv tugmalari va konvert — burchaksiz */
.t-tor .langs,.t-tor .langs button,.t-tor .music{border-radius:0}
.t-tor .env-back,.t-tor .env-front,.t-tor .env-flap,.t-tor .env-letter{border-radius:0}
.t-tor .gate-names{font-family:var(--fd);font-size:22px;font-weight:600;letter-spacing:-.02em;text-transform:uppercase}
.t-tor .env-letter .names{font-size:20px}

@keyframes sw-grid{from{opacity:0;clip-path:inset(0 0 100% 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}
@keyframes sw-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes sw-line{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media (prefers-reduced-motion:reduce){
  .t-tor .sw-grid,.t-tor .sw-vdate,.t-tor .sw-idx,.t-tor .sw-lab,.t-tor .names,.t-tor .sw-rule,.t-tor .sw-meta,.t-tor .sw-ph,.t-tor .content>section{animation:none}
}
@media (min-width:520px){.t-tor .sw-grid{background-image:repeating-linear-gradient(90deg,var(--w1) 0 1px,transparent 1px 20%),repeating-linear-gradient(180deg,var(--w2) 0 1px,transparent 1px 64px)}}

/* Mezbon qatori (ota-onalar nomidan): «Farzandlarimiz» yorlig'i ismlardan oldin, «… nomidan» qatori ismlardan keyin */
.t-tor .host-of{font-family:var(--fb);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--tx2);margin:0 0 6px}
.t-tor .host{font-family:var(--fd);font-size:16px;line-height:1.35;color:var(--tx2);margin:10px 0 0}
.t-tor .host .host-line{color:var(--tx);font-weight:600}
.t-tor .host .host-by{font-family:var(--fb);font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.8;margin-left:4px}
.t-tor .host-of{color:var(--gl);font-weight:700;letter-spacing:.3em;font-size:10px}
.t-tor .host{font-family:var(--fb);font-size:14px}
