/* Shared visual surfaces for public, authentication and provider pages. */
/* One typography contract for editable fields, including legacy and upgraded forms.
   Kalameh is embedded in the workspace; HamtavarSurface loads the same family on public surfaces.
   Explicit longhands avoid inheriting a bold label or resetting field geometry with font:inherit. */
:root{--rp-field-font-family:Kalameh,HamtavarSurface,Vazirmatn,Tahoma,sans-serif;--rp-field-font-size:13px;--rp-field-font-weight:400;--rp-field-line-height:1.7}
:root body :is(input:not([type=checkbox],[type=radio],[type=range],[type=color],[type=file],[type=hidden],[type=button],[type=submit],[type=reset],[type=image]),select,textarea,option,optgroup){font-family:var(--rp-field-font-family)!important;font-size:var(--rp-field-font-size)!important;font-weight:var(--rp-field-font-weight)!important;line-height:var(--rp-field-line-height)!important;letter-spacing:normal!important}
:root body :is(input,textarea)::placeholder{font-family:inherit!important;font-size:inherit!important;font-weight:inherit!important;letter-spacing:inherit!important}
/* Native popups need an opaque surface: transparent options can otherwise
   keep dark-theme text while Windows paints a white menu behind them. */
:root{--rp-select-bg:#f6f4ef;--rp-select-fg:#17191a;--rp-select-scheme:light}
:root[data-theme=dark]{--rp-select-bg:#1c201e;--rp-select-fg:#f1eee8;--rp-select-scheme:dark}
:root body select,:root body select :is(option,optgroup){background-color:var(--rp-select-bg)!important;color:var(--rp-select-fg)!important}
:root body select{color-scheme:var(--rp-select-scheme)}
:root body select option:checked{background-color:#2f5c50!important;color:#fbf8f2!important}
::view-transition{pointer-events:none}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal;pointer-events:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2}::view-transition-group(root){animation-duration:0s;pointer-events:none}
:root:not(.hamtavar-workspace){color-scheme:light;--bg:#ebe8e1;--panel:#ffffff75;--panel2:#ffffffa3;--surface:#ffffffa3;--soft:#ffffff50;--txt:#17191a;--ink:#17191a;--mut:#676a66;--muted:#676a66;--line:#17191a17;--brand:#2f5c50;--brand2:#264c42;--brand-soft:#2f5c5010;--r:26px;--sh:inset 0 1px 0 #ffffffb3,0 24px 48px -30px #46321e47;--rp-surface-ink:#17191a;--rp-surface-cream:#fbf8f2}
:root[data-theme=dark]:not(.hamtavar-workspace){color-scheme:dark;--bg:#111412;--panel:#ffffff0d;--panel2:#ffffff16;--surface:#ffffff16;--soft:#ffffff0b;--txt:#f1eee8;--ink:#f1eee8;--mut:#a3a6a0;--muted:#a3a6a0;--line:#ffffff14;--brand:#8fb9a7;--brand2:#b4d4c5;--brand-soft:#8fb9a710;--sh:inset 0 1px 0 #ffffff0d,0 24px 48px -30px #000b;--rp-surface-ink:#f1eee8;--rp-surface-cream:#17191a}
html,body{scrollbar-width:none!important}html::-webkit-scrollbar,body::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
:root:not(.hamtavar-workspace) body{background:var(--bg);color:var(--txt);isolation:isolate}
:root:not(.hamtavar-workspace) body:has(.auth-shell):before,body.rapport-public:before,body.rapport-provider:before,body.rapport-receipt:before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 5% 10%,#f2d3bdab,transparent 48%),radial-gradient(ellipse at 90% 100%,#cfdfcdbb,transparent 55%),radial-gradient(ellipse at 80% 0,#f1e4bf8a,transparent 38%)}
[data-theme=dark] body:before{background:radial-gradient(ellipse at 5% 0,#c8431f38,transparent 48%),radial-gradient(ellipse at 90% 100%,#2f5c505a,transparent 55%),radial-gradient(ellipse at 80% 0,#f2c94c10,transparent 38%)}
body.rapport-public{font-family:Kalameh,Vazirmatn,Tahoma,sans-serif;--max:1280px}
/* Landing text used the old dark-only txt-2 token even in the light surface. */
:root:not(.hamtavar-workspace){--txt-2:var(--mut);--txt-3:var(--mut)}
body.rapport-public{overflow-x:clip}
.rapport-public :is(#hdr,.site-header){position:sticky!important;top:0;z-index:80;background:color-mix(in srgb,var(--bg) 94%,transparent)!important;backdrop-filter:blur(18px)!important;border-bottom:1px solid var(--line)!important}
.rapport-public .platforms{align-items:stretch;grid-auto-rows:1fr}
.rapport-public .platforms .tile{display:flex;flex-direction:column;align-items:stretch;height:100%;min-width:0}
.rapport-public .platforms .tile>p{flex:1}
.rapport-public .platforms .tile-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:auto;padding-top:16px}
.rapport-public .platforms .tile-actions>.btn{display:flex;align-items:center;justify-content:center;width:100%;min-height:46px;margin:0;background:var(--rp-surface-ink);color:var(--rp-surface-cream);border:1px solid var(--line)}
.rapport-public :is(#hdr,.site-header){background:transparent;border:0;box-shadow:none;position:relative;backdrop-filter:none;padding-block:8px}
.rapport-public :is(.nav-links,.site-nav){gap:4px}.rapport-public :is(.nav-links,.site-nav)>a{padding:9px 14px;border-radius:999px;transition:background .2s,color .2s}.rapport-public :is(.nav-links,.site-nav)>a:hover,.rapport-public :is(.nav-links,.site-nav)>a[aria-current=page]{background:var(--panel2);color:var(--txt)}
.rapport-public :is(.btn,.button,.signup-option,.menu-btn,.menu-button){border-radius:999px;box-shadow:none;background:var(--panel);color:var(--txt);border-color:var(--line)}
.rapport-public :is(.btn-pri,.btn-primary,.button.primary){background:var(--rp-surface-ink);color:var(--rp-surface-cream);border-color:transparent}
.rapport-public :is(.hero,.hero-grid,.section,.page-section,.band,footer,.site-footer){background:transparent}.rapport-public :is(.hero h1,.page-hero h1){font-weight:600;letter-spacing:-.04em}
.rapport-public :is(.tile,.feature-card,.feat-card,.plan-card,.module-card,.compare-col,.steps-row>li,.faq-item,.form-card,.contact-card,.price-note,.preview,.hero-visual,.screen,.faq-list details){border:1px solid color-mix(in srgb,var(--panel2) 80%,var(--line));border-radius:26px;background:var(--panel);box-shadow:var(--sh)}
.rapport-public :is(.tile,.feature-card,.feat-card,.plan-card,.module-card){transition:translate .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}.rapport-public :is(.tile,.feature-card,.feat-card,.plan-card,.module-card):hover{translate:0 -4px;box-shadow:var(--sh),0 18px 38px -28px #17191a66}
.rapport-public :is(.plan-card.focus-plan,.compare-col.good){background:color-mix(in srgb,#f2c94c 15%,var(--panel2));border-color:color-mix(in srgb,#f2c94c 45%,var(--line))}.rapport-public :is(.plan-tag,.discount,.plan-discount,.chips li){border-radius:999px}
.rapport-public :is(input,select,textarea){border:1px solid var(--line);border-radius:14px;background:var(--panel2);color:var(--txt)}
.rapport-surface-theme{position:relative;display:grid;place-items:center;flex:none;width:38px;height:38px;min-height:38px;padding:8px;border:1px solid var(--line);border-radius:50%;background:var(--panel2);color:var(--txt);cursor:pointer}.rapport-surface-theme svg{width:19px;height:19px}
.rapport-surface-theme.auth-theme{position:absolute;top:24px;inset-inline-start:24px}
.rapport-public .header-actions{display:flex;width:auto;align-items:center}.rapport-public .brand img{object-fit:contain}
/* Authentication uses the same glass, mesh, spacing and controls. */
#login{background:transparent!important;scrollbar-width:none!important}#login::-webkit-scrollbar{display:none!important}
.auth-shell{border:1px solid var(--line);border-radius:28px;background:var(--panel);box-shadow:var(--sh);backdrop-filter:blur(12px)}
.auth-form-area{background:transparent!important}.auth-showcase{background:color-mix(in srgb,var(--brand) 9%,var(--panel))!important;color:var(--txt)!important;border-inline-start:1px solid var(--line)}
.showcase-copy h2,.showcase-copy h2 em,.showcase-foot{color:var(--txt)!important}.showcase-copy h2{font-weight:600}.showcase-foot{opacity:.65}.auth-device-glow{background:#cfdfcd!important}
.auth-switch{border-radius:999px;background:var(--panel2);border-color:var(--line)}.auth-switch :is(button,a,span){border-radius:999px!important}.auth-switch-active,.auth-switch button.active{background:var(--panel2)!important;color:var(--txt)!important;box-shadow:0 2px 8px #17191a08}
#login :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-radius:14px!important;background:var(--panel2)!important;border-color:var(--line)!important;color:var(--txt)!important;box-shadow:none}
#login :is(.auth-submit,.primary,.pa-submit){border-radius:999px!important;background:var(--rp-surface-ink)!important;color:var(--rp-surface-cream)!important;border:0!important;box-shadow:none!important}
.signup-page label.choice{border-radius:18px;background:var(--panel2);border-color:var(--line)}.signup-page label.choice:has(input:checked){border-color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,var(--panel2))}.signup-page :is(.summary,.terms-text,.payg){border-radius:20px;background:var(--panel2);border-color:var(--line)}.signup-page button:not(.auth-theme){border-radius:999px}.signup-page .signup-steps li>span{border-radius:50%}.signup-page .auth-heading h1{font-weight:600}
.signup-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.signup-page .signup-service-grid label.choice{display:flex;flex-wrap:wrap;align-content:start;gap:8px;margin:0;padding:16px;position:relative}.signup-service-grid .choice>b{font-size:13px}.signup-service-grid .choice>small{flex:1 0 100%;font-size:11px;white-space:normal;text-align:start;line-height:1.9}.signup-service-grid .service-price{flex:1 0 100%;text-align:start;font-weight:700;color:var(--txt)}
.signup-service-grid input{width:20px;height:20px;accent-color:var(--brand)}.signup-services-note{font-size:11px;color:var(--mut);margin-top:12px}.service-billing{font-size:10px;border-radius:999px;padding:2px 8px;background:var(--soft);color:var(--mut)}
/* Provider navigation is a header strip; the retired drawer is absent. */
body.rapport-provider #app{padding:22px 24px 0 96px;max-width:1840px;margin:auto;height:100dvh;overflow:auto;scrollbar-width:none!important}body.rapport-provider #app::-webkit-scrollbar{display:none!important}
.rapport-provider #app>header{position:relative;inset:auto;display:flex;align-items:center;gap:18px;background:transparent;color:var(--txt);box-shadow:none;padding:0;margin:0 0 28px;min-height:48px;flex-wrap:wrap}.rapport-provider header h1{font-size:17px;font-weight:600}.rapport-provider header>.sp{display:none}
.rapport-provider #providerNav{position:static;inset:auto;transform:none;display:block;order:0;flex:1;min-width:0;width:auto;height:auto;margin:0;padding:0;border:0;background:none;box-shadow:none;overflow:auto;scrollbar-width:none!important}.rapport-provider #providerNav>.rp-provider-tabs{display:flex;justify-content:center;gap:3px;flex-direction:row;width:max-content;min-width:100%;padding:4px}.rapport-provider #providerNav button{width:auto;flex:none;display:block;padding:10px 16px;min-height:40px;font-size:12px;border:0;border-radius:999px;background:none;color:var(--txt);box-shadow:none}.rapport-provider #providerNav button.on,.rapport-provider #providerNav button[aria-current=page]{background:var(--rp-surface-ink);color:var(--rp-surface-cream)}
.rapport-provider #app main{margin:0;padding:0;max-width:none;min-width:0}.rapport-provider .section{background:var(--panel);border:1px solid var(--line);border-radius:26px;padding:22px;box-shadow:var(--sh)}.rapport-provider .section>h2{font-size:22px;font-weight:600}.rapport-provider :is(.tenantStats>*,.ticketCard,.tcard,.card){background:var(--panel2);border-color:var(--line);border-radius:20px}.rapport-provider :is(.btn,button){border-radius:999px}.rapport-provider #app :is(input,select,textarea){background:var(--panel2)!important;color:var(--txt)!important;border-color:var(--line)!important;border-radius:14px}.rapport-provider #app .btn:not(.pri):not(.red){background:var(--panel2)!important;color:var(--txt)!important;border-color:var(--line)!important}.rapport-provider #app .btn.pri{background:var(--rp-surface-ink)!important;color:var(--rp-surface-cream)!important;border-color:transparent!important}.rapport-provider :is(.tblwrap,dialog){border-radius:20px;background:var(--panel2);border-color:var(--line)}.rapport-provider table{background:transparent;color:var(--txt)}
.rp-provider-dock{position:fixed;left:20px;top:50%;translate:0 -50%;z-index:40;display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:999px;background:#17191a;color:#fbf8f2}.rp-provider-dock>button{display:grid;place-items:center;width:42px;height:42px;border:0;border-radius:50%;background:none;color:inherit;cursor:pointer}.rp-provider-dock>button:hover,.rp-provider-dock>button:focus-visible{background:#ffffff24}.rp-provider-dock svg{width:19px;height:19px}
.rapport-provider .providerNavToggle{display:none!important}.rapport-receipt main{background:var(--panel);border:1px solid var(--line);border-radius:26px;box-shadow:var(--sh);backdrop-filter:blur(12px)}.rapport-receipt button{border-radius:999px;background:var(--rp-surface-ink);color:var(--rp-surface-cream)}.rapport-receipt dt{color:var(--mut)}.rapport-receipt a{color:var(--brand)}
@media(max-width:1100px){.rapport-public :is(.nav-links,.site-nav)>a{padding-inline:9px}.rapport-provider #providerNav{flex-basis:100%;order:5}.rapport-provider #who{margin-inline-start:auto}}
@media(max-width:760px){body.rapport-provider #app{padding:16px 14px 90px}.rapport-provider .section{padding:16px;border-radius:24px}.rp-provider-dock{top:auto;bottom:12px;left:50%;translate:-50% 0;flex-direction:row;max-width:calc(100vw - 24px);overflow:auto}.rp-provider-dock>button{flex:none;width:40px;height:40px}.rapport-public .header-actions{gap:6px}.rapport-public :is(.btn,.button){padding-inline:12px}.rapport-public .rapport-surface-theme{width:34px;height:34px;min-height:34px}.rapport-public .brand img{max-width:125px}.rapport-provider #app>header{gap:10px;margin-bottom:20px}.rapport-provider header h1{font-size:15px}.rapport-public :is(.menu-btn,.menu-button){border-radius:50%}}
@media(max-width:420px){.signup-service-grid{grid-template-columns:1fr}.rapport-provider #who{font-size:10px!important}.rapport-public .header-actions .rapport-surface-theme{display:none}.rapport-public :is(.tile,.feature-card,.plan-card,.module-card){border-radius:22px}}
@media(prefers-reduced-motion:reduce){.rapport-public :is(.tile,.feature-card,.plan-card,.module-card){transition:none}}
/* Shared optional-service cards also appear in the embedded registration and renewal forms. */
.signup-service-grid .signup-choice{display:flex;flex-wrap:wrap;gap:8px;padding:16px;border:1px solid var(--line);border-radius:18px;background:var(--panel2);margin:0;cursor:pointer}.signup-service-grid .signup-choice>b{flex:1;min-width:0}.signup-service-grid .signup-choice>small{flex-basis:100%;font-size:11px;color:var(--mut);line-height:1.9}.signup-service-grid .signup-choice:has(input:checked){border-color:var(--brand);background:color-mix(in srgb,var(--brand) 10%,var(--panel2))}.signup-service-grid .signup-choice input{width:20px;height:20px;min-height:20px;margin:0}.service-purchase-note{font-size:12px!important;line-height:1.9}.module-card>.btn{margin-top:16px;width:100%}
.rapport-public :is(button,input,select,textarea,.btn,.signup-option){font-family:inherit}
@font-face{font-family:HamtavarSurface;src:url('fonts/KalamehWeb-Regular.woff2') format('woff2');font-weight:100 500;font-display:swap}@font-face{font-family:HamtavarSurface;src:url('fonts/KalamehWeb-Bold.woff2') format('woff2');font-weight:600 900;font-display:swap}
:root:not(.hamtavar-workspace) body{font-family:HamtavarSurface,Kalameh,Tahoma,sans-serif}:root[data-theme] body.rapport-provider #app :is(input,select,textarea){background:var(--panel2)!important;color:var(--txt)!important;border-color:var(--line)!important}:root[data-theme] body.rapport-provider #app .btn:not(.pri):not(.red){background:var(--panel2)!important;color:var(--txt)!important;border-color:var(--line)!important}
@media(prefers-color-scheme:dark){:root:not([data-theme]):not(.hamtavar-workspace){--bg:#111412;--panel:#ffffff0d;--panel2:#ffffff16;--surface:#ffffff16;--soft:#ffffff0b;--txt:#f1eee8;--ink:#f1eee8;--mut:#a3a6a0;--muted:#a3a6a0;--line:#ffffff14;--brand:#8fb9a7;--brand2:#b4d4c5;--rp-surface-ink:#f1eee8;--rp-surface-cream:#17191a;--sh:inset 0 1px 0 #ffffff0d,0 24px 48px -30px #000b}:root:not([data-theme]) body.rapport-public:before{background:radial-gradient(ellipse at 5% 0,#c8431f38,transparent 48%),radial-gradient(ellipse at 90% 100%,#2f5c505a,transparent 55%)}}
@property --rp-scroll-visibility{syntax:'<number>';inherits:false;initial-value:0}
:root:not(.hamtavar-workspace) *{--rp-scroll-visibility:0;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--txt) calc(var(--rp-scroll-visibility)*32%),transparent) transparent}
:root:not(.hamtavar-workspace) .rp-scroll-active{--rp-scroll-visibility:1}
:root:not(.hamtavar-workspace) *::-webkit-scrollbar{width:6px;height:6px;background:transparent}:root:not(.hamtavar-workspace) *::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--txt) calc(var(--rp-scroll-visibility)*32%),transparent);border-radius:999px}
:root:not(.hamtavar-workspace),:root:not(.hamtavar-workspace) body,:root:not(.hamtavar-workspace) #login{scrollbar-width:none!important}
:root:not(.hamtavar-workspace)::-webkit-scrollbar,:root:not(.hamtavar-workspace) body::-webkit-scrollbar,:root:not(.hamtavar-workspace) #login::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
@media(forced-colors:active){:root:not(.hamtavar-workspace) *{scrollbar-color:auto}}

/* Provider forms use the same spacing, fields and rows as the workspace. */
.rapport-provider :is(.section,#mbox) label:not(.packAsset){min-width:0;line-height:1.8;font-size:12px;gap:8px}
.rapport-provider :is(.section,#mbox) :is(input:not([type=checkbox],[type=radio],[type=color],[type=file]),select,textarea){border-radius:14px;min-height:44px;padding:11px 14px;line-height:1.6;font:inherit;box-shadow:none;max-width:100%}
.rapport-provider :is(input,select,textarea):focus-visible{outline:2px solid var(--brand);outline-offset:2px}
.rapport-provider :is(.grid,.row,.section,.field){min-width:0}.rapport-provider .grid{gap:16px}.rapport-provider :is(th,td){padding:15px 14px;border-color:var(--line);line-height:1.8}.rapport-provider th{font-size:12px;color:var(--mut);font-weight:500}.rapport-provider :is(.accessChildren,.packageAccess,.accessSection){border-color:var(--line);border-radius:18px}.rapport-provider .accessChildren label{padding:10px 12px;border-radius:12px;background:var(--panel2)}
@media(max-width:600px){.rapport-provider .grid{grid-template-columns:minmax(0,1fr)}.rapport-provider .section{padding:16px}.rapport-provider :is(.row,.leftActions){flex-wrap:wrap}}

/* ── پنجره‌ها و منوهای شناور همیشه توپر ──
   در تم Rapport رنگ --panel شفاف است تا کارت‌های صفحه شیشه‌ای شوند؛ ولی هر چیزی که روی صفحه می‌نشیند
   (پنجره، راهنما، منو، دستیار، تقویم) باید پس‌زمینهٔ توپر داشته باشد وگرنه متنش با صفحهٔ زیرین قاطی می‌شود. */
:root{--solid:#fffefa}
:root[data-theme=dark]{--solid:#1b2427}
@media(prefers-color-scheme:dark){:root:not([data-theme]){--solid:#1b2427}}
#mbox,#dlgBox,#docView,#tourCard,#toolsPanel,.msgMenu,.ballDlg,.dpWrap,.action-menu-popover,.pActionMenuItems,#supPanel,#ballTip,dialog{background:var(--solid)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
#mbox>.mhead,#mbox .mhead{background:var(--solid)!important}
#supPanel #supBody{background:var(--bg)!important}
#supPanel #supForm{background:var(--solid)!important}
@media(max-width:900px){nav{background:var(--solid)!important}}

/* ── دو ستون دسترسی: پایه (راست) و قابل خرید (چپ) ── */
.accessCols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.accessCol{min-width:0;border:1px solid var(--line);border-radius:16px;padding:12px;background:var(--panel2)}
.accessCol>h4{margin:0 0 10px;font-size:13.5px;font-weight:800}
.accessCol .accessTree,.accessCol .accessScroll{max-height:420px;padding-inline-end:4px}
@media(max-width:760px){.accessCols{grid-template-columns:1fr}}
/* نوار پیمایش فقط وقتی دیده می‌شود که کاربر روی فهرست است */
.autoScroll{overflow:auto;scrollbar-width:thin;scrollbar-color:transparent transparent}
.autoScroll:hover,.autoScroll:focus-within,.autoScroll:active{scrollbar-color:color-mix(in srgb,var(--mut) 55%,transparent) transparent}
.autoScroll::-webkit-scrollbar{width:7px;height:7px}
.autoScroll::-webkit-scrollbar-thumb{background:transparent;border-radius:8px}
.autoScroll:hover::-webkit-scrollbar-thumb,.autoScroll:focus-within::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--mut) 55%,transparent)}
/* فوتر سایت در هر دو تم تیره و خوانا می‌ماند: زمینهٔ توپر، متن روشن، کارت‌های کم‌رنگ‌تر از متن */
.rapport-public footer{background:#0e1b29!important;color:#f1f6f7!important;border-top:0!important}
.rapport-public footer .foot-grid>div{background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.16)!important;backdrop-filter:none!important}
.rapport-public footer .foot-grid h4,.rapport-public footer .brand{color:#fff!important}
.rapport-public footer .foot-grid a,.rapport-public footer .foot-grid p{color:#dbe5e8!important;font-size:15px;font-weight:500}
.rapport-public footer .foot-grid a:hover{color:#fff!important;text-decoration:underline;text-underline-offset:4px}
.rapport-public footer .foot-bot,.rapport-public footer .foot-bot span{color:#c9d5d9!important;border-color:rgba(255,255,255,.2)!important}
:root[data-theme="light"] .rapport-public footer .brand img{content:url(hamtavar-logo-dark.png)}
@media(prefers-color-scheme:light){:root:not([data-theme="dark"]):not([data-theme="light"]) .rapport-public footer .brand img{content:url(hamtavar-logo-dark.png)}}
