:root{--brand-navy: #12123b;--brand-navy-deep: #11113b;--brand-green: #67bd45;--brand-green-mid: #006c3b;--brand-green-dark: #00572d;--brand-white: #ffffff;--brand-surface: #f3f5f8;--border: #d9dee7;--muted: #5c6578;--danger: #b42318;--shadow: 0 10px 30px rgba(18, 18, 59, .08);--sidebar: 260px;--radius: 12px;font-family:DM Sans,system-ui,sans-serif;color:var(--brand-navy);background:var(--brand-surface)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(103,189,69,.12),transparent 28%),linear-gradient(180deg,#eef2f6 0%,var(--brand-surface) 40%,#e8edf3 100%)}#root{min-height:100vh}a{color:var(--brand-green-mid);text-decoration:none}h1,h2,h3{margin:0 0 .35rem}.muted{color:var(--muted)}.boot{min-height:100vh;display:grid;place-items:center}.shell{display:grid;grid-template-columns:var(--sidebar) 1fr;height:100vh;height:100dvh;overflow:hidden}.sidebar{background:var(--brand-navy);color:#fff;padding:1.25rem 1rem;display:flex;flex-direction:column;gap:1.5rem;height:100%;min-height:0;overflow:hidden}.brand{flex-shrink:0}.brand-logo{width:100%;max-width:180px;filter:brightness(0) invert(1)}.brand-product{margin-top:.75rem;font-size:1.15rem;font-weight:700;letter-spacing:-.01em;color:#fff}.nav{display:flex;flex-direction:column;gap:.35rem;flex:1;min-height:0;overflow-y:auto}.nav-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#ffffff73;margin:.85rem 0 .35rem}.nav-label:first-child{margin-top:0}.nav a{color:#ffffffdb;padding:.7rem .85rem;border-radius:10px}.nav a.active,.nav a:hover{background:#67bd452e;color:#fff}.sidebar-foot{margin-top:auto;flex-shrink:0;display:grid;gap:.75rem}.user-chip{display:grid;gap:.15rem;font-size:.85rem}.user-chip span{color:#fff9;word-break:break-all}.main{min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden;background:#eef2f6}.topbar{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.75rem .85rem;flex-shrink:0;position:relative;z-index:3;background:#eef2f6;border-bottom:1px solid rgba(217,222,231,.7)}.eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.topbar-icon{width:42px;height:42px}.topbar-client-logo{width:auto;max-width:140px;height:42px;object-fit:contain;border-radius:6px;background:#fff;padding:4px 8px;border:1px solid var(--border)}.content{flex:1;min-height:0;overflow-y:auto;padding:.85rem 1.75rem 2rem;background:#eef2f6}.connection-help{margin:0 0 .35rem;line-height:1.45}.dashboard-controls{display:flex;flex-wrap:wrap;gap:.75rem 1rem;align-items:end}.dashboard-controls label{display:grid;gap:.3rem;font-size:.88rem}.dashboard-controls select{min-width:160px}.post-cell{display:flex;align-items:center;gap:.75rem;min-width:0}.post-cell>span{min-width:0;overflow-wrap:anywhere}.post-thumb{width:56px;height:56px;border-radius:8px;object-fit:cover;flex-shrink:0;background:#e8eaf0}.post-thumb-empty{display:inline-block;background:linear-gradient(135deg,#e8eaf0,#d5d8e4)}.rec-filters{display:flex;flex-wrap:wrap;gap:.5rem}.rec-filter{border:1px solid #d5d8e4;background:#fff;border-radius:999px;padding:.4rem .75rem;font:inherit;cursor:pointer;color:#12123b;display:inline-flex;align-items:center;gap:.4rem}.rec-filter.active{background:#12123b;border-color:#12123b;color:#fff}.rec-filter-count{font-size:.8rem;opacity:.75}.rec-list{display:grid;gap:.85rem}.rec-card h3{margin:.35rem 0 .25rem;font-size:1.05rem}.rec-card-top{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.rec-area,.rec-priority{display:inline-flex;align-items:center;border-radius:999px;padding:.15rem .55rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.rec-area-seo{background:#e8f5e1;color:#006c3b}.rec-area-geo{background:#e7eefc;color:#1a3a8a}.rec-area-aeo{background:#f3e8ff;color:#5b2a86}.rec-area-ads{background:#fff0e0;color:#9a4d00}.rec-area-social{background:#e8f7fb;color:#0b5f73}.rec-area-setup{background:#eeeef3;color:#3a3a55}.rec-priority-high{background:#fde8e8;color:#9b1c1c}.rec-priority-medium{background:#fff4d6;color:#8a6200}.rec-priority-low{background:#eef2f6;color:#4a5568}.rec-action{margin:.65rem 0 0;padding:.65rem .75rem;background:#f4f6f9;border-radius:8px}.rec-signal{margin:.5rem 0 0;font-size:.88rem}.kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem}.summary-panel{padding:1rem 1.15rem 1.1rem}.summary-panel h3{margin:0 0 .85rem;font-size:1.05rem}.summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.85rem 1rem}.summary-metric{display:grid;gap:.2rem;align-content:start;min-width:0}.summary-label{color:#8b93a7;font-size:.8rem;line-height:1.25}.summary-value{color:#1f2430;font-size:1.45rem;font-weight:700;letter-spacing:-.02em;line-height:1.15}.summary-change{font-size:.78rem;font-weight:600;line-height:1.3}.summary-change-up{color:#1f9d55}.summary-change-down{color:#d64545}.summary-change-flat{color:#8b93a7}.summary-vs{color:#8b93a7;font-weight:500}.kpi{background:var(--brand-white);border:1px solid var(--border);border-radius:var(--radius);padding:.9rem 1rem;box-shadow:var(--shadow);display:grid;gap:.25rem;align-content:start}.kpi span{color:var(--muted);font-size:.82rem}.kpi strong{font-size:1.35rem;color:var(--brand-navy)}.kpi-desc{margin:.2rem 0 0;font-size:.78rem;line-height:1.35;color:var(--muted)}.chart-desc{margin:0 0 .75rem;font-size:.9rem;line-height:1.4}.glossary-list{margin:.75rem 0 0;display:grid;grid-template-columns:1fr 1fr;gap:.75rem 1.5rem}.glossary-list div{display:grid;gap:.15rem}.glossary-list dt{font-weight:600;color:var(--brand-navy)}.glossary-list dd{margin:0;color:var(--muted);font-size:.9rem;line-height:1.4}.chart-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:1rem}.chart-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.browser-split{display:grid;grid-template-columns:minmax(240px,.9fr) minmax(280px,1.4fr);gap:.75rem 1rem;align-items:stretch}.chart-box{width:100%;height:320px}.chart-box-sm{height:280px}.path-code{font-size:.82rem;word-break:break-all}@media(max-width:1100px){.kpi-grid,.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.chart-grid,.chart-grid-3,.browser-split,.glossary-list{grid-template-columns:1fr}}@media(max-width:900px){.kpi-grid,.summary-grid{grid-template-columns:1fr 1fr}}.panel{background:var(--brand-white);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem 1.35rem}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.panel-head.compact{margin-bottom:.75rem}.stack{display:grid;gap:1rem}.btn{border:1px solid transparent;border-radius:10px;padding:.65rem 1rem;font:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.btn-primary{background:var(--brand-green);color:#fff}.btn-primary:hover{background:var(--brand-green-mid)}.btn-ghost{background:transparent;border-color:#ffffff40;color:#fff}.btn-ghost-dark{background:#fff;border-color:var(--border);color:var(--brand-navy)}.btn-ghost-dark:hover{border-color:var(--brand-green)}.btn-small{background:#eef5ea;color:var(--brand-navy);padding:.4rem .75rem;font-size:.9rem}.btn-danger{background:#fff1f0;color:var(--danger);border-color:#f3c1bc}.btn:disabled{opacity:.6;cursor:not-allowed}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.85rem .5rem;border-bottom:1px solid var(--border);vertical-align:middle}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.gsc-query-table{font-size:.92rem}.gsc-query-table thead th{background:var(--brand-navy);color:#fff;font-weight:600;text-transform:none;letter-spacing:0;font-size:.88rem;text-align:left;padding:.65rem .75rem;white-space:nowrap;border-bottom:none}.gsc-query-table tbody td{padding:.55rem .75rem;border-bottom:1px solid var(--border);vertical-align:middle}.gsc-query-table tbody tr:nth-child(2n) td{background:#f4f7f2}.gsc-query-table .position-cell{background:#eef6ea!important}.gsc-query-table .query-cell{max-width:280px;word-break:break-word}.gsc-query-table .num-cell{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.gsc-query-table .total-row td{background:#e8f0e4!important;border-top:2px solid #c5d5bc;padding-top:.75rem;padding-bottom:.75rem}.gsc-query-table .total-note{display:inline;font-size:.78rem;font-weight:400;margin-left:.35rem}.sort-hint{font-size:.7rem;opacity:.85}.metric-bar-cell{display:grid;grid-template-columns:minmax(72px,1fr) auto;gap:.5rem;align-items:center;min-width:140px}.metric-bar-track{height:14px;background:#e4ebe0;border-radius:2px;overflow:hidden}.metric-bar-fill{height:100%;background:var(--brand-green);border-radius:2px;min-width:2px}.metric-bar-value{font-variant-numeric:tabular-nums;font-size:.88rem;color:var(--brand-navy);text-align:right;min-width:2.5rem}.table-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-top:.85rem;padding-top:.75rem;border-top:1px solid var(--border)}.table-pager-actions{display:flex;align-items:center;gap:.5rem}.table-pager-page{font-size:.88rem;color:var(--muted);min-width:5.5rem;text-align:center}.table-pager .btn:disabled{opacity:.45;cursor:not-allowed}.client-cell{display:flex;align-items:center;gap:.75rem}.client-thumb{width:40px;height:40px;object-fit:contain;border-radius:8px;background:#f4f7f2;border:1px solid var(--border)}.client-thumb.placeholder{display:grid;place-items:center;font-weight:700;color:var(--brand-green-mid)}.pill{display:inline-block;padding:.2rem .55rem;border-radius:999px;font-size:.8rem;text-transform:capitalize}.pill.active{background:#e8f6df;color:var(--brand-green-dark)}.pill.paused{background:#f1f2f4;color:var(--muted)}.alert{background:#fff1f0;color:var(--danger);border:1px solid #f3c1bc;border-radius:10px;padding:.75rem .9rem;margin-bottom:1rem}.alert.ok{background:#e8f6df;color:var(--brand-green-dark);border-color:#b9e2a5}.empty{text-align:center;padding:2.5rem 1rem;display:grid;gap:.75rem;justify-items:center}.login-page{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-card{width:min(420px,100%);background:#fff;border-radius:18px;box-shadow:var(--shadow);border:1px solid var(--border);padding:2rem 1.75rem;display:grid;gap:.85rem}.login-logo{width:min(220px,70%);justify-self:start}.login-card label,.form-grid label{display:grid;gap:.35rem;font-size:.92rem}input,select,textarea{width:100%;border:1px solid var(--border);border-radius:10px;padding:.7rem .8rem;font:inherit;background:#fff;color:var(--brand-navy)}input:focus,select:focus,textarea:focus{outline:2px solid rgba(103,189,69,.35);border-color:var(--brand-green)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.85rem 1rem}.form-grid-3{grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr) minmax(0,1.3fr)}.span-2{grid-column:1 / -1}.checkbox{display:flex!important;align-items:center;gap:.55rem}.checkbox input{width:auto}.actions{display:flex;gap:.75rem}.back{display:inline-block;margin-bottom:.35rem;color:var(--muted)}.tabs{display:flex;flex-wrap:wrap;gap:.45rem;margin:1rem 0 1.25rem}.tab{border:1px solid var(--border);background:#f7f9fc;color:var(--brand-navy);border-radius:999px;padding:.45rem .8rem;font:inherit;cursor:pointer}.tab.active{background:var(--brand-navy);color:#fff;border-color:var(--brand-navy)}.tab.on:not(.active){border-color:var(--brand-green)}.logo-row{display:flex;align-items:center;gap:1rem}.logo-preview{width:88px;height:88px;object-fit:contain;border:1px solid var(--border);border-radius:12px;background:#f7f9fc}.logo-preview.empty{display:grid;place-items:center;color:var(--muted);font-size:.85rem}.password-field{position:relative;display:block}.password-field input{padding-right:2.75rem}.password-toggle{position:absolute;right:.45rem;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--muted);cursor:pointer;width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;padding:0}.password-toggle:hover{color:var(--brand-navy);background:#eef2f6}.file-label input{margin-top:.35rem}.file-hint{display:block;margin-top:.35rem;font-size:.85rem}@media(max-width:900px){.shell{grid-template-columns:1fr;height:auto;min-height:100vh;min-height:100dvh;overflow:visible}.sidebar{height:auto;overflow:visible;position:sticky;top:0;z-index:2}.nav{flex:none;overflow:visible}.main{height:auto;overflow:visible}.content{overflow:visible}.form-grid,.form-grid-3{grid-template-columns:1fr}.span-2{grid-column:1 / -1}}
