/* ITAHUKA Video Platform v5.0.17 — Fullscreen Glass Mobile/PWA theme */
@media (max-width:1600px), (hover:none) and (pointer:coarse) {
  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active {
    --itg-safe-t: env(safe-area-inset-top, 0px);
    --itg-safe-r: env(safe-area-inset-right, 0px);
    --itg-safe-b: env(safe-area-inset-bottom, 0px);
    --itg-safe-l: env(safe-area-inset-left, 0px);
    --itg-vh: 100dvh;
    --itg-glass: rgba(11,16,24,.48);
    --itg-glass-strong: rgba(7,11,18,.78);
    --itg-line: rgba(255,255,255,.17);
    --itg-soft: rgba(255,255,255,.09);
    --itg-text: #fff;
    --itg-muted: rgba(255,255,255,.69);
    --itg-red: #ff2b43;
    --itg-green: #45df8e;
    --itg-shadow: 0 24px 70px rgba(0,0,0,.48);
    --itg-dock-h: 78px;
    --itg-radius: 25px;
    margin: 0 !important;
    width: 100% !important;
    height: var(--itg-vh) !important;
    min-height: var(--itg-vh) !important;
    overflow: hidden !important;
    overscroll-behavior: none !important;
    background: #000 !important;
    color: var(--itg-text) !important;
  }

  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active > .site-header,
  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active > .youtube-sidebar,
  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active > .mobile-bottom-nav,
  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active > .site-content,
  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active > .site-footer,
  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active > .it-unified-video-base,
  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active > .it-live-overlay-root,
  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active > .it-live-floating-ui-root,
  body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active > .it-mac-dock-reveal-zone {
    display: none !important;
  }

  .itg-app,
  .itg-app * { box-sizing: border-box; }
  .itg-app button,
  .itg-app input,
  .itg-app textarea { font: inherit; color: inherit; }
  .itg-app button { cursor: pointer; -webkit-tap-highlight-color: transparent; }
  .itg-app a { color: inherit; text-decoration: none; }

  .itg-app {
    position: fixed;
    inset: 0;
    z-index: 2147480000;
    width: 100vw;
    height: var(--itg-vh);
    overflow: hidden;
    isolation: isolate;
    background: #000;
    color: #fff;
    font-family: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    touch-action: pan-x pan-y;
  }

  .itg-stage { position:absolute; inset:0; z-index:0; overflow:hidden; background:#05070a; }
  .itg-media-host,
  .itg-stage-poster,
  .itg-stage-vignette { position:absolute; inset:0; }
  .itg-media-host { overflow:hidden; background:#000; }
  .itg-stage-poster { z-index:0; background-position:center; background-size:cover; background-repeat:no-repeat; transform:scale(1.01); transition:background-image .25s ease,opacity .25s ease; }
  .itg-stage-poster::after { content:""; position:absolute; inset:0; background:radial-gradient(circle at 50% 38%,transparent 0 20%,rgba(0,0,0,.08) 62%,rgba(0,0,0,.36) 100%); }
  .itg-stage-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; background:#000; }
  .itg-stage-frame { position:absolute; top:50%; left:50%; width:max(100vw,177.7778vh); height:max(100vh,56.25vw); min-width:100%; min-height:100%; border:0; transform:translate(-50%,-50%); background:#000; }
  .itg-stage-vignette { z-index:2; pointer-events:none; background:linear-gradient(180deg,rgba(0,0,0,.44) 0,rgba(0,0,0,.06) 23%,rgba(0,0,0,.04) 58%,rgba(0,0,0,.68) 100%); }
  .itg-stage-loader { position:absolute; z-index:3; inset:0; display:grid; place-items:center; pointer-events:none; opacity:0; transition:opacity .2s ease; }
  .itg-stage-loader.is-visible { opacity:1; }
  .itg-stage-loader span { width:42px; height:42px; border-radius:50%; border:3px solid rgba(255,255,255,.23); border-top-color:#fff; animation:itg-spin .8s linear infinite; }
  .itg-unmute {
    position:absolute;
    z-index:12;
    left:50%;
    top:50%;
    min-height:48px;
    border-radius:999px;
    padding:0 17px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    color:#fff;
    font-size:13px;
    font-weight:850;
    transform:translate(-50%,-50%);
    transition:opacity .18s ease,transform .18s ease,background .18s ease;
  }
  .itg-unmute[hidden] { display:none !important; }
  .itg-unmute svg { width:21px; height:21px; }
  .itg-unmute:active { transform:translate(-50%,-50%) scale(.94); }
  @keyframes itg-spin { to { transform:rotate(360deg); } }

  .itg-glass {
    border:1px solid var(--itg-line);
    background:linear-gradient(145deg,rgba(14,20,29,.65),rgba(6,10,16,.36));
    backdrop-filter:blur(25px) saturate(155%);
    -webkit-backdrop-filter:blur(25px) saturate(155%);
    box-shadow:var(--itg-shadow);
  }

  .itg-top {
    position:absolute; z-index:20;
    top:calc(var(--itg-safe-t) + 12px);
    left:calc(var(--itg-safe-l) + 14px);
    right:calc(var(--itg-safe-r) + 14px);
    display:flex; align-items:center; justify-content:space-between;
    pointer-events:none;
    transition:opacity .22s ease, transform .22s ease;
  }
  .itg-top > * { pointer-events:auto; }
  .itg-brand { min-width:0; display:flex; align-items:center; gap:9px; padding:7px 11px; border-radius:999px; }
  .itg-brand-logo { width:31px; height:31px; flex:0 0 auto; border-radius:50%; display:grid; place-items:center; overflow:hidden; background:rgba(255,255,255,.12); box-shadow:inset 0 0 0 1px rgba(255,255,255,.24); }
  .itg-brand-logo img { width:100%; height:100%; object-fit:contain; }
  .itg-brand-copy { display:flex; align-items:center; min-width:0; gap:8px; }
  .itg-brand-copy b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; letter-spacing:.07em; }
  .itg-live-badge { padding:4px 7px; border-radius:999px; background:rgba(255,255,255,.14); font-size:9px; font-weight:900; letter-spacing:.08em; }
  .itg-live-badge.is-live { background:var(--itg-red); }
  .itg-top-actions { display:flex; gap:8px; }
  .itg-round { position:relative; width:42px; height:42px; border:1px solid var(--itg-line); border-radius:50%; background:rgba(6,10,16,.5); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); display:grid; place-items:center; transition:transform .16s ease,background .16s ease; }
  .itg-round:active { transform:scale(.93); }
  .itg-round svg { width:20px; height:20px; }
  .itg-dot { position:absolute; right:4px; top:3px; min-width:10px; height:10px; padding:0 3px; border-radius:999px; background:var(--itg-red); box-shadow:0 0 0 3px rgba(6,10,16,.82); color:#fff; font-size:7px; line-height:10px; text-align:center; }

  .itg-nav {
    position:absolute; z-index:18; left:calc(var(--itg-safe-l) + 15px); top:50%; transform:translateY(-50%);
    width:78px; padding:9px 7px; border-radius:24px; display:flex; flex-direction:column; gap:4px;
    transition:opacity .22s ease,transform .22s ease;
  }
  .itg-nav button { height:54px; border:0; border-radius:17px; background:transparent; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:3px; opacity:.74; transition:transform .15s ease,background .15s ease,opacity .15s ease; }
  .itg-nav button svg { width:20px; height:20px; }
  .itg-nav button span { font-size:9px; font-weight:780; }
  .itg-nav button:hover,.itg-nav button.is-active { background:rgba(255,255,255,.16); opacity:1; transform:scale(1.04); }

  .itg-engage {
    position:absolute; z-index:19; right:calc(var(--itg-safe-r) + 15px); bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 28px);
    display:flex; flex-direction:column; gap:9px;
    transition:opacity .22s ease, transform .22s ease;
  }
  .itg-engage button { width:50px; min-height:50px; border:1px solid var(--itg-line); border-radius:18px; background:rgba(6,10,16,.51); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); display:grid; place-items:center; gap:1px; padding:5px; transition:transform .15s ease,background .15s ease,color .15s ease; }
  .itg-engage button:active { transform:scale(.92); }
  .itg-engage button svg { width:21px; height:21px; }
  .itg-engage button small { max-width:42px; overflow:hidden; text-overflow:ellipsis; font-size:9px; line-height:1; color:var(--itg-muted); }
  .itg-engage button.is-on { background:rgba(255,43,67,.22); color:#ff8b99; }

  .itg-meta { position:absolute; z-index:17; left:calc(var(--itg-safe-l) + 105px); right:calc(var(--itg-safe-r) + 84px); bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 29px); display:flex; align-items:flex-end; pointer-events:none; transition:opacity .22s ease,transform .22s ease; }
  .itg-meta-card { max-width:630px; padding:16px 18px; border-radius:24px; pointer-events:auto; }
  .itg-eyebrow { display:flex; align-items:center; gap:7px; font-size:10px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.82); }
  .itg-eyebrow i { width:7px; height:7px; border-radius:50%; background:rgba(255,255,255,.62); box-shadow:0 0 10px rgba(255,255,255,.25); }
  .itg-eyebrow.is-live { color:#ffd5da; }
  .itg-eyebrow.is-live i { background:var(--itg-red); box-shadow:0 0 14px rgba(255,43,67,.75); }
  .itg-meta h1 { margin:5px 0 6px; font-size:clamp(22px,3.7vw,40px); line-height:1.04; text-shadow:0 2px 16px rgba(0,0,0,.42); }
  .itg-meta p { display:-webkit-box; margin:0; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; color:var(--itg-muted); font-size:13px; }
  .itg-channel { display:flex; align-items:center; gap:9px; margin-top:13px; }
  .itg-avatar { width:37px; height:37px; flex:0 0 auto; border-radius:50%; display:grid; place-items:center; overflow:hidden; background:linear-gradient(145deg,#42516c,#101722); border:1px solid rgba(255,255,255,.22); font-size:12px; font-weight:850; }
  .itg-avatar img { width:100%; height:100%; object-fit:cover; }
  .itg-channel-copy { min-width:0; font-size:12px; }
  .itg-channel-copy b,.itg-channel-copy small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .itg-channel-copy small { color:var(--itg-muted); }
  .itg-follow { margin-left:auto; border:0; border-radius:999px; background:#fff; color:#070a0f !important; font-weight:850; padding:9px 14px; }
  .itg-follow.is-on { background:rgba(255,255,255,.15); color:#fff !important; border:1px solid var(--itg-line); }

  .itg-overlay { position:absolute; z-index:30; inset:0; pointer-events:none; }
  .itg-panel { position:absolute; pointer-events:auto; visibility:hidden; opacity:0; transform:translateY(15px) scale(.985); transition:opacity .22s ease,transform .22s ease,visibility .22s; border-radius:28px; overflow:hidden; }
  .itg-panel.is-open { visibility:visible; opacity:1; transform:none; }
  .itg-sheet { left:calc(var(--itg-safe-l) + 105px); right:calc(var(--itg-safe-r) + 84px); top:calc(var(--itg-safe-t) + 70px); bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 23px); }
  .itg-side { width:min(420px,calc(100vw - 24px)); right:calc(var(--itg-safe-r) + 12px); top:calc(var(--itg-safe-t) + 66px); bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 18px); }
  .itg-panel-head { height:65px; padding:0 18px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.10); }
  .itg-panel-title { min-width:0; display:flex; align-items:center; gap:9px; }
  .itg-panel-title h2 { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:19px; margin:0; }
  .itg-panel-title small { color:var(--itg-muted); font-size:10px; }
  .itg-close { width:35px; height:35px; border:0; border-radius:50%; background:rgba(255,255,255,.11); display:grid; place-items:center; }
  .itg-close svg { width:17px; height:17px; }
  .itg-panel-body { height:calc(100% - 65px); overflow:auto; padding:16px; scrollbar-width:none; overscroll-behavior:contain; }
  .itg-panel-body::-webkit-scrollbar { display:none; }

  .itg-chips { display:flex; gap:8px; overflow:auto; margin-bottom:13px; scrollbar-width:none; }
  .itg-chips::-webkit-scrollbar { display:none; }
  .itg-chip { border:1px solid rgba(255,255,255,.12); border-radius:999px; padding:8px 12px; background:rgba(255,255,255,.08); font-size:11px; white-space:nowrap; }
  .itg-chip.is-on { background:#fff; color:#070a0f; }
  .itg-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(225px,1fr)); gap:12px; }
  .itg-card { min-width:0; border:1px solid rgba(255,255,255,.12); border-radius:19px; overflow:hidden; background:rgba(255,255,255,.07); transition:transform .16s ease,background .16s ease,border-color .16s ease; }
  .itg-card:active { transform:scale(.985); }
  .itg-card.is-current { border-color:rgba(255,43,67,.78); background:rgba(255,43,67,.13); }
  .itg-thumb { position:relative; aspect-ratio:16/9; background-position:center; background-size:cover; background-color:rgba(255,255,255,.08); }
  .itg-card.itg-short .itg-thumb { aspect-ratio:9/16; }
  .itg-thumb::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.58)); }
  .itg-duration,.itg-card-live,.itg-card-status { position:absolute; z-index:1; right:7px; bottom:7px; background:rgba(0,0,0,.76); border-radius:7px; padding:4px 6px; font-size:9px; }
  .itg-card-live { left:7px; right:auto; background:var(--itg-red); font-weight:900; }
  .itg-card-status { left:7px; right:auto; background:rgba(18,27,39,.86); border:1px solid rgba(255,255,255,.16); font-weight:850; }
  .itg-copy { padding:10px 11px 12px; }
  .itg-copy b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
  .itg-copy small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--itg-muted); font-size:10px; margin-top:4px; }

  .itg-list { display:flex; flex-direction:column; gap:9px; }
  .itg-row { display:flex; gap:10px; padding:11px; border:1px solid rgba(255,255,255,.10); border-radius:16px; background:rgba(255,255,255,.065); }
  .itg-row.is-unread { border-color:rgba(255,43,67,.34); background:rgba(255,43,67,.09); }
  .itg-row .itg-avatar { width:31px; height:31px; font-size:10px; }
  .itg-row-body { flex:1; min-width:0; }
  .itg-row-body b { display:block; font-size:11px; }
  .itg-row-body p { margin:3px 0 0; font-size:11px; line-height:1.4; color:var(--itg-muted); overflow-wrap:anywhere; }
  .itg-row-meta { display:flex; align-items:center; gap:8px; margin-top:5px; }
  .itg-time { font-size:9px; color:rgba(255,255,255,.44); }
  .itg-reaction-mini { border:0; border-radius:999px; padding:3px 7px; background:rgba(255,255,255,.08); font-size:9px; }

  .itg-composer { position:sticky; bottom:0; z-index:3; display:flex; align-items:center; gap:7px; padding:9px; margin-top:11px; border:1px solid var(--itg-line); border-radius:18px; background:rgba(5,8,13,.84); backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); }
  .itg-composer input { flex:1; min-width:0; border:0; outline:0; background:transparent; font-size:13px; }
  .itg-composer button { width:38px; height:38px; flex:0 0 auto; border:0; border-radius:50%; background:rgba(255,255,255,.12); display:grid; place-items:center; }
  .itg-composer button[type="submit"] { background:#fff; color:#080b10; }
  .itg-composer svg { width:18px; height:18px; }
  .itg-auth-callout { margin-top:12px; padding:12px; border:1px solid var(--itg-line); border-radius:16px; background:rgba(255,255,255,.07); color:var(--itg-muted); font-size:12px; text-align:center; }
  .itg-auth-callout a { color:#fff; font-weight:800; }

  .itg-timeline { position:relative; padding-left:27px; }
  .itg-timeline::before { content:""; position:absolute; left:8px; top:7px; bottom:7px; width:2px; background:linear-gradient(var(--itg-red),rgba(255,255,255,.17)); }
  .itg-event { position:relative; display:flex; align-items:center; gap:12px; justify-content:space-between; min-height:61px; padding:11px 12px; margin-bottom:8px; border:1px solid rgba(255,255,255,.10); border-radius:16px; background:rgba(255,255,255,.065); }
  .itg-event::before { content:""; position:absolute; left:-24px; width:12px; height:12px; border-radius:50%; background:#fff; border:3px solid rgba(255,43,67,.8); box-shadow:0 0 0 4px rgba(255,43,67,.12); }
  .itg-event strong,.itg-event small { display:block; }
  .itg-event strong { font-size:12px; }
  .itg-event small { margin-top:4px; color:var(--itg-muted); font-size:10px; }
  .itg-tag { flex:0 0 auto; border-radius:999px; padding:5px 8px; background:rgba(255,255,255,.10); font-size:9px; font-weight:800; }
  .itg-tag.is-live { background:var(--itg-red); }
  .itg-remind { border:0; border-radius:999px; padding:6px 9px; background:rgba(255,255,255,.12); font-size:9px; }


  /* v5.0.17 — full 24x7 local-time schedule timeline */
  .itg-schedule-board { min-width:0; padding-bottom:18px; }
  .itg-schedule-toolbar { position:sticky; z-index:8; top:-12px; display:flex; align-items:center; justify-content:space-between; gap:10px; margin:-12px -12px 12px; padding:12px; border-bottom:1px solid rgba(255,255,255,.11); background:linear-gradient(180deg,rgba(7,11,18,.97),rgba(7,11,18,.88)); backdrop-filter:blur(22px); -webkit-backdrop-filter:blur(22px); }
  .itg-schedule-week-control { min-width:0; display:grid; grid-template-columns:34px minmax(0,1fr) 34px; align-items:center; gap:8px; }
  .itg-schedule-week-control > button,.itg-schedule-zone-control > button { min-width:34px; height:34px; border:1px solid rgba(255,255,255,.12); border-radius:11px; background:rgba(255,255,255,.08); font-weight:900; }
  .itg-schedule-week-control > div { min-width:0; }
  .itg-schedule-week-control small,.itg-schedule-week-control strong { display:block; }
  .itg-schedule-week-control small { color:var(--itg-red); font-size:8px; font-weight:900; letter-spacing:.12em; }
  .itg-schedule-week-control strong { overflow:hidden; margin-top:2px; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
  .itg-schedule-zone-control { display:flex; align-items:flex-end; gap:7px; }
  .itg-schedule-zone-control label { display:grid; gap:3px; }
  .itg-schedule-zone-control label span { color:var(--itg-muted); font-size:8px; font-weight:800; text-transform:uppercase; }
  .itg-schedule-zone-control select { max-width:220px; height:34px; border:1px solid rgba(255,255,255,.13); border-radius:11px; padding:0 30px 0 10px; background:rgba(255,255,255,.08); color:#fff; font-size:10px; outline:0; }
  .itg-schedule-zone-control select option,.itg-schedule-zone-control select optgroup { color:#111; }
  .itg-schedule-zone-control > button { padding:0 10px; color:#fff; font-size:9px; }

  .itg-schedule-days { display:grid; grid-template-columns:repeat(7,minmax(62px,1fr)); gap:7px; overflow-x:auto; padding:2px 0 9px; scrollbar-width:none; }
  .itg-schedule-days::-webkit-scrollbar { display:none; }
  .itg-schedule-days button { position:relative; min-width:62px; min-height:67px; border:1px solid rgba(255,255,255,.10); border-radius:16px; padding:7px 4px; background:rgba(255,255,255,.055); text-align:center; }
  .itg-schedule-days button small,.itg-schedule-days button strong,.itg-schedule-days button span { display:block; }
  .itg-schedule-days button small { color:var(--itg-muted); font-size:8px; font-weight:800; text-transform:uppercase; }
  .itg-schedule-days button strong { margin:2px 0; font-size:19px; line-height:1; }
  .itg-schedule-days button span { color:rgba(255,255,255,.52); font-size:8px; }
  .itg-schedule-days button span i { display:inline-block; width:6px; height:6px; margin-left:4px; border-radius:50%; background:var(--itg-red); box-shadow:0 0 0 3px rgba(255,43,67,.14); }
  .itg-schedule-days button.is-today::after { content:"TODAY"; position:absolute; top:-5px; left:50%; border-radius:999px; padding:2px 5px; background:#fff; color:#080b10; font-size:6px; font-weight:950; transform:translateX(-50%); }
  .itg-schedule-days button.is-active { border-color:rgba(255,43,67,.78); background:linear-gradient(160deg,rgba(255,43,67,.28),rgba(255,255,255,.08)); box-shadow:0 10px 24px rgba(0,0,0,.2); }

  .itg-schedule-status { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:2px 0 10px; padding:8px 10px; border:1px solid rgba(255,255,255,.09); border-radius:13px; background:rgba(255,255,255,.045); color:var(--itg-muted); font-size:8px; }
  .itg-schedule-status span:first-child { color:#fff; font-weight:800; }
  .itg-schedule-status i { display:inline-block; width:7px; height:7px; margin-right:5px; border-radius:50%; background:var(--itg-green); box-shadow:0 0 0 4px rgba(69,223,142,.12); }
  .itg-schedule-status .is-error { color:#ffadb7; }
  .itg-schedule-day-head { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; margin:13px 0 8px; }
  .itg-schedule-day-head small { color:var(--itg-muted); font-size:8px; }
  .itg-schedule-day-head h3 { margin:2px 0 0; font-size:17px; }
  .itg-schedule-day-head > span { flex:0 0 auto; border-radius:999px; padding:5px 8px; background:rgba(255,255,255,.08); color:var(--itg-muted); font-size:8px; }

  .itg-day-timeline { position:relative; display:grid; grid-template-columns:49px minmax(0,1fr); gap:9px; min-width:0; }
  .itg-schedule-axis { position:relative; height:var(--itg-timeline-height,2112px); }
  .itg-schedule-axis > span { position:absolute; top:calc(var(--itg-hour) * 88px); right:0; color:rgba(255,255,255,.48); font-size:8px; font-variant-numeric:tabular-nums; transform:translateY(-50%); }
  .itg-schedule-track { position:relative; height:var(--itg-timeline-height,2112px); min-width:0; border-left:1px solid rgba(255,255,255,.11); }
  .itg-schedule-grid { position:absolute; inset:0; pointer-events:none; }
  .itg-schedule-grid > i { position:absolute; top:calc(var(--itg-hour) * 88px); left:0; right:0; height:1px; background:rgba(255,255,255,.075); }
  .itg-schedule-grid > i:nth-child(7n+1) { background:rgba(255,255,255,.14); }
  .itg-schedule-now-line { position:absolute; z-index:6; top:var(--itg-now-top); left:-7px; right:0; height:2px; background:var(--itg-red); box-shadow:0 0 14px rgba(255,43,67,.7); pointer-events:none; }
  .itg-schedule-now-line::before { content:""; position:absolute; left:-1px; top:50%; width:9px; height:9px; border-radius:50%; background:var(--itg-red); transform:translate(-50%,-50%); }
  .itg-schedule-now-line b { position:absolute; right:4px; top:-14px; border-radius:999px; padding:2px 6px; background:var(--itg-red); font-size:7px; }

  .itg-schedule-event { position:absolute; z-index:2; top:var(--itg-event-top); left:7px; right:0; height:var(--itg-event-height); min-height:36px; overflow:hidden; display:grid; grid-template-columns:78px minmax(0,1fr) auto; align-items:center; gap:9px; border:1px solid rgba(255,255,255,.12); border-left:3px solid rgba(255,255,255,.34); border-radius:14px; padding:7px 8px; background:linear-gradient(135deg,rgba(255,255,255,.11),rgba(255,255,255,.055)); box-shadow:0 10px 26px rgba(0,0,0,.18); }
  .itg-schedule-event.state-live { z-index:5; border-color:rgba(255,43,67,.62); border-left-color:var(--itg-red); background:linear-gradient(135deg,rgba(255,43,67,.27),rgba(255,255,255,.07)); box-shadow:0 12px 32px rgba(255,43,67,.15); }
  .itg-schedule-event.state-playing { z-index:5; border-color:rgba(69,223,142,.46); border-left-color:var(--itg-green); background:linear-gradient(135deg,rgba(69,223,142,.17),rgba(255,255,255,.06)); }
  .itg-schedule-event.state-past { opacity:.6; }
  .itg-schedule-event-time strong,.itg-schedule-event-time span { display:block; font-variant-numeric:tabular-nums; }
  .itg-schedule-event-time strong { font-size:11px; }
  .itg-schedule-event-time span { margin-top:2px; color:var(--itg-muted); font-size:8px; }
  .itg-schedule-event-copy { min-width:0; }
  .itg-schedule-event-flags { display:flex; align-items:center; gap:4px; overflow:hidden; }
  .itg-schedule-state,.itg-schedule-type,.itg-schedule-continuation { flex:0 0 auto; border-radius:999px; padding:2px 5px; background:rgba(255,255,255,.10); color:var(--itg-muted); font-size:6px; font-weight:900; letter-spacing:.04em; }
  .state-live .itg-schedule-state { background:var(--itg-red); color:#fff; }
  .state-playing .itg-schedule-state { background:var(--itg-green); color:#06110b; }
  .itg-schedule-event-copy h4 { overflow:hidden; margin:4px 0 0; font-size:11px; line-height:1.15; text-overflow:ellipsis; white-space:nowrap; }
  .itg-schedule-event-copy p { overflow:hidden; margin:3px 0 0; color:var(--itg-muted); font-size:8px; text-overflow:ellipsis; white-space:nowrap; }
  .itg-schedule-event-action { align-self:center; }
  .itg-schedule-watch,.itg-schedule-event .itg-remind { display:inline-flex; min-height:28px; align-items:center; justify-content:center; border:0; border-radius:999px; padding:0 8px; background:rgba(255,255,255,.13); color:#fff; font-size:7px; font-weight:850; white-space:nowrap; }
  .state-live .itg-schedule-watch { background:var(--itg-red); }
  .state-playing .itg-schedule-watch { background:var(--itg-green); color:#06110b; }
  .itg-schedule-event.is-compact { grid-template-columns:64px minmax(0,1fr) auto; gap:6px; padding:3px 6px; border-radius:10px; }
  .itg-schedule-event.is-compact .itg-schedule-event-time span,.itg-schedule-event.is-compact .itg-schedule-event-flags,.itg-schedule-event.is-compact .itg-schedule-event-copy p { display:none; }
  .itg-schedule-event.is-compact .itg-schedule-event-copy h4 { margin:0; font-size:9px; }
  .itg-schedule-event.is-compact .itg-schedule-watch,.itg-schedule-event.is-compact .itg-remind { min-height:24px; padding:0 6px; font-size:6px; }
  .itg-schedule-empty-day { position:absolute; top:20px; left:12px; right:0; display:grid; min-height:120px; place-items:center; border:1px dashed rgba(255,255,255,.12); border-radius:16px; color:var(--itg-muted); font-size:10px; text-align:center; }
  .itg-schedule-loading { grid-column:1/-1; display:grid; gap:10px; }

  @media (max-width:820px) {
    .itg-schedule-toolbar { align-items:stretch; flex-direction:column; }
    .itg-schedule-week-control { width:100%; }
    .itg-schedule-zone-control { justify-content:space-between; }
    .itg-schedule-zone-control label { flex:1; min-width:0; }
    .itg-schedule-zone-control select { width:100%; max-width:none; }
    .itg-schedule-days { grid-template-columns:repeat(7,68px); }
    .itg-schedule-status { align-items:flex-start; flex-direction:column; gap:4px; }
    .itg-schedule-event { grid-template-columns:67px minmax(0,1fr) auto; gap:6px; padding:6px; }
    .itg-schedule-event-copy h4 { font-size:10px; }
    .itg-schedule-type { display:none; }
  }

  @media (max-width:420px) {
    .itg-day-timeline { grid-template-columns:42px minmax(0,1fr); gap:6px; }
    .itg-schedule-axis > span { font-size:7px; }
    .itg-schedule-event { left:5px; grid-template-columns:56px minmax(0,1fr); }
    .itg-schedule-event-action { display:none; }
    .itg-schedule-event-time strong { font-size:9px; }
    .itg-schedule-event-copy h4 { font-size:9px; }
    .itg-schedule-event.is-compact { grid-template-columns:48px minmax(0,1fr); }
  }

  .itg-poll h3 { margin:0 0 12px; font-size:17px; }
  .itg-poll-option { position:relative; width:100%; min-height:45px; overflow:hidden; margin:7px 0; padding:0; border:1px solid rgba(255,255,255,.12); border-radius:14px; background:rgba(255,255,255,.07); text-align:left; }
  .itg-poll-fill { position:absolute; inset:0 auto 0 0; width:var(--itg-p,0%); background:rgba(255,255,255,.14); }
  .itg-poll-option > span { position:relative; z-index:1; display:flex; justify-content:space-between; align-items:center; padding:0 13px; }
  .itg-poll-option b,.itg-poll-option small { font-size:11px; }
  .itg-reactions { display:grid; grid-template-columns:repeat(5,1fr); gap:7px; margin-top:18px; }
  .itg-react { border:1px solid rgba(255,255,255,.10); border-radius:15px; background:rgba(255,255,255,.07); padding:8px 3px; }
  .itg-react b,.itg-react small { display:block; text-align:center; }
  .itg-react b { font-size:20px; }
  .itg-react small { margin-top:3px; color:var(--itg-muted); font-size:8px; }

  .itg-account-head { display:flex; align-items:center; gap:12px; padding:2px 2px 15px; }
  .itg-account-head .itg-avatar { width:52px; height:52px; font-size:15px; }
  .itg-account-head h3 { margin:0; font-size:18px; }
  .itg-account-head small { color:var(--itg-muted); }
  .itg-account-menu { display:flex; flex-direction:column; gap:5px; }
  .itg-account-menu a,.itg-account-menu button { width:100%; min-height:47px; border:0; border-radius:14px; background:rgba(255,255,255,.07); display:flex; align-items:center; justify-content:space-between; padding:0 13px; font-size:12px; text-align:left; }
  .itg-account-menu a:hover,.itg-account-menu button:hover { background:rgba(255,255,255,.12); }

  .itg-empty { display:grid; min-height:160px; place-items:center; padding:20px; color:var(--itg-muted); font-size:12px; text-align:center; }
  .itg-skeleton { position:relative; overflow:hidden; min-height:90px; border-radius:16px; background:rgba(255,255,255,.07); }
  .itg-skeleton::after { content:""; position:absolute; inset:0; background:linear-gradient(100deg,transparent,rgba(255,255,255,.08),transparent); transform:translateX(-100%); animation:itg-shimmer 1.3s infinite; }
  @keyframes itg-shimmer { to { transform:translateX(100%); } }

  .itg-dock-zone { position:absolute; z-index:41; left:0; right:0; bottom:0; height:calc(var(--itg-safe-b) + 102px); pointer-events:none; }
  .itg-dock { position:absolute; left:50%; bottom:calc(var(--itg-safe-b) + 10px); display:flex; align-items:flex-end; gap:7px; padding:8px 10px; border-radius:23px; pointer-events:auto; transform:translateX(-50%); transition:opacity .25s ease,transform .25s ease; }
  .itg-dock.is-hidden { opacity:0; pointer-events:none; transform:translate(-50%,calc(100% + 28px)); }
  .itg-dock button { position:relative; width:54px; height:54px; border:1px solid rgba(255,255,255,.10); border-radius:17px; background:rgba(255,255,255,.10); display:grid; place-items:center; transition:transform .16s ease,background .16s ease; }
  .itg-dock button svg { width:26px; height:26px; }
  .itg-dock button.is-video { background:linear-gradient(145deg,#ff354d,#b50c20); }
  .itg-dock button:hover,.itg-dock button:focus-visible,.itg-dock button.is-active { z-index:2; background:rgba(255,255,255,.19); transform:translateY(-8px) scale(1.17); outline:0; }
  .itg-dock button.is-video:hover,.itg-dock button.is-video.is-active { background:linear-gradient(145deg,#ff4c61,#c31127); }
  .itg-dock-tip { position:absolute; bottom:calc(100% + 9px); left:50%; width:max-content; max-width:130px; padding:6px 9px; border:1px solid rgba(255,255,255,.10); border-radius:9px; background:rgba(5,7,11,.88); box-shadow:0 10px 24px rgba(0,0,0,.28); font-size:10px; font-weight:800; white-space:nowrap; opacity:0; pointer-events:none; transform:translate(-50%,8px) scale(.94); transition:opacity .15s ease,transform .15s ease; }
  .itg-dock button:hover .itg-dock-tip,.itg-dock button:focus-visible .itg-dock-tip { opacity:1; transform:translate(-50%,0) scale(1); }
  .itg-dock .itg-dot { right:2px; top:1px; }

  .itg-toast { position:absolute; z-index:60; left:50%; bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 28px); max-width:min(86vw,430px); padding:10px 14px; border:1px solid var(--itg-line); border-radius:999px; background:rgba(4,7,11,.88); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); box-shadow:0 15px 36px rgba(0,0,0,.4); font-size:12px; font-weight:700; opacity:0; pointer-events:none; transform:translate(-50%,12px); transition:opacity .18s ease,transform .18s ease; }
  .itg-toast.is-visible { opacity:1; transform:translate(-50%,0); }

  .itg-app.is-chrome-hidden .itg-top,
  .itg-app.is-chrome-hidden .itg-nav,
  .itg-app.is-chrome-hidden .itg-engage,
  .itg-app.is-chrome-hidden .itg-meta { opacity:0; pointer-events:none; }
  .itg-app.is-chrome-hidden .itg-top { transform:translateY(-18px); }
  .itg-app.is-chrome-hidden .itg-nav { transform:translate(-18px,-50%); }
  .itg-app.is-chrome-hidden .itg-engage { transform:translateX(18px); }
  .itg-app.is-chrome-hidden .itg-meta { transform:translateY(18px); }

  @media (max-width:820px) {
    body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active { --itg-dock-h:72px; }
    .itg-nav { display:none; }
    .itg-top { top:calc(var(--itg-safe-t) + 8px); left:calc(var(--itg-safe-l) + 9px); right:calc(var(--itg-safe-r) + 9px); }
    .itg-brand { max-width:calc(100vw - 110px); padding:6px 9px; }
    .itg-brand-logo { width:29px; height:29px; }
    .itg-brand-copy b { font-size:12px; }
    .itg-live-badge { font-size:8px; }
    .itg-round { width:38px; height:38px; }
    .itg-unmute { top:45%; min-height:45px; padding:0 15px; font-size:12px; }
    .itg-top-actions .itg-round:first-child { display:none; }
    .itg-engage { right:calc(var(--itg-safe-r) + 10px); bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 22px); gap:7px; }
    .itg-engage button { width:46px; min-height:46px; border-radius:16px; }
    .itg-engage button svg { width:20px; height:20px; }
    .itg-meta { left:calc(var(--itg-safe-l) + 10px); right:calc(var(--itg-safe-r) + 68px); bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 18px); }
    .itg-meta-card { max-width:100%; padding:12px 13px; border-radius:20px; }
    .itg-meta h1 { font-size:clamp(19px,6vw,28px); }
    .itg-meta p { font-size:11px; -webkit-line-clamp:1; }
    .itg-channel { margin-top:9px; }
    .itg-avatar { width:32px; height:32px; }
    .itg-follow { padding:8px 11px; font-size:11px; }
    .itg-sheet,.itg-side { left:calc(var(--itg-safe-l) + 8px); right:calc(var(--itg-safe-r) + 8px); top:calc(var(--itg-safe-t) + 56px); bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 11px); width:auto; border-radius:24px; }
    .itg-panel-head { height:57px; padding:0 14px; }
    .itg-panel-title h2 { font-size:17px; }
    .itg-panel-body { height:calc(100% - 57px); padding:12px; }
    .itg-grid { grid-template-columns:1fr; gap:9px; }
    .itg-card { display:grid; grid-template-columns:120px minmax(0,1fr); border-radius:16px; }
    .itg-card .itg-thumb { aspect-ratio:16/9; height:100%; min-height:79px; }
    .itg-card.itg-short { grid-template-columns:92px minmax(0,1fr); }
    .itg-card.itg-short .itg-thumb { aspect-ratio:9/16; min-height:145px; }
    .itg-copy { align-self:center; padding:10px; }
    .itg-copy b { white-space:normal; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
    .itg-dock { gap:5px; padding:7px 8px; border-radius:21px; }
    .itg-dock button { width:47px; height:47px; border-radius:15px; }
    .itg-dock button svg { width:23px; height:23px; }
    .itg-dock-tip { display:none; }
  }

  @media (max-width:420px) {
    .itg-dock { gap:3px; padding:6px 7px; }
    .itg-dock button { width:43px; height:43px; border-radius:14px; }
    .itg-dock button svg { width:21px; height:21px; }
    .itg-engage button { width:43px; min-height:43px; }
    .itg-meta { right:calc(var(--itg-safe-r) + 61px); }
    .itg-meta-card { padding:10px 11px; }
    .itg-meta p { display:none; }
    .itg-channel-copy small { display:none; }
    .itg-reactions { gap:5px; }
  }

  @media (orientation:landscape) and (max-height:600px) {
    body[data-theme="itahuka-mobile-fullscreen-glass"].it-glass-mobile-active { --itg-dock-h:60px; }
    .itg-top { top:calc(var(--itg-safe-t) + 5px); }
    .itg-brand { padding:4px 8px; }
    .itg-brand-logo { width:27px; height:27px; }
    .itg-round { width:34px; height:34px; }
    .itg-engage { bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 10px); flex-direction:row; right:calc(var(--itg-safe-r) + 8px); }
    .itg-engage button { width:42px; min-height:42px; border-radius:14px; }
    .itg-engage button small { display:none; }
    .itg-meta { bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 10px); right:calc(var(--itg-safe-r) + 270px); }
    .itg-meta-card { padding:9px 12px; }
    .itg-meta h1 { font-size:18px; }
    .itg-meta p,.itg-channel { display:none; }
    .itg-sheet { left:calc(var(--itg-safe-l) + 86px); right:calc(var(--itg-safe-r) + 62px); top:calc(var(--itg-safe-t) + 48px); bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 8px); }
    .itg-side { top:calc(var(--itg-safe-t) + 45px); bottom:calc(var(--itg-safe-b) + var(--itg-dock-h) + 8px); }
    .itg-panel-head { height:49px; }
    .itg-panel-body { height:calc(100% - 49px); }
    .itg-dock { bottom:calc(var(--itg-safe-b) + 5px); padding:5px 7px; }
    .itg-dock button { width:42px; height:42px; }
  }

  @media (prefers-reduced-motion:reduce) {
    .itg-app *, .itg-app *::before, .itg-app *::after { scroll-behavior:auto !important; animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
  }
}
