:root{color-scheme:dark;--bg:#08111e;--panel:#111d2e;--panel2:#152339;--line:#273952;--muted:#8fa4bd;--text:#eaf1fb;--teal:#40d9bb;--blue:#4d95ff;--violet:#9a75f5;--red:#f47d89;--radius:18px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}body{background:radial-gradient(850px 450px at 75% -150px,#152949 0%,transparent 85%),var(--bg)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}a{color:inherit;text-decoration:none}.shell{min-height:100vh;display:flex}.sidebar{width:252px;flex-shrink:0;position:sticky;top:0;height:100vh;border-right:1px solid #223148;padding:32px 19px;display:flex;flex-direction:column;background:#0a1422}.brand{display:flex;align-items:center;gap:12px;margin:2px 3px 53px}.brand-symbol,.brand-logo{width:43px;height:43px;display:grid;place-items:center;background:linear-gradient(125deg,#3679e9,#6739a9);border:1px solid #7d85d6;border-radius:13px;font-weight:800;font-size:27px;box-shadow:0 10px 30px #6549be33}.brand strong,.brand span{display:block}.brand strong{font-size:16px;letter-spacing:-.6px}.brand span{font-size:10px;letter-spacing:2.2px;color:#aac1d8;margin-top:4px}.brand b{color:var(--teal)}.side-label,.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;color:#7b93af}.side-label{padding:0 16px;margin-bottom:17px}.side-nav{display:grid;gap:5px}.nav-button{text-align:left;color:#9caec3;border:0;background:transparent;border-radius:12px;padding:13px 16px;display:flex;align-items:center;gap:12px;font-size:13px;font-weight:650}.nav-button span{font-size:23px;line-height:0;width:25px}.nav-button:hover,.nav-button.current{background:linear-gradient(90deg,#1b3454,#15273e);color:#f5faff}.nav-button.current{box-shadow:inset 3px 0 #4a99ff}.side-bottom{display:flex;gap:10px;align-items:center;border:1px solid #22354d;border-radius:14px;padding:13px;margin-top:auto}.status-dot{width:9px;height:9px;border-radius:100%;background:var(--teal);box-shadow:0 0 14px #29d8bb88}.side-bottom strong,.side-bottom span{display:block;font-size:11px}.side-bottom span{color:var(--muted);margin-top:4px}.main{padding:34px clamp(22px,4.3vw,72px) 0;min-width:0;flex:1;max-width:1550px;margin:auto}.header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:27px}.header h1{font-size:clamp(27px,3vw,36px);letter-spacing:-1.4px;margin:8px 0 0;font-weight:760}.header-actions{display:flex;align-items:center;gap:13px}.top-status{font-size:11px;color:var(--muted)}.icon-btn{border:1px solid var(--line);color:#b3c8dd;background:#142136;border-radius:11px;width:40px;height:40px;font-size:24px}.avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:12px;background:#284273;border:1px solid #5379a5;font-size:11px;font-weight:800}.content{padding-bottom:20px;min-height:65vh}.footer{border-top:1px solid #20304a;padding:20px 0 25px;font-size:10px;color:#7088a2;margin-top:35px}.notice{margin-bottom:20px;background:#17314b;border:1px solid #345d7b;color:#c9e4f7;padding:13px 16px;border-radius:12px;font-size:13px}.notice.error{background:#331e31;border-color:#794052;color:#ffbac3}.welcome{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.welcome h2{font-size:25px;letter-spacing:-.8px;margin:0 0 7px}.welcome p,.lead{color:var(--muted);font-size:13px;line-height:1.6;margin:0}.actions{display:flex;gap:9px;flex-wrap:wrap}.primary,.secondary,.ghost{border:1px solid transparent;border-radius:11px;padding:11px 17px;font-size:12px;font-weight:750}.primary{background:linear-gradient(100deg,#6e58d7,#297de9);color:#fff;box-shadow:0 7px 25px #485ad03d}.secondary{background:#193453;color:#d8eaff;border-color:#315377}.ghost{background:transparent;color:#aabbd3;border-color:var(--line)}.primary:active,.secondary:active{transform:translateY(1px)}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.stat,.panel{background:linear-gradient(160deg,#142339,#0e192a);border:1px solid #233851;border-radius:var(--radius);box-shadow:0 5px 30px #00000012}.stat{padding:22px 19px;min-height:132px}.stat .mini-icon{font-size:20px;margin-bottom:15px;display:inline-block;color:var(--blue)}.stat:nth-child(2) .mini-icon{color:var(--teal)}.stat:nth-child(3) .mini-icon{color:var(--violet)}.stat:nth-child(4) .mini-icon{color:#eab9a8}.stat strong{display:block;font-size:28px;letter-spacing:-.8px}.stat span{font-size:11px;color:var(--muted)}.section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:32px 0 16px}.section-head h3{font-size:18px;margin:0;letter-spacing:-.35px}.section-head p{font-size:11px;color:var(--muted);margin:0}.panel{padding:20px}.empty{display:grid;justify-items:center;text-align:center;gap:10px;padding:48px 25px;color:var(--muted)}.empty .glyph{font-size:40px;color:#5d82a5}.empty strong{color:#e0ebfc;font-size:17px}.empty p{font-size:13px;max-width:460px;line-height:1.6;margin:0}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.table th{font-size:10px;color:#7d98b5;letter-spacing:1px;font-weight:800;border-bottom:1px solid var(--line);padding:12px 14px}.table td{border-bottom:1px solid #26374b;padding:18px 14px;font-size:12px}.table tr:last-child td{border-bottom:0}.table tr[data-symbol]{cursor:pointer}.table tr[data-symbol]:hover{background:#1d3145}.ticker{font-weight:800;color:#eef5fd;display:block;font-size:13px}.subtext{font-size:11px;color:#8da3b9;margin-top:5px}.positive{color:var(--teal);font-weight:750}.negative{color:var(--red);font-weight:750}.small-gray{color:var(--muted);font-size:11px}.pill{display:inline-flex;align-items:center;padding:5px 8px;border-radius:8px;font-size:10px;font-weight:700;background:#1e3851;color:#9dc8e9;border:1px solid #2f5066}.pill.teal{background:#113b39;color:#55ddc2;border-color:#1d5c54}.pill.warn{background:#493226;color:#ecc299;border-color:#725033}.note{display:flex;gap:10px;align-items:flex-start;margin:18px 0;border:1px solid #355269;background:#14283b;border-radius:13px;padding:13px 15px;color:#abc5d8;font-size:12px;line-height:1.55}.note strong{color:#e7f6ff}.two-col{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(255px,1fr);gap:18px}.side-panel{background:linear-gradient(145deg,#132942,#182047);border:1px solid #304366;border-radius:var(--radius);padding:24px}.side-panel h3{font-size:19px;margin:0 0 12px}.side-panel p,.side-panel li{color:#adbdd6;font-size:13px;line-height:1.7}.side-panel ul{padding-left:20px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:21px 0}.search{flex:2;min-width:170px}.field,select,input{background:#101e31;border:1px solid #354861;border-radius:10px;color:var(--text);padding:12px 12px;outline:0;font-size:12px;max-width:100%}.field:focus,select:focus,input:focus{border-color:#578acb;box-shadow:0 0 0 2px #3269b222}select{min-width:148px}.filters label,.form-grid label{font-size:11px;color:#9db4cb;font-weight:700;display:grid;gap:7px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:17px 0}.form-grid label{min-width:0}.form-grid input,.form-grid select{width:100%}.page-top{display:flex;gap:12px;align-items:center;justify-content:space-between}.back{border:0;background:none;color:#7ca9e5;font-weight:800;font-size:13px;padding:8px 0}.company-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px 0}.company-head h2{margin:0;font-size:28px;letter-spacing:-1px}.company-head p{font-size:12px;color:var(--muted);margin:6px 0 0}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:12px 0}.metric{border:1px solid #2b3d52;border-radius:13px;padding:15px;background:#15243a}.metric label{font-size:10px;color:#93abc0;display:block;margin-bottom:10px}.metric strong{font-size:17px;display:block}.metric small{font-size:10px;color:#93abc0;display:block;margin-top:7px}.detail-section{margin-top:20px}.detail-section h3{font-size:15px}.ai-response{white-space:pre-wrap;font-size:13px;line-height:1.8;color:#d1e1f2;margin:16px 0}.chip-btn{border:1px solid #344764;background:#14263c;color:#b7d1ec;border-radius:10px;padding:9px 12px;font-size:12px}.chip-btn:hover{background:#264666}.flex{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.grow{flex:1}.trade-row{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.trade-row:last-child{border-bottom:0}.trade-row span{color:var(--muted)}.login-overlay{position:fixed;inset:0;z-index:100;background:radial-gradient(circle at 50% 10%,#1a3051,#07111f 73%);display:grid;place-items:center;padding:18px}.login-overlay[hidden]{display:none}.login-panel{width:100%;max-width:390px;padding:39px;background:#122035;border:1px solid #30425f;border-radius:24px;box-shadow:0 30px 130px #0007}.login-panel .brand-logo{margin-bottom:24px;width:54px;height:54px;font-size:33px}.login-panel h2{font-size:27px;letter-spacing:-1px;margin:8px 0}.login-panel h2 em{font-style:normal;color:var(--teal)}.login-panel p{font-size:12px;color:var(--muted);line-height:1.7;margin-bottom:28px}.login-panel label{font-size:11px;font-weight:700;display:block;margin-bottom:8px}.login-panel input{width:100%;height:44px;font-size:14px}.login-panel .primary{display:block;width:100%;height:45px;margin-top:15px}.login-panel small{display:block;color:#7088a2;font-size:10px;margin-top:25px;line-height:1.5}.error-text{color:var(--red);font-size:12px;margin-top:10px}.bottom-nav{display:none}.chart-bars{display:flex;gap:6px;align-items:flex-end;height:65px;border-bottom:1px solid #315069;margin-top:18px}.chart-bars span{background:linear-gradient(to top,#286e83,#47d9bf);border-radius:4px 4px 0 0;flex:1;min-width:3px;opacity:.8}.hero{background:linear-gradient(120deg,#13354a,#172247 72%);border:1px solid #2d5076;border-radius:20px;padding:28px;position:relative;overflow:hidden}.hero:after{content:'↗';position:absolute;right:28px;top:-35px;font-size:170px;color:#407ca127;pointer-events:none}.hero h2{font-size:25px;letter-spacing:-.8px;max-width:560px;margin:10px 0}.hero p{color:#aabfd7;max-width:540px;font-size:12px;line-height:1.6}.hero .primary{margin-top:12px}.badge-ready{display:inline-block;background:#153b3d;color:#6de3cf;border:1px solid #28635b;padding:7px 10px;border-radius:9px;font-size:10px;font-weight:800;letter-spacing:.6px}.label-inline{font-size:11px;color:#93a9c1}.button-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.spinner{display:inline-block;width:12px;height:12px;border:2px solid #4f7b98;border-right-color:transparent;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1100px){.sidebar{width:205px;padding:30px 11px}.main{padding:28px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}}
@media(max-width:700px){body{background:#08111e}.sidebar{display:none}.main{width:100%;padding:27px 16px 88px}.header{align-items:flex-start;margin-bottom:21px}.header h1{font-size:27px}.header .eyebrow{font-size:9px;letter-spacing:1.4px}.header-actions{gap:6px}.top-status{display:none}.avatar{height:35px;width:35px}.icon-btn{height:35px;width:35px}.welcome{align-items:flex-start;flex-direction:column;gap:16px}.welcome h2{font-size:23px}.stats{gap:9px}.stat{min-height:112px;padding:16px}.stat .mini-icon{margin-bottom:10px;font-size:17px}.stat strong{font-size:25px}.stat span{font-size:10px}.section-head{margin-top:26px}.panel{padding:15px;border-radius:15px}.bottom-nav{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);bottom:0;left:0;right:0;background:#101c2b;border-top:1px solid #294056;padding:8px 5px max(9px,env(safe-area-inset-bottom));z-index:30;box-shadow:0 -10px 25px #07111f99}.bottom-nav button{background:none;border:0;color:#879db5;font-size:10px;display:grid;justify-items:center;gap:4px;padding:6px 1px}.bottom-nav button span{font-size:23px;line-height:1}.bottom-nav button.current{color:#64c4f9}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{padding:13px}.metric strong{font-size:15px}.company-head h2{font-size:23px}.filters{gap:8px}.filters label{flex:1;min-width:130px}.filters select{width:100%}.filters .search{flex-basis:100%}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.table th,.table td{padding:12px 10px}.footer{font-size:9px}.hero{padding:20px}.hero h2{font-size:22px}.login-panel{padding:28px}}


/* ============= USA Growth Hunter AI / Mobile UI 1.1 ============= */
/* iPhone PWA: status bar safe area, scroll protection, smaller hierarchy. */
@media (max-width: 700px) {
  html, body { width: 100%; overflow-x: clip; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
  body::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: env(safe-area-inset-top, 0px);
    background: #08111e;
    z-index: 40;
    pointer-events: none;
  }
  .shell { width: 100%; min-width: 0; }
  .main {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin: 0;
    padding: calc(env(safe-area-inset-top, 0px) + 18px) 16px calc(env(safe-area-inset-bottom, 0px) + 90px);
  }
  .header {
    align-items: center;
    min-height: 57px;
    gap: 9px;
    margin-bottom: 19px;
  }
  .header > div:first-child { min-width: 0; flex: 1 1 auto; }
  .header .eyebrow { font-size: 8px; letter-spacing: 1.35px; line-height: 1.35; }
  .header h1 { font-size: 25px; letter-spacing: -0.95px; line-height: 1.13; margin: 5px 0 0; }
  .header-actions { flex: 0 0 auto; gap: 7px; }
  .icon-btn, .avatar { width: 37px; height: 37px; border-radius: 11px; flex: 0 0 auto; }
  .icon-btn { font-size: 23px; }
  .content { min-width: 0; min-height: 0; }
  .welcome { gap: 13px; margin-bottom: 16px; }
  .welcome h2 { font-size: 20px; line-height: 1.22; letter-spacing: -0.55px; margin: 0 0 6px; }
  .welcome p, .lead { font-size: 12px; line-height: 1.5; }
  .actions { width: 100%; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .actions > button { width: 100%; min-width: 0; min-height: 43px; font-size: 11px; line-height: 1.25; padding: 10px 6px; white-space: normal; }
  .stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .stat { min-width: 0; min-height: 105px; padding: 15px 13px; border-radius: 16px; }
  .stat .mini-icon { margin-bottom: 8px; font-size: 17px; line-height: 1; }
  .stat strong { font-size: 23px; line-height: 1.18; letter-spacing: -0.6px; overflow-wrap: anywhere; }
  .stat span { display: block; font-size: 10.5px; line-height: 1.42; margin-top: 5px; }
  .note { padding: 12px 13px; margin: 16px 0; gap: 9px; line-height: 1.52; font-size: 11px; border-radius: 13px; }
  .section-head { flex-direction: column; align-items: flex-start; gap: 4px; margin: 24px 0 12px; }
  .section-head h3 { font-size: 17px; line-height: 1.25; }
  .section-head p { font-size: 10.5px; line-height: 1.45; }
  .panel { min-width: 0; padding: 14px; border-radius: 16px; }
  .empty { padding: 28px 12px; gap: 8px; }
  .empty .glyph { font-size: 29px; }
  .empty strong { font-size: 15px; line-height: 1.35; }
  .empty p { font-size: 11px; line-height: 1.5; }
  .two-col { gap: 15px; }
  .two-col > * { min-width: 0; }
  .side-panel { border-radius: 16px; padding: 18px; }
  .side-panel h3 { font-size: 17px; line-height: 1.32; }
  .side-panel p, .side-panel li { font-size: 12px; line-height: 1.6; }
  .badge-ready { font-size: 9px; }
  .primary, .secondary, .ghost { min-height: 42px; }
  .bottom-nav {
    min-height: calc(60px + env(safe-area-inset-bottom, 0px));
    padding: 7px 6px calc(env(safe-area-inset-bottom, 0px) + 7px);
    background: #101c2b;
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
  }
  .bottom-nav button { min-width: 0; min-height: 43px; font-size: 10px; line-height: 1.2; gap: 3px; padding: 3px 1px; }
  .bottom-nav button span { font-size: 21px; }
  .login-overlay {
    padding: calc(env(safe-area-inset-top, 0px) + 12px) 16px calc(env(safe-area-inset-bottom, 0px) + 12px);
  }
  .login-panel {
    padding: 26px 23px;
    max-height: calc(100dvh - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px) - 20px);
    overflow-y: auto;
  }
  .hero { padding: 18px; }
  .hero h2 { font-size: 19px; line-height: 1.3; }
  .hero::after { font-size: 120px; opacity: .65; }
  .metric-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .metric { min-width: 0; padding: 12px; }
  .metric strong { font-size: 15px; overflow-wrap: anywhere; }
  .company-head { flex-wrap: wrap; }
  .company-head > div { min-width: 0; }
  .company-head h2 { font-size: 21px; overflow-wrap: anywhere; }
  .footer { line-height: 1.55; }
}
@media (max-width: 365px) {
  .main { padding-left: 12px; padding-right: 12px; }
  .header h1 { font-size: 23px; }
  .actions { grid-template-columns: 1fr; }
  .stat { padding: 12px 10px; }
}

/* USA Growth Hunter AI: Mobile UX 1.2 — carteira e campos compactos. */
@media (max-width: 700px) {
  .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .form-grid label:nth-child(3), .form-grid label:nth-child(4) { grid-column: 1 / -1; }
  .form-grid input[type="date"] { width: 100%; min-width: 0; max-width: 100%; display: block; }
  .form-grid label { min-width: 0; }
  .filters select { min-width: 0; }
  .filters label { min-width: 0; }
  .filters label.search { flex-basis: 100%; }
  .bottom-nav { max-width: 100vw; }
  .footer { padding-bottom: 14px; }
}
