:root{--cx-main:#165d3d;--cx-dark:#0c3320;--cx-tint:#e8f1ec;--cx-tint2:#d3e5db;--cx-bg:#f4f6f8;--cx-paper:#fff;--cx-text:#23303d;--cx-muted:#526174;--cx-border:#d9e0e5;--cx-header-h:72px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cx-bg);font-family:Vazirmatn,Tahoma,system-ui,sans-serif;color:var(--cx-text);direction:rtl;line-height:1.8}a{color:var(--cx-main);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid #d49d11;outline-offset:3px}h1{font-size:1.6rem;margin:0 0 16px}h2{font-size:1.12rem;margin:0 0 10px}p{margin:8px 0 16px}.cx-muted,.cx-subtitle{color:var(--cx-muted);font-size:.93rem}.cx-skip{position:absolute;top:-100px;right:12px;background:#fff;padding:8px;z-index:9999}.cx-skip:focus{top:12px}.cx-header{height:var(--cx-header-h);background:var(--cx-paper);border-bottom:1px solid var(--cx-border);position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:0 24px;gap:16px}.cx-brand,.cx-header-user{display:flex;gap:14px;align-items:center}.cx-header-user{font-size:.92rem;white-space:nowrap}.cx-logo{width:42px;height:42px;object-fit:contain}.cx-shell{display:flex;min-height:calc(100vh - var(--cx-header-h))}.cx-sidebar{width:256px;flex:0 0 256px;height:calc(100vh - var(--cx-header-h));position:sticky;top:var(--cx-header-h);overflow-y:auto;border-left:1px solid var(--cx-border);background:#fff;padding:24px 14px}.cx-nav-list{list-style:none;padding:0;margin:0}.cx-nav-link{display:block;padding:11px 16px;color:var(--cx-text);border-radius:10px;text-decoration:none;margin:3px 0}.cx-nav-link:hover{background:var(--cx-tint)}.cx-nav-link.cx-active{background:var(--cx-tint2);color:var(--cx-dark);font-weight:700}.cx-content{min-width:0;flex:1;padding:28px;max-width:1400px}.cx-loading{padding:10px 14px;background:var(--cx-tint);border-radius:8px;margin-bottom:12px}.cx-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr));gap:16px}.cx-card{background:var(--cx-paper);border:1px solid var(--cx-border);border-radius:12px;padding:22px;margin:0 0 16px;min-width:0}.cx-widget{margin:0}.cx-soon{border-style:dashed;color:var(--cx-muted)}.cx-counts{display:flex;gap:30px;flex-wrap:wrap}.cx-list{padding:0 20px 0 0}.cx-list li{margin-bottom:6px}.cx-notice{padding:12px 16px;border:1px solid var(--cx-border);border-radius:10px;margin:0 0 16px}.cx-error{color:#8f2432;border-color:#e4b3b8}.cx-warning{background:#fff7e6;border-color:#ead097}.cx-success{color:var(--cx-dark);border-color:var(--cx-tint2);background:var(--cx-tint)}.cx-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:9px;padding:8px 18px;cursor:pointer;font-family:inherit;font-size:.95rem;text-decoration:none;border:1px solid var(--cx-main);gap:8px}.cx-btn-primary{color:#fff;background:var(--cx-main)}.cx-btn-outline{color:var(--cx-main);background:#fff}.cx-btn:disabled{opacity:.55;cursor:not-allowed}.cx-actions{display:flex;flex-wrap:wrap;gap:12px;margin:12px 0}.cx-details{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 24px}.cx-details dt{color:var(--cx-muted)}label{display:block;margin:14px 0 7px;font-weight:600}input:not([type=hidden]):not([type=checkbox]),select,textarea{display:block;max-width:100%;width:100%;border:1px solid #b6c3cc;border-radius:9px;background:#fff;color:var(--cx-text);padding:9px 10px;font:inherit}input[type=checkbox]{accent-color:var(--cx-main)}input:focus,textarea:focus,select:focus{border-color:var(--cx-main)}fieldset{border:1px solid var(--cx-border);border-radius:9px;padding:10px 16px;margin:16px 0}fieldset label{font-size:.86rem}fieldset select{max-width:200px}.cx-check{display:flex;align-items:center;gap:8px;font-weight:400}.cx-login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;background-color:var(--cx-dark);background-image:linear-gradient(#082e2080,#082e2060),url('../images/login-pitch.webp');background-size:cover;background-position:center}.cx-login-page .cx-footer{color:#e8f1ec}.cx-login-page .cx-footer a{color:#fff}.cx-login-club{display:flex;align-items:center;gap:10px;margin:0 0 6px;color:var(--cx-dark)}.cx-login{width:min(460px,100%);padding:32px}.cx-login .cx-btn{width:100%;margin-top:20px}.cx-menu-toggle{display:none;background:transparent;border:1px solid var(--cx-border);border-radius:8px;font-size:24px;min-width:44px;height:44px;cursor:pointer}
@media(max-width:760px){:root{--cx-header-h:62px}.cx-header{padding:0 12px}.cx-brand{font-size:.91rem;gap:8px}.cx-header-user span{display:none}.cx-menu-toggle{display:inline-grid;place-items:center}.cx-sidebar{position:fixed;z-index:15;top:var(--cx-header-h);right:0;width:min(290px,85vw);height:calc(100dvh - var(--cx-header-h));transform:translateX(105%);transition:transform .18s ease;box-shadow:-8px 6px 25px #182e3518}.cx-sidebar.cx-open{transform:translateX(0)}.cx-content{width:100%;padding:16px;min-width:0}.cx-card{padding:16px}.cx-counts{gap:8px}.cx-details{grid-template-columns:minmax(90px,auto) minmax(0,1fr);gap:4px 12px;font-size:.93rem}}
.cx-calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid var(--cx-border);border-radius:10px;padding:10px 14px;margin-bottom:12px}.cx-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;background:#d9e0e5;border:1px solid var(--cx-border);border-radius:10px;overflow:hidden}.cx-day-label{text-align:center;background:var(--cx-tint);padding:8px 2px;font-size:.82rem;font-weight:700}.cx-calendar-day,.cx-calendar-blank{background:white;min-height:103px;padding:7px;min-width:0;overflow-wrap:anywhere}.cx-calendar-day.cx-today{background:var(--cx-tint)}.cx-calendar-event{font-size:.77rem;line-height:1.5;background:var(--cx-tint);border-radius:4px;padding:3px;margin:4px 0}@media(max-width:760px){.cx-calendar-day,.cx-calendar-blank{min-height:74px;padding:4px}.cx-day-label{font-size:.69rem}.cx-calendar-event{font-size:.65rem}}

.cx-logout-form{margin:0}.cx-logout-button{border:0;background:transparent;color:var(--cx-main);font:inherit;cursor:pointer;padding:5px 8px;text-decoration:none}

.cx-footer{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:16px 24px;color:var(--cx-muted);font-size:.85rem}.cx-footer a{color:var(--cx-main)}
.cx-day-link{display:flex;justify-content:space-between;align-items:flex-start;color:inherit;text-decoration:none;min-height:88px}.cx-day-count{display:inline-grid;place-items:center;min-width:24px;height:24px;border-radius:12px;background:var(--cx-main);color:#fff;font-size:.78rem;padding:0 6px}.cx-has-events{background:var(--cx-tint)}.cx-calendar-day.cx-selected{outline:3px solid var(--cx-main);outline-offset:-3px}
.cx-field-error{color:#8f2432;font-size:.88rem;margin:4px 0 0}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#8f2432}
.cx-footer-sep{opacity:.6}
@media(max-width:760px){.cx-day-link{min-height:58px;flex-direction:column;gap:2px}.cx-day-count{min-width:20px;height:20px;font-size:.68rem}}
.cx-day-panel{scroll-margin-top:calc(var(--cx-header-h) + 16px)}

/* گروه‌های منو در پنل و کشوی موبایل، با همان ساختار دسترس‌پذیر. */
[hidden]{display:none!important}
.cx-nav-list li{position:relative;list-style:none}
.cx-nav-children{list-style:none;margin:0;padding:0;padding-inline-start:16px}
.cx-nav-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:44px;padding:10px 14px;border:0;border-radius:8px;background:transparent;color:inherit;font:inherit;text-align:start;cursor:pointer}
.cx-nav-link+.cx-nav-toggle{position:absolute;inset-inline-end:0;top:0;width:44px;padding:10px}
.cx-nav-list li:has(>.cx-nav-link+.cx-nav-toggle)>.cx-nav-link{padding-inline-end:48px}
.cx-nav-toggle:hover,.cx-nav-toggle:focus-visible{background:var(--cx-tint);outline:2px solid var(--cx-main);outline-offset:-2px}
.cx-active-parent>.cx-nav-link,.cx-nav-toggle.cx-active-parent{color:var(--cx-main);font-weight:700}
.cx-nav-toggle[aria-expanded=true]>.cx-nav-arrow{transform:rotate(180deg)}
.cx-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* سطح سوم در دسکتاپ کنار گزینه باز می‌شود؛ fixed از برش اسکرول سایدبار جلوگیری می‌کند. */
@media(min-width:761px) and (hover:hover){
 .cx-nav-children .cx-nav-children{position:fixed;z-index:60;padding:8px;margin:0;overflow-y:auto;background:#fff;border:1px solid var(--cx-border);border-radius:10px;box-shadow:0 8px 24px #182e3526}
 .cx-nav-toggle .cx-nav-arrow{transform:rotate(90deg)}
 .cx-nav-toggle[aria-expanded=true]>.cx-nav-arrow{transform:rotate(90deg)}
}

/* rc3: منوی راست ثابت و اسکرول محتوای سمت چپ، بدون اسکرول بدنه. */
body.cx-dashboard-page{height:100vh;height:100dvh;min-height:0;overflow:hidden;display:flex;flex-direction:column}
.cx-dashboard-page>.cx-header,.cx-dashboard-page>.cx-footer{flex-shrink:0}
.cx-dashboard-page>.cx-shell{flex:1;min-height:0;overflow:hidden}
.cx-dashboard-page .cx-content{position:relative;height:100%;max-width:none;overflow-y:auto;overflow-x:hidden;direction:rtl;scrollbar-gutter:stable;overflow-anchor:none;scroll-behavior:auto;overscroll-behavior-y:contain}
.cx-dashboard-page .cx-sidebar{scrollbar-width:none}.cx-dashboard-page .cx-sidebar::-webkit-scrollbar{display:none}
.cx-dashboard-page .cx-loading{position:fixed;top:calc(var(--cx-header-h) + 12px);left:50%;transform:translateX(-50%);z-index:80;box-shadow:0 4px 18px #182e3526;margin:0;pointer-events:none}
.cx-dashboard-page .cx-day-panel{scroll-margin-top:16px}
@media(min-width:761px){.cx-dashboard-page .cx-sidebar{position:relative;top:0;height:100%;flex-shrink:0}}
/* rc4 — تقویم رویدادها و کارت‌های درخواست */
.cx-dashboard-page a,.cx-dashboard-page a:hover,.cx-dashboard-page a:focus,.cx-dashboard-page a:visited{text-decoration:none}
.cx-calendar-controls>.cx-cal-link{display:grid;place-items:center;inline-size:42px;block-size:40px;border:1px solid var(--cx-border,#dce3e8);border-radius:9px;background:#fff;font-size:1.8rem;line-height:1;color:var(--cx-main,#165d3d)}.cx-calendar-controls>.cx-cal-link:hover{background:var(--cx-tint,#edf5ef)}
.cx-calendar-day{position:relative;text-align:center}.cx-calendar-day>strong{display:block;text-align:center}.cx-day-link{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:8px;text-align:center}.cx-day-link>strong{display:block;inline-size:100%;text-align:center}.cx-day-count{font-size:.75rem}
.cx-event-dialog{inline-size:min(720px,calc(100vw - 32px));max-block-size:calc(100dvh - 40px);overflow:auto;box-sizing:border-box;border:1px solid #cbd5df;border-radius:16px;padding:0;background:#fff;color:var(--cx-text,#19303d);font:inherit;box-shadow:0 24px 80px #142c3940}.cx-event-dialog::backdrop{background:#15293380}.cx-event-dialog-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;border-block-end:1px solid var(--cx-border,#dce3e8);background:#f0f5f2}.cx-event-dialog-header h2{font:inherit;font-size:1.05rem;font-weight:700;margin:0}.cx-event-dialog-close{display:grid;place-items:center;inline-size:38px;block-size:38px;flex-shrink:0;font:inherit;font-size:1.6rem;border:1px solid #cbd5df;border-radius:8px;background:#fff;color:inherit;cursor:pointer}.cx-event-dialog-body{padding:20px}.cx-event-dialog-body .cx-card{border:0;padding:0;margin:0}.cx-event-dialog-body .cx-list{list-style:none;padding:0;margin:0}.cx-event-dialog-body li{padding:13px 15px;border:1px solid #e1e7eb;border-radius:9px;background:#fafcfb;margin-block-end:10px}
.cx-page-heading{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-block-end:22px}.cx-page-heading h1{margin:0}.cx-request-total{display:inline-flex;align-items:center;justify-content:center;min-block-size:32px;padding:4px 13px;border-radius:20px;background:var(--cx-tint,#edf5ef);border:1px solid var(--cx-tint2,#d9e9df);color:var(--cx-dark,#164b33);font-size:.9rem;font-weight:700}
.cx-request-review-card,.cx-request-create-card{padding:0;overflow:hidden}.cx-request-card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 22px;background:#f3f7f5;border-block-end:1px solid var(--cx-border,#dce3e8)}.cx-request-card-heading h2{margin:0;font-size:1rem}.cx-request-status{font-size:.8rem;padding:3px 10px;border-radius:14px;background:#fff5db;color:#80601d;white-space:nowrap}.cx-request-card-body{padding:22px}
.cx-request-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 22px;margin:0 0 20px}.cx-request-details>div{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;padding:12px 14px;border:1px solid #e4e9ed;border-radius:9px;background:#fafcfb}.cx-request-details dt{font-weight:700;color:#627580;font-size:.87rem}.cx-request-details dd{margin:0;color:var(--cx-dark,#193b2b);font-weight:600;overflow-wrap:anywhere;min-inline-size:0}
.cx-request-review-fields{display:grid;grid-template-columns:minmax(200px,.8fr) minmax(240px,1.2fr);gap:18px;align-items:start}.cx-request-review-fields label{margin:0;font-size:.9rem}.cx-request-review-fields select,.cx-request-review-fields textarea{margin-block-start:8px;min-block-size:46px;border-color:#ced8df}.cx-request-review-fields textarea{min-block-size:94px;resize:vertical}.cx-request-review-form .cx-actions{justify-content:flex-end;padding-block-start:16px;border-block-start:1px solid #e5ebef;margin-block:20px 8px}.cx-request-review-form button[value=rejected]{color:#a33544;border-color:#dfb8bf;background:#fff}.cx-request-review-form .cx-btn,.cx-request-create-form .cx-btn{font:inherit;font-size:.9rem;min-block-size:44px}.cx-request-review-form .cx-muted{font-size:.82rem;line-height:1.9;margin:10px 0 0}.cx-request-create-form{max-inline-size:760px}
@media(max-width:760px){.cx-request-details,.cx-request-review-fields{grid-template-columns:minmax(0,1fr)}.cx-request-card-body{padding:16px}.cx-request-card-heading{padding:14px 16px;flex-wrap:wrap}.cx-request-review-form .cx-actions>.cx-btn{flex:1}.cx-page-heading{gap:8px;margin-block-end:16px}.cx-page-heading h1{font-size:1.25rem}.cx-event-dialog-header,.cx-event-dialog-body{padding:16px}}

/* rc5 — هدر کوتاه، خانهٔ ساده و ورود با چمن عکس‌مانند محلی */
:root{--cx-header-h:56px}
.cx-dashboard-page .cx-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr);gap:12px;padding-inline:20px}
.cx-dashboard-page .cx-menu-toggle{grid-column:1;justify-self:start;grid-row:1}.cx-dashboard-page .cx-brand{grid-column:2;grid-row:1;justify-content:center;text-align:center;min-inline-size:0;max-inline-size:360px}.cx-brand strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.cx-dashboard-page .cx-brand .cx-logo{inline-size:auto;max-inline-size:150px;block-size:38px;object-fit:contain}
.cx-dashboard-page .cx-header-user{grid-column:3;grid-row:1;justify-self:end;max-inline-size:100%;min-inline-size:0;gap:10px}.cx-header-greeting{display:block!important;font-size:.82rem;min-inline-size:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cx-dashboard-page .cx-logout-button{display:inline-flex;align-items:center;justify-content:center;min-block-size:34px;padding:5px 14px;border:1px solid var(--cx-main,#165d3d);border-radius:8px;background:var(--cx-tint,#e8f1ec);color:var(--cx-main,#165d3d);text-decoration:none;font:inherit;font-size:.8rem;white-space:nowrap}.cx-logout-form{flex-shrink:0}.cx-logout-button:hover{background:var(--cx-tint2,#d3e5db)}
.cx-footer{padding:7px 16px;gap:6px;font-size:.76rem;line-height:1.5;min-block-size:30px}
.cx-login-page a,.cx-login-page a:hover,.cx-login-page a:focus,.cx-login-page a:visited{text-decoration:none!important}
.cx-login-club{display:flex;justify-content:center;align-items:center;text-align:center;margin-block:0 20px;min-block-size:48px}.cx-login-club strong{font-size:1.05rem;line-height:1.8}.cx-login-club .cx-logo{inline-size:auto;block-size:auto;max-inline-size:190px;max-block-size:90px;object-fit:contain}.cx-login{box-shadow:0 20px 70px #05201535;border-radius:16px;border-color:#d8e2dd}.cx-login h1{text-align:center;font-size:1.4rem}.cx-login>p:not(.cx-login-club):not(.cx-error){text-align:center;color:var(--cx-muted,#526174);font-size:.88rem}
.cx-home-grid{gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));align-items:stretch}.cx-home-grid .cx-widget{padding:0;border-radius:16px;border:1px solid #dce5e0;box-shadow:0 5px 20px #183d2910;overflow:hidden;background:#fff;display:flex;flex-direction:column;min-block-size:200px}.cx-home-grid .cx-widget>h2{display:flex;align-items:center;gap:10px;padding:17px 20px;margin:0;border-block-end:1px solid #e7ede9;background:linear-gradient(120deg,#fff,#f0f6f2);font-size:.98rem}.cx-home-grid .cx-widget>h2::before{content:'';inline-size:6px;block-size:20px;background:var(--cx-main,#165d3d);border-radius:4px;flex-shrink:0}.cx-home-grid .cx-widget-body{padding:20px;display:flex;flex-direction:column;gap:16px;flex:1}.cx-home-grid .cx-widget-body>p{margin:0;font-size:.92rem;line-height:1.9}.cx-home-grid .cx-widget-body>.cx-btn{align-self:flex-start;margin-block-start:auto;font:inherit;font-size:.85rem;min-block-size:38px}.cx-home-grid .cx-counts{gap:12px;inline-size:100%}.cx-home-grid .cx-counts p{flex:1;min-inline-size:0;display:flex;flex-direction:column;gap:7px;padding:14px;margin:0;border-radius:11px;background:#f2f7f4;color:#64766c;font-size:.84rem}.cx-home-grid .cx-counts strong{font-size:1.9rem;line-height:1.25;color:var(--cx-dark,#0c3320);font-weight:700}
@media(max-width:760px){:root{--cx-header-h:52px}.cx-dashboard-page .cx-header{padding-inline:10px;gap:6px}.cx-dashboard-page .cx-brand{max-inline-size:34vw}.cx-brand strong{font-size:.74rem}.cx-dashboard-page .cx-brand .cx-logo{max-inline-size:100px;block-size:34px}.cx-dashboard-page .cx-header-user{gap:6px}.cx-dashboard-page .cx-header-greeting{font-size:.7rem}.cx-dashboard-page .cx-logout-button{padding-inline:9px;min-block-size:32px}.cx-menu-toggle{min-width:34px;height:34px;font-size:21px}.cx-home-grid{gap:14px}.cx-home-grid .cx-widget{min-block-size:170px}.cx-footer{padding:6px 10px;font-size:.72rem}}
