/* Installation and app navigation, preserving the existing terminal interface. */
[hidden]{display:none!important}
.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
header .header-actions>button{margin:0;white-space:nowrap;font-size:11px;padding:10px 12px}
header{padding-top:max(12px,env(safe-area-inset-top));gap:20px}
.app-status-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px max(4%,env(safe-area-inset-left));border-bottom:1px solid #625128;background:#201a0a;color:#ffe39b;font-size:11px;line-height:1.7}
.app-status-bar>a{color:#ffe39b;white-space:nowrap}
.app-update{background:#052536;border-color:#107399;color:#b1edff}
.app-update button{font-size:10px;white-space:nowrap;padding:8px 12px}
.app-dock{display:none}
#install-dialog{position:fixed;padding:34px;max-width:480px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #1477a3;border-radius:20px;background:radial-gradient(ellipse at 50% 0,#08406888,transparent 60%),#04101e;color:var(--text);box-shadow:0 20px 100px #000b,0 0 50px #0088ff20}
#install-dialog::backdrop{background:#010812bf;backdrop-filter:blur(7px)}
#install-dialog .install-close{position:absolute;top:14px;right:14px;font-size:23px;line-height:1;padding:5px 10px;border-color:#174967}
.install-logo{display:block;width:76px;height:76px;margin:0 0 22px;border:1px solid #154361;border-radius:17px;box-shadow:0 0 30px #00aeff26}
#install-dialog h2{font:700 33px/1.12 'Space Grotesk',Arial,sans-serif;letter-spacing:-.8px;margin:14px 0}
#install-dialog h2 em{font-style:normal;color:var(--cyan)}
#install-summary{color:#9cbad4;font-size:12px;line-height:1.8;margin:0}
.install-capabilities{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}
.install-capabilities span{border:1px solid #144362;background:#062235;border-radius:5px;padding:7px 9px;font-size:9px;color:#bceaff}
#install-state{font-size:11px;line-height:1.7;color:#79dbf7;margin-bottom:12px}
#install-native{display:block;width:100%;margin:14px 0 20px;padding:14px;font-size:13px}
.install-guide{background:#020a14;border:1px solid #153649;padding:16px;border-radius:10px}
.install-guide>b{font-size:11px;color:#e2f5ff}
.install-guide ol{font-size:11px;line-height:1.9;color:#a4c3db;padding-left:18px;margin:9px 0 0}
.install-guide li+li{margin-top:6px}
#install-dialog .install-note{margin:18px 0 0;font-size:10px;color:#7094af;line-height:1.8}
@media(max-width:1150px){header{flex-wrap:wrap;gap:8px}.header-actions{margin-left:auto}header>nav{order:3;flex:0 0 100%;justify-content:space-between;gap:18px;overflow:auto}}
@media(max-width:640px){
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}
  header .brand{font-size:18px;gap:8px}header .brand-sub{font-size:6px;letter-spacing:1.6px}
  header .brand img{width:32px;height:35px}header .header-actions>button{font-size:9px;padding:9px 10px}
  header .header-actions>[data-install]{display:none}
  header>nav{font-size:10px;gap:18px}
  .app-dock{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;bottom:0;left:0;right:0;z-index:25;margin:0;padding:8px max(8px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));gap:4px;border-top:1px solid #14577a;background:#030e1ced;backdrop-filter:blur(20px);box-shadow:0 -8px 35px #0008}
  .app-dock>a,.app-dock>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:48px;padding:6px 0;border:0;border-radius:9px;background:transparent;color:#6a91ae;font-size:9px;font-weight:500;line-height:1.2;box-shadow:none}
  .app-dock svg{width:21px;height:21px}
  .app-dock>a.current{background:#06334c77;color:#00c8ff;text-shadow:0 0 10px #00aaff50}
  .app-dock>a.current:after{display:none}
  .app-dock>button:hover,.app-dock>a:hover{color:#bceaff;background:#06334c77}
  .is-app header>nav{display:none}
  .app-status-bar{font-size:10px;padding:10px 4%;gap:10px}.app-status-bar>a{display:none}
  #toast:not(:empty){bottom:calc(85px + env(safe-area-inset-bottom))}
  #install-dialog{padding:26px 22px;border-radius:17px;max-height:calc(100dvh - 24px)}
  #install-dialog h2{font-size:30px}.install-logo{width:64px;height:64px;margin-bottom:18px}
  .search input,.table-search input{font-size:16px}.search input::placeholder,.table-search input::placeholder{font-size:10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Durable public analysis total, immediately before the installation action. */
.analysis-counter{position:relative;flex-shrink:0}
.analysis-counter summary{list-style:none;display:flex;align-items:center;gap:8px;cursor:pointer;border:0;border-radius:0;padding:3px 8px;background:none;box-shadow:none;min-width:137px}
.analysis-counter summary::-webkit-details-marker{display:none}
.analysis-counter summary:hover strong{color:#00caff}.analysis-counter summary:focus-visible{outline:2px solid #00b8ed55;outline-offset:2px}
.analysis-counter .count-icon{color:#00c9ff;font-size:23px;text-shadow:0 0 15px #00b8ff66}
.analysis-counter strong{display:block;color:#e5fbff;font:700 17px/1.15 'Space Grotesk',Arial,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.4px}
.analysis-counter small{display:block;color:#79b6d4;font-size:8px;line-height:1.6;white-space:nowrap}
.analysis-counter[data-state=unavailable] strong{color:#91a3b5}
.count-info{position:absolute;right:0;top:calc(100% + 10px);z-index:60;width:320px;max-width:calc(100vw - 30px);padding:17px;border:1px solid #137599;border-radius:11px;background:#041220;box-shadow:0 16px 40px #000b;color:#a1bfd5;font-size:11px;line-height:1.7;white-space:normal}
.count-info>b{color:#def8ff;font-size:13px}.count-info p{margin:9px 0}.count-info a{color:#00cbff;font-size:11px}
@media(max-width:1400px){header{flex-wrap:wrap}.header-actions{margin-left:auto}header>nav{order:3;flex:0 0 100%;justify-content:space-between;gap:18px;overflow:auto}}
@media(max-width:640px){.header-actions{width:100%;justify-content:space-between;margin:2px 0}.analysis-counter summary{min-width:0;padding:3px 5px}.analysis-counter strong{font-size:16px}.analysis-counter small{font-size:8px}.count-info{left:0;right:auto}}
@media(max-width:360px){.dashboard-hero{grid-template-columns:minmax(0,1fr)}.hero-copy{min-width:0}.dashboard-hero h1{font-size:34px}}
