[hidden]{display:none!important}
.cloud-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}
.cloud-nav button{border:1px solid #45627c;border-radius:9px;color:#e5f0fb;padding:8px 12px;background:transparent;font-size:12px;font-weight:700;cursor:pointer}
.cloud-nav button.active{background:#ebf4ff;color:#15395b;border-color:#ebf4ff}
.cloud-nav span{font-size:12px;color:#b8cde4;max-width:175px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cloud-connected .tools,.cloud-connected .reset-button,.field-only .staff-filter{display:none!important}
.auth-wall{position:fixed;inset:0;z-index:100001;background:linear-gradient(142deg,#0f2944,#23527c);display:flex;justify-content:center;align-items:center;padding:18px;overflow:auto}
.auth-box{background:#fff;width:min(445px,100%);padding:30px;border-radius:21px;box-shadow:0 18px 48px #051b3180;color:#1e3448}
.auth-brand{font-size:18px;color:#15476c;font-weight:800;letter-spacing:-.4px}.auth-brand span{background:#dceefa;color:#19527d;font-size:11px;padding:4px 8px;border-radius:10px}
.auth-box h1{margin:19px 0 8px;font-size:23px}.auth-box p{font-size:14px;line-height:1.45;color:#526578}
.auth-box form{display:grid;gap:14px;margin-top:24px}.auth-box label{font-size:13px;font-weight:650;display:grid;gap:6px}
.auth-box input{font:inherit;font-size:16px;padding:13px;border:1px solid #c9d6e3;border-radius:9px;min-width:0;width:100%;box-sizing:border-box}
.auth-box .button{width:100%;padding:14px;border-radius:9px}.demo-login{display:grid;gap:8px;padding-top:18px;border-top:1px solid #e5e9ed;margin-top:18px}.demo-login p{font-size:13px;margin:0 0 6px}
#loginError{color:#b33f47;margin:12px 0 0;font-size:12px;min-height:17px}
.sync-box{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:9500;border:1px solid #c8d8e9;box-shadow:0 6px 25px #102d4a30;border-radius:10px;background:#e9f4fd;color:#123b61;padding:10px 14px;max-width:min(540px,calc(100% - 30px));font-size:12px;display:flex;gap:10px;align-items:center}
.sync-box.ok{background:#e7f7ef;color:#126445}.sync-box.error{background:#fff1ec;color:#912e16}.sync-box.warn{background:#fff8e1;color:#805d06}.sync-box button{border:1px solid currentColor;background:transparent;border-radius:7px;padding:5px 8px;cursor:pointer}
.admin-area{background:#f1f5f9;color:#233448;min-height:calc(100vh - 70px);padding:24px clamp(14px,3vw,42px) 60px;box-sizing:border-box;overflow:auto}
.admin-head{display:flex;align-items:center;gap:16px;justify-content:space-between;flex-wrap:wrap;margin-bottom:22px}
.admin-head h1{font-size:25px;letter-spacing:-.5px;margin:0 0 5px}.admin-head p{font-size:13px;color:#66788b;margin:0}
.admin-head .button{white-space:nowrap}
.admin-filters{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:15px}
.admin-filters label,.admin-card label{font-size:12px;font-weight:650;color:#55687c;display:grid;gap:5px;min-width:150px}
.admin-filters select,.admin-card select,.admin-card input[type=file]{max-width:100%;min-height:38px;border-radius:8px;border:1px solid #d1dce5;background:#fff;padding:8px;color:#233448;font:inherit}
.admin-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:11px;margin-bottom:17px}
.admin-kpi{border:1px solid #e3eaf0;background:white;border-radius:12px;padding:17px 12px;box-shadow:0 2px 9px #16345407}
.admin-num{font-size:27px;font-weight:800;font-variant-numeric:tabular-nums;color:#173b5d}.admin-desc{font-size:11px;color:#6a788a;margin-top:5px}
.admin-kpi.lightgreen .admin-num{color:#41a47c}.admin-kpi.darkgreen .admin-num{color:#148653}.admin-kpi.alert .admin-num{color:#b37617}
.admin-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:16px;margin-bottom:16px;align-items:start}
.admin-card{border:1px solid #e2e8ef;background:white;border-radius:13px;padding:19px;min-width:0;box-shadow:0 2px 12px #12304c08}
.admin-card h2{font-size:15px;margin:0 0 12px;color:#183956}.admin-card h3{font-size:13px;margin:18px 0 10px}
.admin-card p{font-size:12px;line-height:1.5}
.admin-card .button{font-size:12px}.admin-card>label{margin:10px 0}.admin-card>a{display:block;color:#1e5c89;font-size:12px;margin-top:13px}
.admin-title{display:flex;gap:8px;align-items:start;justify-content:space-between;flex-wrap:wrap;margin-bottom:10px}
.admin-title h2{margin:5px 0}
.admin-table-wrap{overflow:auto;max-height:350px}
.admin-table{border-collapse:collapse;min-width:460px;width:100%;font-size:12px}
.admin-table th{text-align:left;color:#668096;background:#f5f8fb;font-size:11px;padding:10px 8px;position:sticky;top:0}
.admin-table td{padding:10px 8px;border-bottom:1px solid #edf1f5;white-space:nowrap}
.admin-muted{color:#6a788a}.admin-feedback{background:#f4f8fc;border-radius:8px;padding:12px;min-height:18px;white-space:pre-wrap}
.sector-stat{margin:13px 0}.sector-stat>div:first-child{display:flex;justify-content:space-between;gap:8px;font-size:12px}.sector-stat span{color:#7a8894}
.progress{height:9px;border-radius:10px;background:#e9eef2;overflow:hidden;margin-top:8px}.progress i{display:block;height:100%;background:linear-gradient(90deg,#70b795,#0a8f5b)}
.appointments-mini{font-size:12px;max-height:185px;overflow:auto;margin-top:11px}.appointments-mini div{border-top:1px solid #e9eef3;padding:8px 0}.appointments-mini span{font-weight:700;color:#295a7b}
.staff-user{display:flex;gap:10px;align-items:center;justify-content:space-between;border-bottom:1px solid #ecf0f3;padding:8px 0;font-size:12px}
.staff-user small{display:block;color:#81919d}.staff-role{color:#49738a;white-space:nowrap;font-size:11px}
@media(max-width:1180px){.admin-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:780px){
.cloud-nav{width:100%;justify-content:space-between;gap:5px;margin:8px 0 0}.cloud-nav button{padding:8px 9px;font-size:11px}.cloud-nav span{max-width:125px}
.admin-area{padding:15px 11px 60px}.admin-head{align-items:stretch}.admin-head h1{font-size:20px}.admin-filters{gap:7px}.admin-filters label{flex:1;min-width:110px}
.admin-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.admin-kpi{padding:11px 8px}.admin-num{font-size:23px}.admin-desc{font-size:10px}
.admin-grid{grid-template-columns:1fr;gap:9px;margin-bottom:9px}.admin-card{padding:14px;border-radius:10px}
.sync-box{bottom:5px;width:calc(100% - 20px)}
}

@media(max-width:780px){
.top:has(.cloud-nav:not([hidden])){height:auto;min-height:54px;flex-wrap:wrap;padding-top:7px;padding-bottom:7px}
.top:has(.cloud-nav:not([hidden])) .cloud-nav{order:3}
}
