/* TAHAI Browser R3: current v3 media within the established royal, fluid layout. */
@media screen {
  .v3-hero { grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr); align-items: center; gap: clamp(26px,3vw,70px); min-height: 0; padding-block: clamp(38px,4.2vw,78px) 42px; }
  .v3-hero h1 { font-size: clamp(3.8rem,5.65vw,6.6rem); line-height: .96; margin-block: 24px; }
  .v3-hero .hero-title-top { font-size: .65em; }
  .v3-hero .hero-lede { max-width: 48ch; font-size: clamp(1rem,1.1vw,1.2rem); line-height: 1.7; }
  .v3-hero .hero-kicker { margin-bottom: 22px; }
  .v3-badge { display: inline-flex; align-items: center; gap: 10px; margin: 0; padding: 8px 9px 8px 12px; border: 1px solid rgba(193,158,255,.35); border-radius: 8px; background: rgba(153,98,236,.11); color: #dbc8ff; font-size: .72rem; font-weight: 800; letter-spacing: .12em; }
  .v3-badge > span { width: 6px; height: 6px; background: #c8a8ff; border-radius: 50%; box-shadow: 0 0 14px #a775ff; }
  .v3-badge b { padding: 3px 7px; border-left: 1px solid rgba(205,170,255,.23); font-size: .72rem; letter-spacing: .03em; color: #f7f0ff; }
  .v3-hero-facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; margin: 28px 0 22px; padding-block: 20px; border-block: 1px solid var(--line); }
  .v3-hero-facts > span { display: flex; flex-direction: column; gap: 7px; color: var(--text-soft); font-size: .66rem; line-height: 1.4; }
  .v3-hero-facts strong { color: #d4b8ff; font-size: clamp(1.15rem,1.65vw,1.65rem); letter-spacing: -.02em; }
  .v3-text-link { display: inline-flex; align-items: center; gap: 12px; padding-block: 6px; font-size: .83rem; font-weight: 700; color: #d4b8ff; text-decoration: none; }
  .v3-text-link:hover { color: #fff; }
  .v3-stage { padding: 0; }
  .v3-demo-heading { display: flex; align-items: center; gap: 13px; margin: 0 0 18px; }
  .v3-demo-heading > img { width: 42px; height: 42px; flex: 0 0 auto; }
  .v3-demo-heading > div { flex: 1; min-width: 0; }
  .v3-demo-heading > div > span { display: block; margin-bottom: 5px; font-size: .56rem; font-weight: 800; color: #c5a7f3; letter-spacing: .16em; }
  .v3-demo-heading strong { font-size: clamp(1.1rem,1.7vw,1.8rem); line-height: 1.15; letter-spacing: -.025em; }
  .v3-demo-quality { font-size: .61rem; font-weight: 800; letter-spacing: .09em; padding: 6px 9px; border: 1px solid var(--line-strong); border-radius: 6px; color: #d1b6f6; }
  .v3-demo-frame { min-width: 0; margin: 0; border: 1px solid rgba(193,155,249,.38); border-radius: 17px; background: #090510; overflow: hidden; box-shadow: 0 32px 80px rgba(0,0,0,.45), 0 0 55px rgba(127,59,233,.09); scroll-margin-top: calc(8rem + 24px); }
  .v3-player-top { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 38px; padding: 11px 16px; border-bottom: 1px solid var(--line); background: linear-gradient(100deg,#21142f,#110a1c); }
  .v3-player-top strong { font-size: .66rem; letter-spacing: .025em; }
  .v3-player-top > span { font-size: .5rem; letter-spacing: .15em; color: #b39acb; font-weight: 700; }
  #browser-demo { display: block; width: 100%; max-width: 100%; height: auto; aspect-ratio: 16/9; background: #090510; object-fit: contain; }
  #browser-demo:focus-visible { outline-offset: -4px !important; }
  .v3-player-caption { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; padding: 16px; border-top: 1px solid var(--line); }
  .v3-player-caption strong { font-size: .77rem; }
  .v3-player-caption p { margin: 5px 0 0; color: #bca9d3; font-size: .62rem; line-height: 1.5; }
  .v3-player-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; }
  .v3-player-actions button,.v3-player-actions a { appearance: none; min-height: 37px; display: inline-flex; align-items: center; justify-content: center; padding: 8px 11px; border: 1px solid rgba(178,146,222,.26); border-radius: 7px; background: #191020; color: #eee3fc; font: 650 .64rem var(--font); text-decoration: none; cursor: pointer; }
  .v3-player-actions [data-demo-toggle] { background: #b68be9; border-color: #b68be9; color: #170a28; }
  .v3-player-actions button:hover,.v3-player-actions a:hover { border-color: #dfc4ff; }
  .v3-demo-chapters { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; padding: 1px; border-top: 1px solid var(--line); background: var(--line); }
  .v3-demo-chapters button { display: flex; min-width: 0; align-items: center; gap: 7px; min-height: 42px; padding: 10px 11px; border: 0; background: #120b1d; color: #c6b6d6; text-align: left; font: 650 .6rem var(--font); line-height: 1.4; cursor: pointer; }
  .v3-demo-chapters button:last-child { grid-column: span 2; }
  .v3-demo-chapters .chapter-time { font-variant-numeric: tabular-nums; color: #9c80bb; font-size: .55rem; white-space: nowrap; }
  .v3-demo-chapters button:hover { background: #221334; color: #fff; }
  .v3-demo-chapters button.is-active { background: #2b1841; color: #fff; box-shadow: inset 0 -2px 0 #bc8dff; }
  .v3-demo-chapters button.is-active .chapter-time { color: #d4b1ff; }
  .v3-video-error { margin: 0; padding: 16px; color: #edd6ff; font-size: .78rem; }
  .v3-demo-foot { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin: 14px 2px 0; color: #b9a4cf; font-size: .62rem; }
  .v3-demo-foot .motion-toggle { min-height: 34px; font-size: .58rem; }
  .v3-demo-description { margin: 5px 2px 0; font-size: .66rem; color: #bea9d5; }
  .v3-demo-description summary { width: fit-content; padding: 9px 0; cursor: pointer; text-underline-offset: 4px; }
  .v3-demo-description summary:hover { color: #fff; }
  .v3-demo-description ol { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px 22px; padding: 16px 0 5px; margin: 0; list-style: none; }
  .v3-demo-description li strong,.v3-demo-description li span { display: block; }
  .v3-demo-description li strong { color: #e7d6fa; margin-bottom: 5px; }
  .v3-demo-description li span { line-height: 1.65; }
  .v3-gallery .showcase-tabs { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 8px; }
  .v3-gallery .showcase-tab { min-width: 0; padding: 12px 10px; font-size: .8rem; }
  .v3-gallery .screenshot-button { aspect-ratio: 16/9; }
  .v3-gallery .screenshot-button::after { display: none; }
  .v3-gallery .screenshot-button img { display: block; width: 100%; height: 100%; object-fit: contain; }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-card { grid-template-columns: minmax(0,1.85fr) minmax(0,.75fr); }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-button { aspect-ratio: 16/9; align-self: center; min-height: 0; width: 100%; border-right: 1px solid var(--line); }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-button img { display: block; width: 100%; height: 100%; object-fit: contain; }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-copy { padding: clamp(22px,2.5vw,44px); }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-copy h3 { font-size: clamp(1.45rem,2.45vw,2.9rem); line-height: 1.1; }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-copy p { font-size: .84rem; line-height: 1.75; }
  .v3-capture-label { display: block; margin-top: 22px; color: #a98fc1; font-size: .55rem; letter-spacing: .11em; font-weight: 700; }
  .v3-mode-workbench { overflow: hidden; border: 1px solid var(--line-strong); border-radius: 20px; background: linear-gradient(140deg,rgba(29,15,44,.8),rgba(12,6,20,.95)); box-shadow: var(--shadow); }
  .v3-mode-workbench .mode-tabs { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 7px; padding: 12px; border: 0; border-bottom: 1px solid var(--line); overflow: visible; }
  .v3-mode-workbench .mode-tab { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; min-width: 0; width: 100%; min-height: 82px; gap: 5px; margin: 0; padding: 12px; text-align: left; }
  .v3-mode-workbench .mode-tab > span { display: none; }
  .v3-mode-workbench .mode-tab strong { font-size: .77rem; line-height: 1.4; white-space: normal; }
  .v3-mode-workbench .mode-tab small { font-size: .59rem; }
  .v3-mode-workbench .mode-tab.is-active { box-shadow: inset 0 -2px 0 #b18aff; }
  .v3-mode-content { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.4fr); align-items: center; gap: clamp(20px,3vw,58px); padding: clamp(22px,2.5vw,48px); }
  .v3-mode-content > * { min-width: 0; }
  .v3-mode-workbench .mode-panel { display: block; min-height: 0; padding: 0; background: none; }
  .v3-mode-workbench .mode-panel::before { display: none; }
  .v3-mode-workbench .mode-panel h3 { font-size: clamp(1.6rem,2.9vw,3.2rem); line-height: 1.08; }
  .v3-mode-workbench .mode-panel p:not(.mode-eyebrow) { font-size: .88rem; line-height: 1.75; }
  .v3-mode-workbench .mode-actions { margin-top: 23px; }
  .v3-mode-workbench .mode-actions span { font-size: .62rem; }
  .v3-feature-shot { position: relative; min-width: 0; width: 100%; display: block; overflow: hidden; padding: 0; border: 1px solid rgba(191,153,238,.3); border-radius: 12px; background: #0a0611; cursor: zoom-in; box-shadow: 0 20px 48px rgba(0,0,0,.3); }
  .v3-feature-shot img { display: block; width: 100%; height: auto; object-fit: contain; }
  .v3-feature-shot .screenshot-zoom { position: absolute; inset: auto 12px 12px auto; }
  .v3-section-note { margin: 20px 0 0; max-width: 88ch; font-size: .8rem; color: #bfaed3; line-height: 1.7; }
  .v3-local-oi { padding-block: clamp(64px,6vw,116px); }
  .v3-oi-intro { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(0,.75fr); gap: 0 clamp(30px,5vw,90px); align-items: end; margin-bottom: 36px; }
  .v3-oi-intro > .section-label { grid-column: 1/-1; }
  .v3-oi-intro h2 { margin: 0; font-size: clamp(2.3rem,4.2vw,4.9rem); line-height: 1.03; letter-spacing: -.045em; }
  .v3-oi-intro h2 em { color: #c29bea; font-style: normal; }
  .v3-oi-intro > p:last-child { margin-bottom: 4px; font-size: .98rem; line-height: 1.75; color: var(--text-soft); }
  .v3-oi-content { display: grid; grid-template-columns: minmax(0,1.5fr) minmax(0,.7fr); align-items: center; gap: clamp(28px,4vw,76px); }
  .v3-oi-content > * { min-width: 0; }
  .v3-mini-label { font-weight: 800; font-size: .59rem; color: #ba97e7; letter-spacing: .15em; }
  .v3-oi-copy h3 { font-size: clamp(1.8rem,2.7vw,3.1rem); line-height: 1.08; letter-spacing: -.035em; margin: 15px 0 18px; }
  .v3-oi-copy > p { font-size: .87rem; line-height: 1.75; color: var(--text-soft); }
  .v3-oi-copy dl { margin: 25px 0 15px; }
  .v3-oi-copy dl > div { padding: 15px 0; border-top: 1px solid var(--line); }
  .v3-oi-copy dt { color: #dec9f7; font-size: .79rem; font-weight: 750; }
  .v3-oi-copy dd { margin: 5px 0 0; color: #b8a5ce; font-size: .71rem; line-height: 1.65; }
  .v3-demo-description,.v3-oi-copy,.v3-player-caption,.v3-mode-content,.v3-demo-chapters { overflow-wrap: anywhere; }
}
@media screen and (max-width: 1200px) {
  .v3-hero { grid-template-columns: minmax(0,.78fr) minmax(0,1.22fr); }
  .v3-hero h1 { font-size: clamp(3.1rem,5.9vw,5rem); }
  .v3-demo-chapters { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .v3-demo-chapters button:last-child { grid-column: auto; }
  .v3-gallery .showcase-tabs { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .v3-mode-workbench .mode-tabs { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .v3-mode-workbench .mode-tab { min-height: 64px; }
  .v3-mode-content { grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); }
  .v3-oi-content { grid-template-columns: minmax(0,1.25fr) minmax(0,.85fr); }
}
@media screen and (max-width: 960px) {
  .v3-hero { grid-template-columns: minmax(0,1fr); gap: 36px; padding-top: 34px; }
  .v3-hero h1 { font-size: clamp(3.5rem,8vw,5.8rem); }
  .v3-hero .hero-lede { max-width: 68ch; }
  .v3-hero-facts { max-width: 680px; }
  .v3-hero .hero-actions { margin-bottom: 0; }
  .v3-stage { width: 100%; }
  .v3-demo-heading strong { font-size: 1.4rem; }
  .v3-demo-chapters { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .v3-demo-chapters button:last-child { grid-column: span 2; }
  .v3-demo-chapters button { font-size: .66rem; }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-card { grid-template-columns: minmax(0,1fr); }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-button { border-right: 0; border-bottom: 1px solid var(--line); }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-copy h3 { font-size: 1.9rem; }
  .v3-mode-content { grid-template-columns: minmax(0,1fr); }
  .v3-mode-workbench .mode-panel h3 { max-width: 26ch; font-size: 2.2rem; }
  .v3-mode-workbench .mode-panel p:not(.mode-eyebrow) { max-width: 74ch; }
  .v3-oi-intro,.v3-oi-content { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .v3-oi-intro > .section-label { margin-bottom: -10px; }
  .v3-oi-intro > p:last-child { max-width: 72ch; }
  .v3-oi-copy dl { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
}
@media screen and (max-width: 580px) {
  .v3-hero { gap: 28px; padding-top: 28px; }
  .v3-hero h1 { font-size: clamp(3.15rem,12vw,4.3rem); margin-block: 20px; }
  .v3-hero .hero-kicker { flex-wrap: wrap; gap: 8px; font-size: .56rem; margin-bottom: 17px; }
  .v3-hero .hero-lede { font-size: .98rem; line-height: 1.65; }
  .v3-hero .hero-actions .button { width: 100%; justify-content: center; }
  .v3-hero-facts { gap: 12px; margin-top: 23px; }
  .v3-hero-facts > span { font-size: .64rem; }
  .v3-hero-facts strong { font-size: 1.25rem; }
  .v3-demo-heading { margin-bottom: 13px; gap: 10px; }
  .v3-demo-heading > img { width: 36px; height: 36px; }
  .v3-demo-heading strong { font-size: 1.15rem; }
  .v3-demo-heading > div > span { font-size: .52rem; }
  .v3-demo-quality { font-size: .58rem; padding: 5px 7px; }
  .v3-player-top { padding: 10px 12px; gap: 10px; }
  .v3-player-top strong { font-size: .66rem; }
  .v3-player-top > span { font-size: .44rem; }
  .v3-player-caption { padding: 13px; gap: 14px; }
  .v3-player-caption strong { font-size: .79rem; }
  .v3-player-caption p { font-size: .65rem; }
  .v3-player-actions { width: 100%; gap: 6px; }
  .v3-player-actions > * { flex: 1 1 auto; min-height: 42px; font-size: .66rem; }
  .v3-demo-chapters { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .v3-demo-chapters button { min-height: 45px; padding: 10px; font-size: .64rem; }
  .v3-demo-chapters button:last-child { grid-column: span 2; }
  .v3-demo-description ol { grid-template-columns: minmax(0,1fr); }
  .v3-demo-foot { font-size: .6rem; gap: 7px; }
  .v3-demo-frame { border-radius: 12px; }
  .v3-gallery .showcase-tabs { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .v3-gallery .showcase-tab { min-height: 45px; font-size: .72rem; }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-copy { padding: 23px; }
  .v3-gallery .screenshot-grid.is-enhanced .screenshot-copy h3 { font-size: 1.7rem; }
  .v3-mode-workbench .mode-tabs { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 5px; padding: 9px; }
  .v3-mode-workbench .mode-tab { align-items: flex-start; min-height: 69px; padding: 10px; }
  .v3-mode-workbench .mode-tab strong { font-size: .78rem; }
  .v3-mode-content { padding: 22px; gap: 26px; }
  .v3-mode-workbench .mode-panel h3 { font-size: 1.85rem; }
  .v3-feature-shot { border-radius: 8px; }
  .v3-feature-shot .screenshot-zoom { inset: auto 7px 7px auto; font-size: .56rem; min-height: 27px; padding: 5px 8px; }
  .v3-oi-intro h2 { font-size: clamp(2rem,7.4vw,2.7rem); }
  .v3-oi-copy h3 { font-size: 2rem; }
  .v3-oi-copy dl { grid-template-columns: minmax(0,1fr); gap: 0; }
  .v3-oi-copy dt { font-size: .86rem; }
  .v3-oi-copy dd { font-size: .8rem; }
}
@media print {
  .v3-player-actions,.v3-demo-chapters,.v3-demo-foot,.v3-demo-description { display: none !important; }
  .v3-hero,.v3-mode-content,.v3-oi-content,.v3-oi-intro { display: block; }
  .v3-feature-shot { border: 0; }
}
