@import url('fonts.css');
:root{--brand:#03071c;--brand-2:#111936;--accent:#4361ee;--bg:#f3f5fa;--surface:#fff;--line:#dfe4ee;--text:#03071c;--muted:#697386;--success:#078758;--danger:#c53535;--warning:#b7791f;--shadow:0 14px 35px rgba(3,7,28,.07);--radius:18px;--sidebar:278px;--font-size:15px}*{box-sizing:border-box}html{font-size:var(--font-size)}body{margin:0;background:var(--bg);color:var(--text);font-family:Vazirmatn,Tahoma,Arial,sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{position:fixed;inset-block:0;inset-inline-start:0;width:var(--sidebar);background:var(--brand);color:#fff;display:flex;flex-direction:column;padding:20px 16px;z-index:40;transition:.25s;overflow:auto}.brand-box{padding:6px 6px 22px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:15px}.brand-box a{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#fff;color:var(--brand);font-weight:900;font-size:22px;box-shadow:0 10px 25px rgba(0,0,0,.2)}.brand-box img{width:46px;height:46px;object-fit:contain;background:#fff;border-radius:14px;padding:5px}.brand-box strong,.brand-box small{display:block}.brand-box strong{font-size:1.05rem}.brand-box small{opacity:.65;font-size:.72rem;letter-spacing:.12em}.sidebar-nav{display:grid;gap:5px}.sidebar-nav>a,.nav-group>summary,.sidebar-bottom a,.sidebar-bottom button{display:flex;align-items:center;gap:12px;min-height:45px;padding:9px 12px;border-radius:12px;border:0;background:transparent;color:rgba(255,255,255,.78);width:100%;text-align:start}.sidebar-nav>a:hover,.sidebar-nav>a.is-active,.nav-group>summary:hover,.sidebar-bottom a:hover,.sidebar-bottom button:hover{background:rgba(255,255,255,.12);color:#fff}.sidebar-nav>a.is-active{background:#fff;color:var(--brand);font-weight:800}.nav-icon{width:24px;height:24px;display:grid;place-items:center;font-size:18px;flex:none}.nav-label{flex:1}.nav-group{margin:4px 0}.nav-group>summary{list-style:none}.nav-group>summary::-webkit-details-marker{display:none}.nav-group>div{margin:4px 28px 8px 0;border-inline-start:1px solid rgba(255,255,255,.2);padding-inline-start:8px}.nav-group>div a{display:block;padding:7px 9px;border-radius:8px;color:rgba(255,255,255,.7);font-size:.88rem}.nav-group>div a:hover{color:#fff;background:rgba(255,255,255,.08)}.sidebar-bottom{margin-top:auto;padding-top:15px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-bottom form{margin:0}.workspace{min-height:100vh;margin-inline-start:var(--sidebar);padding:18px;display:flex;flex-direction:column;gap:16px;transition:.25s}.topbar{position:sticky;top:12px;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:var(--radius);padding:13px 16px;box-shadow:var(--shadow)}.topbar-start,.topbar-actions{display:flex;align-items:center;gap:10px}.topbar h1{font-size:1.08rem;margin:0}.topbar small{color:var(--muted)}.icon-button,.home-link{min-width:42px;height:42px;border:1px solid var(--line);background:#fff;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:var(--brand);gap:5px}.sidebar-toggle{background:var(--brand);color:#fff;border-color:var(--brand)}.dropdown{position:relative}.dropdown>summary{list-style:none}.dropdown>summary::-webkit-details-marker{display:none}.dropdown-menu{position:absolute;inset-block-start:calc(100% + 10px);inset-inline-end:0;width:250px;background:#fff;border:1px solid var(--line);border-radius:15px;padding:8px;box-shadow:0 20px 50px rgba(3,7,28,.14);z-index:80}.dropdown-menu a,.dropdown-menu button{display:flex;width:100%;justify-content:space-between;text-align:start;padding:9px 10px;border:0;background:transparent;border-radius:9px}.dropdown-menu a:hover,.dropdown-menu button:hover{background:#f2f4f8}.profile-button{display:flex;align-items:center;gap:9px;border:1px solid var(--line);background:#fff;border-radius:13px;padding:5px 8px;list-style:none}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--brand);color:#fff;font-weight:800;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.profile-button strong,.profile-button small{display:block;line-height:1.3}.profile-button strong{font-size:.85rem}.profile-button small{font-size:.7rem}.notification-dropdown summary{position:relative}.notification-dropdown summary b{position:absolute;top:-6px;inset-inline-end:-6px;background:var(--danger);color:#fff;border-radius:99px;padding:1px 5px;font-size:.65rem}.notification-menu{width:340px}.notification-menu header{display:flex;justify-content:space-between;align-items:center;padding:7px}.notification-menu>a{display:block!important;border-top:1px solid #edf0f5}.notification-menu>a strong,.notification-menu>a small{display:block}.notification-menu>a small{color:var(--muted)}.content-area{flex:1}.app-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px;color:var(--muted);font-size:.78rem}.app-footer a{color:var(--brand);font-weight:800}.impersonation-bar{display:flex;justify-content:center;align-items:center;gap:15px;padding:10px;background:#fff4d8;border:1px solid #edc56b;border-radius:12px}.impersonation-bar form{margin:0}.impersonation-bar button{border:0;background:var(--brand);color:#fff;border-radius:8px;padding:5px 10px}
.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.page-head h2{margin:0;font-size:1.35rem}.page-head p{margin:3px 0 0;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.primary-button,.secondary-button,.danger-button,.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:11px;padding:10px 15px;border:1px solid transparent;font-weight:800}.primary-button{background:var(--brand);color:#fff}.secondary-button{background:var(--accent);color:#fff}.ghost-button{background:#fff;color:var(--brand);border-color:var(--line)}.danger-button{background:#fff0f0;color:var(--danger);border-color:#f1caca}.wide{width:100%}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.card h3{margin-top:0}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:16px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:17px;display:flex;align-items:center;gap:13px;box-shadow:var(--shadow);min-height:104px}.stat-icon{width:48px;height:48px;border-radius:15px;background:#edf0f8;color:var(--brand);display:grid;place-items:center;font-size:22px;flex:none}.stat-copy{flex:1}.stat-copy small,.stat-copy strong{display:block}.stat-copy small{color:var(--muted);font-size:.78rem}.stat-copy strong{font-size:1.45rem}.stat-copy em{font-style:normal;color:var(--success);font-size:.75rem}.table-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.table-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--line)}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:760px}.data-table th,.data-table td{padding:12px 14px;border-bottom:1px solid #edf0f5;text-align:start;vertical-align:middle}.data-table th{font-size:.76rem;color:var(--muted);background:#f8f9fc;white-space:nowrap}.data-table td{font-size:.86rem}.data-table tr:hover td{background:#fafbfe}.badge{display:inline-flex;align-items:center;padding:4px 9px;border-radius:99px;font-size:.72rem;font-weight:800;background:#eef1f6;color:#566074}.badge.success{background:#e9f9f1;color:#087b4d}.badge.warning{background:#fff5df;color:#9a650d}.badge.danger{background:#fff0f0;color:#b62c2c}.badge.info{background:#eaf2ff;color:#2d5ba8}.pagination{display:flex;justify-content:center;gap:6px;padding:13px}.pagination a,.pagination span{min-width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--line);background:#fff;border-radius:9px}.pagination .active{background:var(--brand);color:#fff}.filter-bar{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.filter-bar label{margin:0}.field,label{display:grid;gap:6px;font-weight:700;font-size:.84rem}input,select,textarea{width:100%;border:1px solid #d6dce8;background:#fff;border-radius:11px;padding:10px 12px;color:var(--text);outline:none}input:focus,select:focus,textarea:focus{border-color:#7f8db1;box-shadow:0 0 0 3px rgba(67,97,238,.1)}textarea{min-height:100px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid .full{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}.alert{border-radius:12px;padding:11px 14px;margin-bottom:14px}.alert.success{background:#e9f9f1;color:#087b4d;border:1px solid #bce8d2}.alert.danger{background:#fff0f0;color:#a72e2e;border:1px solid #f0c9c9}.empty-state{padding:35px;text-align:center;color:var(--muted)}.empty-state strong{display:block;color:var(--text);font-size:1.05rem}.section-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:15px}.section-tabs a{padding:8px 12px;border-radius:10px;border:1px solid var(--line);background:#fff}.section-tabs a.is-active{background:var(--brand);color:#fff}.progress{height:8px;border-radius:99px;background:#edf0f5;overflow:hidden}.progress span{display:block;height:100%;background:var(--accent)}.list{display:grid;gap:9px}.list-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border:1px solid var(--line);border-radius:12px}.list-item strong,.list-item small{display:block}.list-item small{color:var(--muted)}.money-positive{color:var(--success)}.money-negative{color:var(--danger)}
.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.chart-card{min-height:340px}.chart-bars{height:235px;display:flex;align-items:flex-end;gap:12px;padding:15px 8px 28px;border-bottom:1px solid var(--line)}.chart-column{flex:1;min-width:0;display:flex;align-items:flex-end;justify-content:center;gap:4px;height:100%;position:relative}.chart-column i{width:30%;min-width:8px;border-radius:8px 8px 0 0;background:var(--brand)}.chart-column i.expense{background:#9aa4b8}.chart-column span{position:absolute;bottom:-27px;font-size:.68rem;color:var(--muted);white-space:nowrap}.note-card{background:linear-gradient(145deg,#fff7ed,#fff);border-color:#f0d7b8;min-height:340px;display:flex;flex-direction:column}.note-paper{flex:1;border-radius:20px;background:#fffaf4;border:1px solid rgba(3,7,28,.07);padding:25px;display:grid;place-items:center;text-align:center;position:relative}.note-paper:before,.note-paper:after{content:'✦';position:absolute;color:#d9a37d;font-size:22px}.note-paper:before{top:12px;inset-inline-start:15px}.note-paper:after{bottom:12px;inset-inline-end:15px}.note-paper p{font-size:1.05rem;line-height:2;margin:0}.note-foot{font-size:.72rem;color:var(--muted);padding-top:10px}.document-items{display:grid;gap:10px}.document-row{display:grid;grid-template-columns:1.2fr 2fr .6fr .7fr .8fr .6fr .6fr auto;gap:8px;align-items:end;padding:10px;border:1px solid var(--line);border-radius:12px}.document-row button{height:40px}.summary-box{margin-inline-start:auto;max-width:390px;display:grid;gap:7px}.summary-line{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px dashed var(--line)}.summary-line.total{font-size:1.1rem;font-weight:900}.print-head{display:flex;justify-content:space-between;gap:20px;padding-bottom:22px;border-bottom:3px solid var(--brand)}.print-head img{width:75px;height:75px;object-fit:contain}.print-title{margin:25px 0;display:flex;justify-content:space-between}.print-table{width:100%;border-collapse:collapse}.print-table th,.print-table td{border:1px solid #d8dde7;padding:10px;text-align:start}.print-table th{background:#f3f5f9}.signature-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:60px}.signature-grid div{border-top:1px solid #777;padding-top:8px;text-align:center}
.auth-body{margin:0;background:#edf0f7;min-height:100vh}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(380px,45%) 1fr}.auth-panel{background:#fff;padding:40px clamp(25px,5vw,80px);display:flex;flex-direction:column;justify-content:center}.auth-brand{display:flex;gap:12px;align-items:center;margin-bottom:45px}.auth-brand strong,.auth-brand small{display:block}.auth-brand small{color:var(--muted)}.auth-copy span{display:inline-block;color:var(--accent);font-weight:800;font-size:.78rem;margin-bottom:8px}.auth-copy h1{font-size:2.2rem;line-height:1.4;margin:0}.auth-copy h1 em{font-style:normal;color:var(--accent)}.auth-copy p{color:var(--muted);margin-bottom:24px}.login-card{max-width:520px}.login-card header h2{margin-bottom:3px}.login-card header p{color:var(--muted);margin-top:0}.login-card label{margin:12px 0}.form-between{display:flex;justify-content:flex-end;margin:8px 0 13px}.form-between a,.back-link{color:var(--accent);font-weight:700;font-size:.83rem}.auth-panel footer{margin-top:40px;color:var(--muted);font-size:.75rem}.auth-visual{background:linear-gradient(145deg,#03071c,#101a40);display:grid;place-items:center;padding:7vw}.visual-grid{width:min(760px,100%);display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.visual-grid article{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);border-radius:20px;padding:20px;color:#fff;backdrop-filter:blur(10px)}.visual-grid article>span{font-size:25px}.visual-grid strong,.visual-grid small{display:block}.visual-grid small{opacity:.65}.visual-main{grid-column:1/-1;min-height:280px;display:flex;align-items:flex-end!important;justify-content:space-between;gap:20px;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.04))!important}.visual-chart{height:190px;display:flex;align-items:flex-end;gap:12px;flex:1}.visual-chart i{flex:1;background:linear-gradient(#7184ff,#fff);border-radius:12px 12px 0 0}.visual-main>div:last-child{max-width:230px}.visual-main>div:last-child strong{font-size:1.4rem}
.modal{position:fixed;inset:0;background:rgba(3,7,28,.55);display:none;place-items:center;padding:20px;z-index:100}.modal.is-open{display:grid}.modal-card{width:min(780px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;padding:22px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.modal-close{border:0;background:#eef1f6;width:36px;height:36px;border-radius:10px}.details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.details-grid>div{border:1px solid var(--line);border-radius:12px;padding:11px}.details-grid small,.details-grid strong{display:block}.details-grid small{color:var(--muted)}
body.sidebar-collapsed .sidebar{width:82px}body.sidebar-collapsed .workspace{margin-inline-start:82px}body.sidebar-collapsed .brand-box span:not(.brand-mark),body.sidebar-collapsed .nav-label,body.sidebar-collapsed .nav-group>summary>span:last-child,body.sidebar-collapsed .nav-group>div,body.sidebar-collapsed .sidebar-bottom span:last-child{display:none}body.sidebar-collapsed .sidebar-nav>a,body.sidebar-collapsed .nav-group>summary,body.sidebar-collapsed .sidebar-bottom a,body.sidebar-collapsed .sidebar-bottom button{justify-content:center}.sidebar-backdrop{display:none}
@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}.grid-4{grid-template-columns:repeat(2,1fr)}.document-row{grid-template-columns:repeat(4,1fr)}.document-row label:nth-child(2){grid-column:span 2}}
@media(max-width:900px){.sidebar{transform:translateX(calc(-1 * var(--sign,1) * 105%));box-shadow:0 20px 60px rgba(0,0,0,.25)}html[dir=rtl] .sidebar{--sign:-1}.sidebar.is-open{transform:translateX(0)}.workspace,.sidebar-collapsed .workspace{margin-inline-start:0;padding:10px}.sidebar-backdrop.is-open{display:block;position:fixed;inset:0;background:rgba(3,7,28,.45);z-index:35}.topbar{top:6px}.dashboard-grid,.grid-3{grid-template-columns:1fr}.auth-shell{grid-template-columns:1fr}.auth-visual{display:none}.auth-panel{min-height:100vh}.profile-button>span:nth-child(2){display:none}}
@media(max-width:650px){.stats-grid,.grid-2,.grid-4,.form-grid,.details-grid{grid-template-columns:1fr}.topbar h1{font-size:.9rem}.topbar-start>div small{display:none}.home-link{display:none}.notification-menu{width:min(330px,calc(100vw - 30px))}.page-head{align-items:flex-start;flex-direction:column}.actions{width:100%}.actions .primary-button,.actions .ghost-button{flex:1}.table-toolbar{align-items:stretch;flex-direction:column}.filter-bar>*{flex:1 1 100%}.document-row{grid-template-columns:1fr 1fr}.document-row label:nth-child(2){grid-column:1/-1}.app-footer{flex-direction:column;text-align:center}.auth-panel{padding:25px 18px}.auth-copy h1{font-size:1.7rem}}
@media print{.sidebar,.topbar,.app-footer,.no-print{display:none!important}.workspace{margin:0!important;padding:0}.content-area{padding:0}.card,.table-card{box-shadow:none}}
/* Frooshat Services 1.0.0 standalone navigation refinements */
.nav-section{display:grid;gap:5px;margin-bottom:10px}.nav-section-title{display:block;padding:7px 12px 3px;color:rgba(255,255,255,.44);font-size:.67rem;font-weight:800;letter-spacing:.04em}.nav-section>a{display:flex;align-items:center;gap:12px;min-height:45px;padding:9px 12px;border-radius:12px;color:rgba(255,255,255,.78)}.nav-section>a:hover{background:rgba(255,255,255,.12);color:#fff}.nav-section>a.is-active{background:#fff;color:var(--brand);font-weight:800}.topbar-title{min-width:0}.topbar-title h1,.topbar-title small{display:block}.subscription-mini{margin:0 0 10px;padding:12px;border:1px solid rgba(255,255,255,.13);border-radius:14px;background:rgba(255,255,255,.08)}.subscription-mini small,.subscription-mini strong,.subscription-mini span{display:block}.subscription-mini small,.subscription-mini span{font-size:.7rem;color:rgba(255,255,255,.62)}.subscription-mini strong{font-size:.88rem;color:#fff;margin:2px 0}.profile-dropdown .dropdown-menu,.notification-dropdown .dropdown-menu{max-width:calc(100vw - 28px)}
html[dir=ltr] .stat-card{flex-direction:row-reverse}.stat-card .stat-copy{text-align:start}
body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .nav-section-title,body.sidebar-collapsed .subscription-mini{display:none}body.sidebar-collapsed .nav-section>a{justify-content:center}body.sidebar-collapsed .nav-section{margin-bottom:4px}
@media(max-width:900px){body.sidebar-collapsed .sidebar{width:var(--sidebar)}body.sidebar-collapsed .brand-copy,body.sidebar-collapsed .nav-section-title,body.sidebar-collapsed .subscription-mini,body.sidebar-collapsed .nav-label{display:initial}body.sidebar-collapsed .nav-section>a{justify-content:flex-start}}
.auth-logo{width:48px;height:48px;object-fit:contain;border-radius:12px;border:1px solid var(--border);background:#fff}.auth-visual.has-auth-banner{position:relative;background-image:linear-gradient(135deg,rgba(3,7,28,.28),rgba(3,7,28,.08)),var(--auth-banner);background-size:cover;background-position:var(--auth-banner-position,center center);overflow:hidden}.auth-visual.has-auth-banner:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(3,7,28,.35),transparent 60%);pointer-events:none}.auth-visual.has-auth-banner .visual-grid{position:relative;z-index:1;align-self:end}.auth-visual.has-auth-banner .visual-grid article{background:rgba(3,7,28,.62);border-color:rgba(255,255,255,.2)}.soft-separator{border:0;border-top:1px solid var(--border);margin:26px 0}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.section-title h3,.section-title p{margin:0}.section-title p{color:var(--muted);font-size:.82rem}.switch-field{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;min-height:46px}.switch-field input{width:auto!important}
