:root{
  --hub-bg:#f4f7fa;--hub-surface:#fff;--hub-soft:#f8fafc;--hub-text:#173042;--hub-muted:#647887;
  --hub-border:#dce6ee;--hub-primary:#176f70;--hub-primary-strong:#10595b;--hub-success:#1c7344;--hub-success-bg:#eaf8ef;
  --hub-warn:#8a6200;--hub-warn-bg:#fff7d6;--hub-danger:#9a2f36;--hub-danger-bg:#fff0f1;--hub-shadow:0 12px 34px rgba(18,49,70,.08);
  --hub-radius:18px;--hub-font:"IRANSansX","IRANSansWeb","IRANSans",Tahoma,Arial,sans-serif;
}
*{box-sizing:border-box}html{background:var(--hub-bg);-webkit-text-size-adjust:100%}body{margin:0;background:var(--hub-bg);color:var(--hub-text);font-family:var(--hub-font);line-height:1.8;min-width:280px;overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}.hub-app{min-height:100dvh;display:flex;flex-direction:column}.hub-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--hub-border)}.hub-brand{display:flex;align-items:center;gap:10px;min-width:0}.hub-brand strong,.hub-brand small{display:block}.hub-brand strong{font-size:15px}.hub-brand small{font-size:11px;color:var(--hub-muted)}.hub-mark{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--hub-primary);color:#fff;font-weight:800;font-size:20px;flex:0 0 auto}.hub-status{font-size:11px;background:var(--hub-warn-bg);color:var(--hub-warn);padding:5px 9px;border-radius:999px;white-space:nowrap}.hub-main{width:100%;max-width:820px;margin:0 auto;padding:18px 14px 28px;flex:1}.hub-card,.hub-auth-card,.hub-secret-reveal{background:var(--hub-surface);border:1px solid var(--hub-border);border-radius:var(--hub-radius);box-shadow:var(--hub-shadow);padding:18px}.hub-card+.hub-card{margin-top:14px}.hub-kicker{font-size:12px;color:var(--hub-primary);font-weight:800;margin:0 0 4px}.hub-title{font-size:22px;line-height:1.45;margin:0 0 8px}.hub-lead{font-size:14px;color:var(--hub-muted);margin:0}.hub-notice{margin-top:16px;border-radius:14px;padding:12px 14px;font-size:13px}.hub-notice ul{margin:0;padding-right:20px}.hub-notice--success{background:var(--hub-success-bg);color:var(--hub-success)}.hub-notice--warn{background:var(--hub-warn-bg);color:var(--hub-warn)}.hub-notice--danger{background:var(--hub-danger-bg);color:var(--hub-danger)}.hub-meta-grid{display:grid;grid-template-columns:1fr;gap:10px;margin-top:16px}.hub-meta{background:var(--hub-soft);border:1px solid var(--hub-border);border-radius:14px;padding:11px 12px;min-width:0}.hub-meta span{display:block;font-size:11px;color:var(--hub-muted)}.hub-meta strong{display:block;font-size:14px;overflow-wrap:anywhere}.hub-timeline{list-style:none;padding:0;margin:16px 0 0}.hub-timeline li{position:relative;padding:0 22px 16px 0;border-right:2px solid #d7e5ed}.hub-timeline li:last-child{padding-bottom:0;border-right-color:transparent}.hub-timeline li:before{content:"";position:absolute;right:-6px;top:7px;width:10px;height:10px;border-radius:50%;background:var(--hub-primary);box-shadow:0 0 0 4px #e8f4f4}.hub-timeline strong{display:block;font-size:14px}.hub-timeline time{display:block;font-size:11px;color:var(--hub-muted);text-align:right}.hub-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-top:18px}.hub-btn{min-height:46px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:13px;padding:10px 14px;text-decoration:none;font-weight:800;font-size:14px;line-height:1.6;border:1px solid transparent;touch-action:manipulation}.hub-btn--primary{background:var(--hub-primary);color:#fff}.hub-btn--primary:hover,.hub-btn--primary:focus-visible{background:var(--hub-primary-strong)}.hub-btn--secondary{background:#fff;border-color:var(--hub-border);color:var(--hub-primary)}.hub-btn--danger{background:#fff;border-color:#e9c9cc;color:var(--hub-danger)}.hub-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:16px 14px 24px;color:var(--hub-muted);font-size:11px;text-align:center}.hub-home-link{color:var(--hub-primary);font-weight:800;text-decoration:none;min-height:36px;display:inline-flex;align-items:center}.hub-section-title{font-size:20px;line-height:1.5;margin:0 0 8px}

/* ورود و راه‌اندازی */
.hub-auth-shell{min-height:100dvh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px 14px}.hub-auth-card{width:100%;max-width:520px}.hub-auth-home{display:inline-flex;align-items:center;min-height:44px;margin-top:14px;color:var(--hub-primary);font-size:13px;font-weight:800;text-decoration:none}.hub-form{display:grid;gap:14px;margin-top:18px}.hub-field{display:grid;gap:7px}.hub-field>span{font-size:13px;font-weight:800;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.hub-field input,.hub-field select,.hub-copy-row input{width:100%;min-height:48px;border:1px solid #cddbe5;border-radius:12px;background:#fff;color:var(--hub-text);padding:10px 12px;outline:none}.hub-field input:focus,.hub-copy-row input:focus{border-color:var(--hub-primary);box-shadow:0 0 0 3px rgba(23,111,112,.13)}

/* پوسته مدیریت */
.hub-admin-app{min-height:100dvh}.hub-admin-top{position:sticky;top:0;z-index:40;height:66px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 12px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--hub-border);backdrop-filter:blur(8px)}.hub-menu-button{min-width:48px;min-height:46px;border:1px solid var(--hub-border);background:#fff;border-radius:12px;color:var(--hub-primary);font-weight:800}.hub-admin-user{text-align:left;min-width:0}.hub-admin-user span,.hub-admin-user small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-admin-user span{font-size:12px;font-weight:800}.hub-admin-user small{font-size:10px;color:var(--hub-muted)}.hub-admin-layout{display:block}.hub-admin-nav{position:fixed;z-index:35;top:66px;right:0;bottom:0;width:min(84vw,300px);background:#fff;border-left:1px solid var(--hub-border);padding:14px;transform:translateX(105%);transition:transform .2s ease;overflow-y:auto}.hub-admin-nav.is-open{transform:translateX(0)}.hub-admin-nav nav{display:grid;gap:5px}.hub-admin-nav__link{width:100%;min-height:46px;display:flex;align-items:center;border-radius:12px;padding:9px 12px;text-decoration:none;color:#395262;font-size:13px;font-weight:800;border:0;background:transparent;text-align:right}.hub-admin-nav__link.is-active{background:#eaf4f4;color:var(--hub-primary)}.hub-admin-nav__button{font-family:inherit}.hub-admin-logout{margin-top:14px;border-top:1px solid var(--hub-border);padding-top:10px}.hub-admin-site-link{display:flex;align-items:center;min-height:46px;margin-top:8px;padding:8px 12px;color:var(--hub-primary);font-size:12px;font-weight:800;text-decoration:none}.hub-admin-main{width:100%;max-width:1120px;margin:0 auto;padding:18px 14px 40px}.hub-page-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.hub-page-head h1{font-size:22px;line-height:1.45;margin:0}.hub-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.hub-card-head h2{font-size:17px;line-height:1.5;margin:0}.hub-card-head p{font-size:12px;color:var(--hub-muted);margin:4px 0 0}.hub-help-button{width:38px;height:38px;flex:0 0 38px;border-radius:50%;border:1px solid #bfd5df;background:#fff;color:var(--hub-primary);font-weight:900;font-size:18px;display:inline-grid;place-items:center;line-height:1}.hub-help-button:hover,.hub-help-button:focus-visible{background:#eaf4f4}.hub-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.hub-stat{background:#fff;border:1px solid var(--hub-border);border-radius:15px;padding:13px;min-width:0}.hub-stat span{display:block;font-size:11px;color:var(--hub-muted)}.hub-stat strong{display:block;font-size:16px;margin-top:3px;overflow-wrap:anywhere}.hub-steps{margin:14px 0 0;padding:0 22px 0 0}.hub-steps li{padding:7px 0;color:#465f6f}.hub-steps li.is-done{color:var(--hub-success);font-weight:800}.hub-steps li.is-done::marker{content:"✓  "}.hub-connector-grid{display:grid;grid-template-columns:1fr;gap:12px}.hub-connector-card{background:#fff;border:1px solid var(--hub-border);border-radius:17px;padding:16px;box-shadow:var(--hub-shadow)}.hub-connector-state{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.hub-pill{display:inline-flex;align-items:center;min-height:31px;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:800;background:#eef3f6;color:#526a79}.hub-pill.is-on,.hub-pill.is-ready{background:var(--hub-success-bg);color:var(--hub-success)}.hub-pill.is-off{background:#f0f3f5;color:#6c7e89}.hub-connector-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px}.hub-connector-actions form{margin:0}.hub-secret-reveal{margin-bottom:14px;border-color:#e8d594}.hub-copy-row{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px}.hub-setting-row,.hub-health-row{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--hub-border);padding:10px 0;font-size:13px}.hub-setting-row strong,.hub-health-row strong{text-align:left}.hub-health-row .is-ok{color:var(--hub-success)}.hub-health-row .is-warn{color:var(--hub-danger)}.hub-audit-list{padding:0;overflow:hidden}.hub-audit-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--hub-border)}.hub-audit-item:last-child{border-bottom:0}.hub-audit-item strong,.hub-audit-item span{display:block}.hub-audit-item strong{font-size:13px}.hub-audit-item span{font-size:11px;color:var(--hub-muted)}.hub-audit-item time{font-size:11px;color:var(--hub-muted);text-align:left;flex:0 0 auto}.hub-case-list{display:grid;gap:8px;margin-top:14px}.hub-case{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:1px solid var(--hub-border);border-radius:13px;padding:11px}.hub-case div span,.hub-case div strong{display:block}.hub-case div span{font-size:10px;color:var(--hub-muted)}.hub-case div strong{font-size:13px}.hub-case time{grid-column:1/-1;font-size:11px;color:var(--hub-muted)}.hub-empty{padding:24px 12px;text-align:center;color:var(--hub-muted);font-size:13px}

/* راهنمای مرکزی */
.hub-help-modal[hidden]{display:none}.hub-help-modal{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:18px}.hub-help-modal__backdrop{position:absolute;inset:0;background:rgba(12,31,43,.58);backdrop-filter:blur(2px)}.hub-help-modal__dialog{position:relative;z-index:1;width:min(100%,640px);max-height:min(78dvh,720px);overflow:auto;background:#fff;border-radius:20px;border:1px solid var(--hub-border);box-shadow:0 24px 80px rgba(5,24,36,.28);padding:22px}.hub-help-modal__dialog h2{font-size:19px;margin:0 0 10px;padding-left:46px}.hub-help-modal__body{font-size:14px;color:#425c6c}.hub-help-modal__body p{margin:0 0 12px}.hub-help-modal__body p:last-child{margin-bottom:0}.hub-help-modal__close{position:absolute;top:12px;left:12px;width:42px;height:42px;border:1px solid var(--hub-border);border-radius:50%;background:#fff;color:#4c6473;font-size:24px;line-height:1}.hub-help-modal.is-open{display:grid}

.hub-home-link:focus-visible,.hub-btn:focus-visible,.hub-menu-button:focus-visible,.hub-admin-nav__link:focus-visible,.hub-help-button:focus-visible,.hub-help-modal__close:focus-visible{outline:3px solid rgba(23,111,112,.22);outline-offset:2px}
@media (min-width:600px){.hub-header{padding:16px 24px}.hub-main{padding:28px 20px 38px}.hub-card,.hub-auth-card,.hub-secret-reveal{padding:24px}.hub-title{font-size:27px}.hub-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-admin-top{padding:8px 18px}.hub-admin-main{padding:24px 20px 44px}.hub-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hub-connector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-connector-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.hub-copy-row{grid-template-columns:1fr auto}.hub-copy-row .hub-btn{min-width:120px}}
@media (min-width:980px){.hub-menu-button{display:none}.hub-admin-top{grid-template-columns:1fr auto;padding-right:278px}.hub-admin-layout{display:grid;grid-template-columns:260px 1fr;min-height:calc(100dvh - 66px)}.hub-admin-nav{position:sticky;top:66px;width:260px;height:calc(100dvh - 66px);transform:none;border-left:1px solid var(--hub-border);grid-column:1;grid-row:1}.hub-admin-main{grid-column:2;grid-row:1;padding:34px 30px 54px}.hub-page-head h1{font-size:27px}.hub-card,.hub-secret-reveal{padding:26px}.hub-title{font-size:30px}.hub-connector-grid{gap:16px}.hub-help-modal__dialog{padding:28px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
