:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#102033;background:#eef3f7}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top left,rgba(14,165,233,.18),transparent 34%),#e8eef4}.login-card{width:min(440px,100%);background:#fff;border:1px solid rgba(148,163,184,.28);border-radius:14px;padding:26px;box-shadow:0 24px 60px #0f172a29}.login-card h1{margin:14px 0 6px;font-size:25px}.login-card p{margin:0 0 20px;color:#64748b;line-height:1.45}.login-mark{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;background:#0f172a;color:#fff}form,.fields,.checks{display:flex;flex-direction:column;gap:12px}label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:900;color:#475569;text-transform:uppercase;letter-spacing:.03em}input,select,textarea{width:100%;border:1px solid #d8e1ea;border-radius:9px;padding:10px 11px;color:#0f172a;background:#fff;outline:none;text-transform:none;letter-spacing:0}input:focus,select:focus,textarea:focus{border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e929}textarea{min-height:92px;resize:vertical}input:disabled{background:#f1f5f9;color:#64748b}.password-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px}.password-row button{border:1px solid #d8e1ea;border-radius:9px;background:#f8fafc;color:#334155}button{border:1px solid #d8e1ea;border-radius:10px;background:#fff;color:#0f172a;padding:10px 12px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:900;cursor:pointer}button:hover{background:#f8fafc}button:disabled{opacity:.58;cursor:not-allowed}.primary,button.primary{background:#0f766e;border-color:#0f766e;color:#fff}.primary:hover,button.primary:hover{background:#115e59}.danger{color:#b91c1c;border-color:#fecaca;background:#fff7f7}.danger:hover{background:#fee2e2}.admin-app{min-height:100vh;display:grid;grid-template-columns:292px minmax(0,1fr)}.sidebar{background:#0f172a;color:#e2e8f0;min-height:100vh;padding:18px;display:flex;flex-direction:column;gap:14px;position:sticky;top:0}.brand{display:flex;align-items:center;gap:10px;padding-bottom:8px}.brand svg{color:#67e8f9}.brand strong{display:block;color:#fff;font-size:17px}.brand span{color:#94a3b8;font-size:12px;font-weight:800}.new-button{background:#0ea5e9;border-color:#0ea5e9;color:#fff}.search{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px 10px;color:#cbd5e1}.search input{border:0;background:transparent;color:#fff;padding:0;box-shadow:none}.tenant-list{display:flex;flex-direction:column;gap:8px;overflow:auto;min-height:0}.tenant-list button{justify-content:flex-start;align-items:flex-start;flex-direction:column;background:#ffffff0f;border-color:#ffffff1a;color:#fff;text-align:left}.tenant-list button.active{background:#0ea5e938;border-color:#7dd3fc73}.tenant-list span{color:#cbd5e1;font-size:12px}.logout{margin-top:auto;background:transparent;color:#cbd5e1;border-color:#ffffff24}.content{padding:22px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.topbar p{margin:0 0 4px;color:#0f766e;text-transform:uppercase;font-size:11px;font-weight:900;letter-spacing:.08em}.topbar h1{margin:0;font-size:clamp(24px,3vw,36px)}.top-actions{display:flex;gap:8px;flex-wrap:wrap}.alert{border-radius:10px;padding:10px 12px;margin-bottom:12px;font-size:14px;font-weight:800}.alert.error{border:1px solid #fecaca;background:#fff1f2;color:#b91c1c}.alert.ok{border:1px solid #bbf7d0;background:#f0fdf4;color:#047857}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.metric{background:#fff;border:1px solid rgba(148,163,184,.28);border-radius:12px;padding:14px;display:grid;gap:4px}.metric svg{color:#0f766e}.metric span{color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase}.metric strong{font-size:25px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}.panel{background:#fff;border:1px solid rgba(148,163,184,.28);border-radius:14px;padding:16px;box-shadow:0 10px 30px #0f172a0d}.panel h2{margin:0 0 14px;font-size:16px}.fields.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.check{flex-direction:row;align-items:center;text-transform:none;letter-spacing:0;color:#334155;font-size:14px}.check input{width:auto}.logo-preview{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;border:1px solid #d8e1ea;border-radius:12px;background:#f8fafc;padding:12px;margin-bottom:12px}.logo-preview>svg,.logo-preview>img{width:72px;height:72px;border-radius:10px;object-fit:contain;background:#fff;border:1px solid #e2e8f0;padding:8px}.logo-preview strong,.logo-preview span{display:block}.logo-preview span,.hint{color:#64748b;font-size:12px;font-weight:700;line-height:1.4}.upload-button{display:inline-flex;width:fit-content;flex-direction:row;align-items:center;justify-content:center;padding:10px 12px;border-radius:10px;border:1px solid #bae6fd;background:#eff6ff;color:#075985;cursor:pointer;margin-bottom:12px}.upload-button input{display:none}.upload-button.disabled{opacity:.55;cursor:not-allowed}.upload-button.compact{min-height:42px;margin-bottom:0}.apk-box{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:start;border:1px solid #ccfbf1;border-radius:12px;background:#f0fdfa;padding:12px;margin-bottom:12px}.apk-box>svg{width:42px;height:42px;padding:9px;border-radius:10px;color:#0f766e;background:#fff;border:1px solid #99f6e4}.apk-box strong,.apk-box span{display:block}.apk-box span{color:#64748b;font-size:12px;font-weight:700;line-height:1.4}.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 12px;border-radius:10px;border:1px solid #d8e1ea;background:#fff;color:#0f172a;font-size:14px;font-weight:900;text-decoration:none}.button-link:hover{background:#f8fafc}.portal-status-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.status-pill{border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;padding:10px}.status-pill span{display:block;color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.status-pill strong{display:block;color:#0f172a;font-size:14px;margin-top:3px}.status-pill.good{background:#f0fdf4;border-color:#bbf7d0}.status-pill.warn{background:#fffbeb;border-color:#fde68a}.setup-steps{display:grid;gap:8px;margin:0 0 12px;padding-left:20px}.setup-steps li{color:#0f172a;font-size:13px;line-height:1.35}.setup-steps strong,.setup-steps span{display:block}.setup-steps span{color:#64748b;font-weight:700}.portal-url-box{display:grid;gap:4px;border:1px solid #d8e1ea;border-radius:10px;background:#f8fafc;padding:10px;margin-bottom:12px}.portal-url-box span{color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.portal-url-box a{color:#0f766e;font-size:14px;font-weight:900;overflow-wrap:anywhere;text-decoration:none}.portal-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.portal-detail-grid>div{border:1px solid #d8e1ea;border-radius:10px;background:#fff;padding:10px;min-width:0}.portal-detail-grid span{display:block;color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.portal-detail-grid strong{display:block;color:#0f172a;font-size:13px;margin-top:4px;overflow-wrap:anywhere}.portal-action,.play-store-box{border-radius:10px;padding:10px 12px;margin-bottom:12px;font-size:13px;font-weight:800;line-height:1.4}.portal-action.ok{border:1px solid #bbf7d0;background:#f0fdf4;color:#047857}.portal-action.warn{border:1px solid #fde68a;background:#fffbeb;color:#92400e}.portal-action.error{border:1px solid #fecaca;background:#fff1f2;color:#b91c1c}.play-store-box{border:1px solid #dbeafe;background:#eff6ff;color:#1e3a8a}.play-store-box strong,.play-store-box span{display:block}.play-store-box span{margin-top:3px;color:#475569}@media(max-width:980px){.admin-app{grid-template-columns:1fr}.sidebar{position:static;min-height:auto}.tenant-list{max-height:260px}.kpis,.grid{grid-template-columns:1fr}}@media(max-width:640px){.content{padding:14px}.topbar{flex-direction:column}.fields.two,.portal-detail-grid{grid-template-columns:1fr}}
