@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--bg:#f5f7fb;--bg-grad-1:#eaf0f7;--bg-grad-2:#f8fbfd;--surface:#fff;--text:#0f172a;--muted:#5b6779;--border:#e3e8ef;--primary:#0f766e;--primary-hover:#115e59;--primary-contrast:#fff;--ring:#0f766e38;--danger:#b91c1c;--shadow:0 12px 34px #0f172a14;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1)}*{box-sizing:border-box}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}html{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:17px}body{min-height:100vh;color:var(--text);background:radial-gradient(1100px 560px at 100% -10%, var(--bg-grad-2), transparent 60%), linear-gradient(180deg, var(--bg-grad-1), var(--bg));margin:0;font-family:Vazirmatn,system-ui,-apple-system,sans-serif}img{max-width:100%;height:auto;display:block}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-hover)}.auth-wrap{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:420px;box-shadow:var(--shadow);border-radius:16px;padding:32px}.auth-brand{color:var(--primary);letter-spacing:.04em;margin-bottom:18px;font-size:14px;font-weight:700}.auth-title{margin:0 0 6px;font-size:22px;font-weight:700}.auth-subtitle{color:var(--muted);margin:0 0 24px;font-size:15px;line-height:1.8}.auth-field{margin-bottom:16px;display:block}.auth-field span{margin-bottom:6px;font-size:14px;font-weight:600;display:block}.auth-input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:10px;padding:11px 12px;transition:border-color .15s,box-shadow .15s}.auth-input:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--ring);outline:none}.auth-btn{background:var(--primary);width:100%;color:var(--primary-contrast);font:inherit;cursor:pointer;transition:background-color .15s ease, transform .12s var(--ease-out);border:none;border-radius:10px;margin-top:6px;padding:12px 16px;font-weight:700}@media (hover:hover) and (pointer:fine){.auth-btn:hover:not(:disabled,[aria-disabled=true]){background:var(--primary-hover)}}.auth-btn:active:not(:disabled,[aria-disabled=true]){transform:scale(.985)}.auth-btn:disabled,.auth-btn[aria-disabled=true]{opacity:.65;cursor:progress}.auth-error{background:color-mix(in srgb, var(--danger) 12%, transparent);color:var(--danger);border-radius:10px;margin:-4px 0 14px;padding:8px 12px;font-size:14px;line-height:1.8}body{flex-direction:column;display:flex}.platform-main{flex-direction:column;flex:auto;display:flex}.auth-wrap{flex:auto;min-height:0}.site-header{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--surface) 82%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:20;justify-content:space-between;align-items:center;gap:16px;padding:6px 24px;display:flex;position:sticky;top:0}.site-header__brand,.site-header__nav a{align-items:center;min-height:44px;display:inline-flex}.site-header__nav{align-items:center;gap:10px;font-size:15px;font-weight:600;display:flex}.site-header__nav a{min-width:44px;color:var(--muted);justify-content:center;padding-inline:4px}.site-header__nav a:hover{color:var(--primary)}@media (max-width:479px){.brand-mark__word{display:none}}.auth-notice{background:color-mix(in srgb, var(--primary) 9%, transparent);color:var(--text);border-radius:10px;margin-top:16px;padding:12px 14px;font-size:14px;line-height:1.8}.auth-notice p{margin:0}.auth-notice p+p{margin-top:8px}.auth-notice a{text-underline-offset:3px;white-space:nowrap;font-weight:700;text-decoration:underline}.auth-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:6px;display:flex}.auth-link{min-height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:14px}.auth-link[aria-disabled=true]{opacity:.5;cursor:progress}@media (hover:hover) and (pointer:fine){.auth-link:hover:not([aria-disabled=true]){color:var(--primary)}}.auth-wait{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.auth-card .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.auth-btn:active:not(:disabled,[aria-disabled=true]){transform:none}}.directory{width:100%;max-width:1040px;margin:0 auto;padding:48px 24px 72px}.directory__header{margin-bottom:32px}.directory__title{letter-spacing:-.01em;margin:0 0 6px;font-size:32px;font-weight:800}.directory__sub{color:var(--muted);margin:0;font-size:15px}.store-empty{text-align:center;color:var(--muted);background:var(--surface);border:1px dashed var(--border);border-radius:16px;margin-top:40px;padding:40px}.tenant-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.tenant-card{border:1px solid var(--border);background:var(--surface);height:100%;box-shadow:inset 0 3px 0 var(--tenant);color:var(--text);border-radius:14px;align-items:center;gap:14px;padding:18px 16px;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.tenant-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.tenant-card__logo,.tenant-card__badge{border-radius:12px;flex:none;width:48px;height:48px}.tenant-card__logo{border:1px solid var(--border);object-fit:contain;background:#fff;padding:4px}.tenant-card__badge{background:radial-gradient(circle at 30% 25%, #ffffff59, transparent 55%), var(--tenant);color:var(--tenant-contrast);place-items:center;font-size:21px;font-weight:900;display:grid}.tenant-card__meta{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.tenant-card__name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:16.5px;font-weight:700;overflow:hidden}.tenant-card__info{color:var(--muted);font-size:13px;font-weight:600}.tenant-card__count{white-space:nowrap}.tenant-card__host{max-width:100%;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}@media (hover:hover) and (pointer:fine){.tenant-card:hover{border-color:var(--tenant);box-shadow:inset 0 3px 0 var(--tenant), var(--shadow);color:var(--text);transform:translateY(-2px)}}@media (max-width:640px){.directory{padding:32px 16px 56px}.directory__title{font-size:26px}}@media (prefers-reduced-motion:reduce){.tenant-card{transition:none}}.platform-state{flex:auto;justify-content:center;align-items:center;padding:48px 20px 64px;display:flex}.platform-state__card{text-align:center;background:var(--surface);border:1px solid var(--border);width:100%;max-width:480px;box-shadow:var(--shadow);border-radius:16px;padding:36px 28px 30px}.platform-state__icon{background:color-mix(in srgb, var(--primary) 12%, #fff);width:60px;height:60px;color:var(--primary);border-radius:50%;place-items:center;margin-bottom:14px;display:inline-grid}.platform-state__title{margin:0 0 8px;font-size:22px;font-weight:800;line-height:1.5}.platform-state__text{color:var(--muted);margin:0;font-size:15px;line-height:1.9}.platform-state__actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px;display:flex}.platform-btn{background:var(--primary);min-height:44px;color:var(--primary-contrast);font:inherit;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;padding:0 20px;font-size:15px;font-weight:700;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.platform-btn--ghost{background:var(--surface);border-color:var(--border);color:var(--text)}@media (hover:hover) and (pointer:fine){.platform-btn:hover{background:var(--primary-hover);color:var(--primary-contrast)}.platform-btn--ghost:hover{background:var(--surface);border-color:var(--primary);color:var(--primary)}}.platform-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){.platform-btn{transition:none}}
