/* First-party file browser only. Console runtimes and native helper documents are isolated. */
body.host-folder-page {
  --browser-bg:#101216;
  --browser-surface:#181b20;
  --browser-raised:#20242b;
  --browser-ink:#edf0f3;
  --browser-muted:#8c939f;
  --browser-line:rgba(219,227,238,.075);
  --browser-accent:#c0edd3;
  --browser-columns:minmax(230px,1fr) 80px 90px 110px 246px;
  --browser-ease:cubic-bezier(.22,.8,.25,1);
  background:var(--browser-bg)!important;
  color:var(--browser-ink);
  font-family:Manrope,"Segoe UI",sans-serif;
  padding-top:100px;
  min-height:100dvh;
}
.host-folder-page::before,.host-folder-page::after,.host-folder-page .site-flow-background {display:none!important}
.host-folder-page [hidden] {display:none!important}
.host-folder-page #main-content {margin:0!important;width:100%!important;max-width:none!important}
body.host-folder-page .container {width:100%;max-width:none;padding-inline:40px;margin:0}
.host-folder-page #actions {padding:0!important}
.host-folder-page #actions>.container>.section-header,
.host-folder-page .host-tools-grid,.host-folder-page .host-categories,
.host-folder-page .host-library-heading,.host-folder-page .host-filter-bar,
.host-folder-page .host-reset>.host-note {display:none!important}

/* A compact toolbar, detached from the content surface. */
.host-folder-page .host-taskbar {inset:16px 24px auto;min-height:56px;padding:8px 108px 8px 10px;gap:16px;border:1px solid rgba(255,255,255,.07);border-radius:12px;background:#1a1d23;box-shadow:0 8px 28px #0002;z-index:110}
.host-folder-page .host-taskbar a {font-family:inherit;font-size:12px;padding:8px 10px;color:#b7bec8;display:inline-flex;align-items:center;gap:8px;min-height:34px;border-radius:6px;transition:background .2s var(--browser-ease),color .2s var(--browser-ease)}
.host-folder-page .host-taskbar a:hover {background:#ffffff08;color:#fff}
.host-folder-page .host-taskbar svg {width:18px;height:18px;flex:none}
.host-folder-page .host-taskbar .host-top-back {gap:6px;border-inline-end:1px solid var(--browser-line);border-radius:0;padding-inline-end:18px}
.host-folder-page .host-taskbar .host-top-brand {color:#e8ecf0;gap:10px;font-weight:700;padding-inline:0}
.host-top-brand img {object-fit:contain;width:23px;height:23px}
.host-top-brand .host-brand-slash {color:#575e69;font-weight:400;margin-inline:4px}
.host-top-brand span:last-child {color:#a3aab5;font-weight:500}
.host-platform-switch {display:flex;padding:3px;gap:2px;background:#111318;border-radius:7px;margin-inline:auto;box-shadow:inset 0 1px 3px #0002}
.host-folder-page .host-platform-switch a {padding:5px 20px;min-height:28px;font-size:11px;font-weight:700;letter-spacing:.04em}
.host-folder-page .host-platform-switch a[aria-current=page] {background:#30363f;color:#f0f4f7;box-shadow:0 2px 4px #0002}
.host-folder-page .host-taskbar .host-top-settings {padding:7px}
.host-folder-page .language-pill {top:28px!important;right:40px!important;border-color:#ffffff12!important;background:#242830!important;box-shadow:none!important;font-size:11px!important}
.host-folder-page .i18n-floating {top:27px!important;right:40px!important;left:auto!important;z-index:120!important}
.host-folder-page .i18n-toggle {min-width:0!important;width:76px;min-height:31px!important;padding:6px 9px!important;font-size:10px!important;background:#252a32!important;border-color:#ffffff0d!important;border-radius:6px!important}
.host-folder-page .i18n-floating .i18n-menu {right:0!important;left:auto!important;background:#242932;border:1px solid #ffffff12;border-radius:8px;box-shadow:0 16px 40px #0004}
.host-folder-page .i18n-menu::before {display:none}

/* One heading, one category bar, one command row. */
.host-folder-heading {display:flex;justify-content:space-between;align-items:center;gap:20px;margin:4px 0 24px}
.host-platform-label {font-size:9px;font-weight:700;color:#9299a5;letter-spacing:.16em;margin:0 0 9px}
.host-heading-line {display:flex;align-items:center;gap:14px}
.host-folder-page #host-folder-title {font-family:inherit;font-weight:700;font-size:34px;line-height:1.2;letter-spacing:-1.1px;margin:0;color:#f3f5f7}
.host-file-count {display:inline-flex;align-items:center;justify-content:center;min-width:29px;height:24px;padding-inline:7px;background:#232831;border-radius:6px;font-size:11px;font-weight:700;color:#a2adba;font-variant-numeric:tabular-nums}
.host-header-connection {display:inline-flex;align-items:center;gap:9px;color:#a1a9b5;text-decoration:none;font-size:11px;border-radius:6px;padding:10px 0 10px 12px}
.host-header-connection svg {width:17px;height:17px;color:#849180}
.host-header-connection:hover {color:var(--browser-accent)}
.host-file-tabs {display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--browser-line);margin:0 0 18px;gap:20px;position:relative}
.host-primary-tabs {display:flex;align-items:center;gap:24px}
.host-file-tabs a {font-size:12px;font-weight:600;display:block;color:#818995;text-decoration:none;white-space:nowrap;transition:color .2s var(--browser-ease),background .2s var(--browser-ease)}
.host-primary-tabs>a {padding:0 2px 15px;border-bottom:2px solid transparent;margin-bottom:-1px}
.host-primary-tabs>a:hover {color:#dde6ec}
.host-primary-tabs>a[aria-current=page] {color:var(--browser-accent);border-color:var(--browser-accent)}
.host-utility-menu {margin-top:-12px;position:relative;font-size:12px;color:#9ca4b0}
.host-utility-menu>summary {list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px;border-radius:5px}
.host-utility-menu>summary::-webkit-details-marker {display:none}
.host-utility-menu>summary svg {width:18px;height:18px}
.host-utility-menu[open]>summary {background:#ffffff08;color:#edf3f7}
.host-utility-menu>div {position:absolute;inset-block-start:40px;inset-inline-end:0;z-index:30;width:250px;padding:6px;background:#242932;border:1px solid #ffffff0f;border-radius:8px;box-shadow:0 18px 45px #0005}
.host-utility-menu>div>a {padding:12px;border-radius:4px;white-space:normal}
.host-utility-menu>div>a:hover {background:#ffffff08;color:#fff}

.host-folder-page #host-file-firmware {display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:0 0 18px;max-width:none}
#host-file-firmware .host-search {position:relative;flex:1;max-width:360px;margin:0!important;min-width:180px}
#host-file-firmware .host-search::before {content:"";position:absolute;left:14px;bottom:15px;width:10px;height:10px;border:1.4px solid #818b9a;border-radius:50%;pointer-events:none}
#host-file-firmware .host-search::after {content:"";position:absolute;left:24px;bottom:12px;width:5px;height:1.4px;background:#818b9a;transform:rotate(45deg);pointer-events:none}
#host-file-firmware .host-search label {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.host-folder-page #host-file-firmware input,.host-folder-page #host-file-firmware select {font-family:inherit;font-size:12px;line-height:1.5;color:#dce2eb;background:#1a1e25;border:1px solid #ffffff0a;border-radius:7px;min-height:40px;width:100%;padding:10px 12px;box-shadow:inset 0 1px 2px #0001;outline-offset:3px}
.host-folder-page #host-file-firmware .host-search input {padding-inline-start:37px}
#host-file-firmware input::placeholder {color:#727c8b}
#host-file-firmware .host-firmware-control,#host-file-firmware .host-game-filter {min-width:170px;max-width:260px;flex:0 1 220px;margin:0}
#host-file-firmware .host-firmware-control label,#host-file-firmware .host-game-filter label {font-size:10px;color:#929cab;display:block;margin-bottom:6px;font-weight:500}
.host-folder-page #host-file-firmware input:focus,.host-folder-page #host-file-firmware select:focus {border-color:#a2c9b255;background:#1d232a}

/* A single grid definition keeps headings and every row in alignment. */
.host-folder-page .host-file-columns {display:grid;grid-template-columns:var(--browser-columns);align-items:center;gap:16px;padding:12px 18px;background:#1c2027;border:1px solid var(--browser-line);border-bottom:0;border-radius:9px 9px 0 0;color:#788392;font-size:10px;font-weight:600;line-height:1.4}
.host-file-columns>span:first-child {padding-inline-start:48px}
.host-file-columns>span:last-child {text-align:end}
.host-folder-page .host-reset #host-action-grid {display:block;border:1px solid var(--browser-line);border-radius:0 0 9px 9px;overflow:hidden;background:#171a20;gap:0;margin:0}
.host-folder-page .host-reset .host-file-row {background:transparent;border:0;border-radius:0;box-shadow:none;border-bottom:1px solid var(--browser-line);width:100%;margin:0;padding:0;transition:background .22s var(--browser-ease)}
.host-folder-page .host-reset .host-file-row:last-child {border-bottom:0}
.host-folder-page .host-reset .host-file-row:hover {background:#ffffff05}
.host-folder-page .host-file-line {display:grid;grid-template-columns:var(--browser-columns);align-items:center;gap:16px;padding:13px 18px;min-height:70px}
.host-file-identity {display:flex;align-items:center;gap:14px;min-width:0}
.host-file-identity>div {min-width:0}
.host-file-glyph {width:34px;height:38px;display:grid;place-items:center;border-radius:7px;background:#242a32;box-shadow:inset 0 1px #ffffff05;flex:none;color:#b1bac6}
.host-file-icon {width:21px;height:25px;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}
.host-folder-page .host-file-row h3 {font-family:inherit;font-size:13px!important;line-height:1.6;font-weight:600;letter-spacing:.005em;color:#dce2eb;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.host-file-row small {display:block;font-size:10px;line-height:1.5;font-weight:400;color:#727d8d;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.host-file-type {justify-self:start;font-size:9px;font-weight:600;letter-spacing:.03em;background:#242a33;color:#9da9b9;padding:4px 6px;border-radius:4px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.host-file-size {color:#8793a3;font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap;direction:ltr;unicode-bidi:isolate;text-align:start}
.host-file-compat {min-width:0}
.host-file-unspecified {color:#454e5c;font-size:12px}
.host-folder-page .host-reset .host-support-check {min-height:26px;padding:4px 8px;font-family:inherit;font-size:10px;font-weight:500;line-height:1.5;border:1px solid #738ba826;background:#657d9910;color:#9fb1c9;border-radius:5px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.host-support-check:hover {background:#657d9920!important;color:#d1e0f3!important}
.host-folder-page .host-reset .host-file-row .host-action-buttons {display:flex;gap:7px;align-items:center;justify-content:flex-end;flex-wrap:nowrap;margin:0;min-width:0}
.host-folder-page .host-reset .host-file-row .host-action-buttons>* {font-family:inherit!important;flex:0 0 auto;min-height:32px;height:32px;min-width:0;font-size:10px!important;font-weight:600;line-height:1;padding:8px 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;text-decoration:none;transition:background .2s var(--browser-ease),color .2s var(--browser-ease),transform .2s var(--browser-ease)}
.host-action-buttons svg {width:15px;height:15px;flex:none}
.host-folder-page .host-reset .host-file-row .host-download {background:#242a33;border:1px solid #ffffff08;color:#bbc5d2;border-radius:5px}
.host-folder-page .host-reset .host-file-row .host-download:hover {background:#303844;color:#f2f6fb}
.host-folder-page .host-reset .host-file-row .host-launch {background:var(--browser-accent);color:#173426;border:1px solid transparent;border-radius:5px;padding-inline:12px}
.host-folder-page .host-reset .host-file-row .host-launch:hover:enabled {background:#d3f6e0}
.host-folder-page .host-reset .host-file-row .host-launch:disabled {color:#5f7069;background:#25312d;opacity:.85;cursor:not-allowed}
.host-folder-page .host-reset .host-file-row .host-file-info {width:30px;padding:6px;border:0;background:transparent;color:#737f90;border-radius:5px}
.host-folder-page .host-reset .host-file-row .host-file-info:hover {color:#d0dfed;background:#ffffff07}
.host-folder-page .host-reset .host-file-row .host-action-buttons>*:active:enabled {transform:translateY(1px)}
.host-folder-page .host-reset .host-other-hosts {padding:16px 18px;border-top:1px solid var(--browser-line);margin:0}
.host-other-hosts>summary {font-size:11px;color:#8f9bac;cursor:pointer;margin-bottom:0}
.host-other-hosts[open]>summary {margin-bottom:12px}
.host-other-hosts .host-file-line {padding-inline:0}
.host-folder-page #host-empty {font-size:12px;color:#8996a6;padding:30px 20px;margin:0;text-align:center}

/* Connection, pairing and real warning states share the same visual system. */
.host-folder-page .host-reset .host-connect {padding:24px;border:1px solid var(--browser-line);background:var(--browser-surface);border-radius:9px;color:#d8e1e9;margin:0 0 20px}
.host-folder-page .host-reset .host-connect h2 {font:600 18px/1.5 Manrope,"Segoe UI",sans-serif;color:#dce7ee}
.host-folder-page .host-reset .host-toolbar {gap:14px}
.host-folder-page .host-reset .host-toolbar input,.host-folder-page .host-reset .host-toolbar select,.host-folder-page .host-reset .host-sender input {font:12px Manrope,"Segoe UI",sans-serif;background:#11151b;border-color:#ffffff12;color:#e1e8ee;border-radius:6px}
.host-folder-page .host-reset button {font-family:inherit}
.host-folder-page .host-reset .host-options {padding:16px 0 0;display:flex;gap:20px;flex-wrap:wrap;justify-content:flex-start}
.host-folder-page .host-reset .host-sender {background:var(--browser-surface);border:1px solid var(--browser-line);padding:24px;border-radius:9px;margin:0}
.host-folder-page .host-reset .host-dashboard-status {border-left:2px solid #b7dab7;background:#a5e6b508;color:#bfd4c5;font-size:11px;line-height:1.7;border-radius:0 5px 5px 0;margin:0 0 14px;padding:12px 16px}
.host-folder-page .host-reset .host-dashboard-status[data-error=true] {border-color:#cf9f8a;background:#cb8d6f0a;color:#d6b29c}
.host-folder-page #host-transfer-warning {border-color:#9f784f;background:#2a231b;color:#dfc09e;font-size:12px}
.host-folder-page .guide-footer {border:0;padding:22px 0;color:#596371;font-size:10px;line-height:1.7}
.host-folder-page .guide-footer a {color:#7b899a}

.host-support-overlay {position:fixed;inset:0;z-index:300;display:grid;place-items:center;padding:24px;background:#080b10c9;backdrop-filter:blur(8px)}
.host-support-overlay>section {width:min(620px,100%);max-height:85dvh;overflow:auto;border:1px solid #ffffff12;border-radius:14px;padding:24px;background:#1a1f27;box-shadow:0 32px 100px #0005;animation:host-dialog-in .25s var(--browser-ease)}
.host-support-overlay header {display:flex;align-items:center;justify-content:space-between;gap:20px}
.host-support-overlay h2 {font:600 11px/1.6 Manrope,"Segoe UI",sans-serif;color:#aab5c3;letter-spacing:.02em;margin:0}
.host-support-overlay #host-support-title {font:600 11px/1.6 Manrope,"Segoe UI",sans-serif!important;letter-spacing:.02em;color:#aab5c3;margin:0}
.host-support-overlay #host-support-close {display:grid;place-items:center;width:30px;height:30px;min-height:0;padding:6px;background:#ffffff06;border:0;border-radius:6px;color:#8e9caf;cursor:pointer}
#host-support-close svg {width:17px;height:17px}
.host-support-overlay #host-support-filename {font:600 21px/1.5 Manrope,"Segoe UI",sans-serif;color:#e1eaf2;overflow-wrap:anywhere;margin:20px 0 6px;letter-spacing:-.4px}
#host-support-facts {font-size:11px;color:#8191a6;margin:0 0 20px}
.host-support-body {border-block:1px solid var(--browser-line);padding-block:18px}
.host-support-overlay #host-support-text {font:12px/1.9 Manrope,"Segoe UI",sans-serif;white-space:pre-line;overflow-wrap:anywhere;color:#a8b7c9;margin:0}
.host-support-links {display:flex;flex-wrap:wrap;gap:10px 24px;padding-top:18px}
.host-support-links a {font-size:11px;color:#c0edd3;text-decoration:none}
.host-support-links a span {margin-inline-start:4px}
.host-folder-page a:focus-visible,.host-folder-page button:focus-visible,.host-folder-page summary:focus-visible {outline:2px solid #b8d9c5;outline-offset:3px}
@keyframes host-dialog-in {from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}

@media(min-width:1650px){body.host-folder-page .container{padding-inline:64px}.host-folder-page .host-taskbar{inset-inline:48px}.host-folder-page .language-pill{right:64px!important}.host-folder-page{--browser-columns:minmax(300px,1fr) 100px 100px 130px 260px}.host-folder-page .host-file-row h3{font-size:13px!important}}
@media(max-width:1100px){body.host-folder-page{--browser-columns:minmax(200px,1fr) 65px 70px 80px 223px}body.host-folder-page .container{padding-inline:24px}.host-folder-page .host-taskbar{inset-inline:16px}.host-folder-page .language-pill{right:30px!important}.host-folder-page .host-taskbar .host-top-brand span:last-child,.host-brand-slash{display:none}.host-folder-page .host-file-line,.host-folder-page .host-file-columns{gap:10px;padding-inline:14px}.host-file-identity{gap:10px}.host-folder-page .host-reset .host-file-row .host-action-buttons{gap:5px}.host-folder-page .host-reset .host-file-row .host-action-buttons>*{padding-inline:8px}}
@media(max-width:820px){body.host-folder-page{--browser-columns:minmax(180px,1fr) 65px 75px 207px}.host-folder-page .host-file-compat,.host-file-columns>span:nth-child(4){display:none}.host-folder-page .host-taskbar{gap:10px}.host-folder-page .host-taskbar .host-top-brand{font-size:11px;gap:7px}.host-platform-switch{margin-inline:auto 0}.host-folder-page .host-platform-switch a{padding-inline:12px}.host-header-connection span{display:none}.host-header-connection{padding:10px}.host-file-count{font-size:10px}.host-folder-page #host-folder-title{font-size:29px}.host-primary-tabs{gap:18px}}
@media(max-width:640px){body.host-folder-page{padding-top:94px}body.host-folder-page .container{padding-inline:16px}.host-folder-page .host-taskbar{inset:12px 10px auto;min-height:52px;padding:6px 74px 6px 7px;gap:8px;border-radius:10px}.host-folder-page .host-taskbar .host-top-back{padding:7px;border:0}.host-top-back span,.host-folder-page .host-top-brand span,.host-folder-page .host-taskbar .host-top-settings{display:none}.host-folder-page .host-taskbar .host-top-brand{padding:5px}.host-platform-switch{margin-inline:auto 0}.host-folder-page .host-platform-switch a{font-size:10px;padding:4px 12px;min-height:27px}.host-folder-page .language-pill{top:24px!important;right:21px!important;font-size:10px!important}.host-folder-heading{margin-bottom:22px}.host-platform-label{font-size:8px;margin-bottom:7px}.host-folder-page #host-folder-title{font-size:27px}.host-heading-line{gap:10px}.host-file-tabs{gap:8px;margin-bottom:16px}.host-primary-tabs{gap:17px;min-width:0}.host-primary-tabs>a{font-size:10px;padding-bottom:12px}.host-utility-menu>summary{padding:6px}.host-utility-menu>summary span{display:none}.host-folder-page #host-file-firmware{gap:12px;margin-bottom:16px}.host-folder-page #host-file-firmware .host-search{max-width:none;min-width:0;flex-basis:100%}.host-folder-page #host-file-firmware .host-firmware-control,.host-folder-page #host-file-firmware .host-game-filter{flex:1;max-width:none;min-width:140px}.host-folder-page .host-file-columns{grid-template-columns:1fr auto;padding:11px 14px;font-size:9px}.host-file-columns>span:first-child{padding-inline-start:0}.host-file-columns>span:nth-child(2),.host-file-columns>span:nth-child(3){display:none}.host-folder-page .host-file-line{grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;padding:14px;min-height:104px}.host-file-identity{grid-column:1/-1;gap:10px}.host-file-glyph{width:30px;height:34px;border-radius:6px}.host-file-icon{width:18px;height:22px}.host-folder-page .host-file-row h3{font-size:11px!important}.host-file-row small{font-size:9px}.host-file-type{grid-column:1;grid-row:2;justify-self:start;margin-inline-start:40px;font-size:8px;padding:3px 5px}.host-file-size{grid-column:1;grid-row:2;justify-self:start;margin-inline-start:88px;font-size:9px}.host-folder-page .host-reset .host-file-row .host-action-buttons{grid-column:2;grid-row:2;gap:5px}.host-folder-page .host-reset .host-file-row .host-action-buttons>*{height:36px;min-height:36px;font-size:9px!important;gap:5px;padding:7px}.host-folder-page .host-reset .host-file-row .host-download{width:33px}.host-download span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.host-action-buttons svg{width:14px;height:14px}.host-folder-page .host-reset .host-file-row .host-file-info{width:28px}.host-folder-page .host-reset .host-file-row .host-launch{padding-inline:9px}.host-folder-page .host-reset .host-connect,.host-folder-page .host-reset .host-sender{padding:18px}.host-folder-page .guide-footer{font-size:9px}.host-support-overlay{padding:14px}.host-support-overlay>section{padding:20px;max-height:88dvh}.host-support-overlay #host-support-filename{font-size:17px}.host-support-overlay #host-support-text{font-size:11px}}
@media(prefers-reduced-motion:reduce){.host-folder-page *{animation:none!important;transition:none!important}}
@media(min-width:1650px){.host-folder-page .i18n-floating{right:64px!important}}
@media(max-width:1100px){.host-folder-page .i18n-floating{right:30px!important}}
@media(max-width:640px){.host-folder-page .i18n-floating{top:23px!important;right:21px!important}.host-folder-page .i18n-toggle{width:64px;min-height:29px!important;font-size:9px!important;padding:6px!important}.host-primary-tabs{overflow:auto;scrollbar-width:none;overscroll-behavior-inline:contain;flex:1;padding-top:3px}.host-primary-tabs>a{flex:none}.host-primary-tabs::-webkit-scrollbar{display:none}.host-utility-menu{flex:none}}
@media(max-width:640px){.host-folder-page .host-taskbar{padding-right:80px}}
