:root{--bg:#f4f6f8;--bg-elevated:#fff;--ink:#1c2430;--muted:#667085;--brand:#1b4f72;--brand-deep:#163a54;--accent:#1b7a6e;--line:#e3e8ee;--ok:#0f6b56;--warn:#9a6700;--danger:#b42318;--shadow:none}*{box-sizing:border-box}body,html{margin:0;padding:0;min-height:100%;font-family:Vazirmatn,Tahoma,sans-serif;background:var(--bg);color:var(--ink);line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}.app-shell{display:grid;grid-template-columns:300px 1fr;min-height:100vh;transition:grid-template-columns .18s ease}.app-shell.rail-only{grid-template-columns:64px 1fr}.sidebar{display:grid;grid-template-columns:64px minmax(0,1fr);background:linear-gradient(185deg,#0f2a44,#0a1c30 55%,#081624);color:#e8eef5;position:-webkit-sticky;position:sticky;top:0;height:100vh;max-height:100vh;overflow:hidden}.nav-rail{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 0;background:rgba(0,0,0,.22);-webkit-border-start:1px solid hsla(0,0%,100%,.06);border-inline-start:1px solid hsla(0,0%,100%,.06);height:100%;min-height:0;overflow:hidden}.rail-btn{position:relative;width:42px;height:42px;display:grid;place-items:center;border:0;border-radius:13px;background:transparent;color:#9db4c9;cursor:pointer;transition:background .15s ease,color .15s ease}.rail-btn:hover{background:hsla(0,0%,100%,.09);color:#fff}.rail-btn.active{background:rgba(42,157,143,.28);color:#fff;box-shadow:inset 2px 0 0 var(--accent,#2a9d8f)}.rail-btn.rail-brand{margin-bottom:8px;color:#cfe0ee}.rail-btn.rail-foot{margin-top:auto}.rail-tip{position:absolute;inset-inline-start:calc(100% + 8px);top:50%;transform:translateY(-50%);white-space:nowrap;background:#0b1c2c;border:1px solid hsla(0,0%,100%,.12);color:#e8eef5;font-size:.72rem;padding:4px 9px;border-radius:8px;opacity:0;pointer-events:none;transition:opacity .12s ease;z-index:40}.rail-btn:hover .rail-tip{opacity:1}.nav-panel{display:flex;flex-direction:column;gap:12px;padding:16px 12px;min-width:0;min-height:0;height:100%;overflow:hidden}.app-shell.rail-only .nav-panel,.nav-scrim{display:none}.nav-scrim{border:0;padding:0}.hamburger{display:none;width:38px;height:38px;border-radius:11px;border:1px solid var(--line);background:var(--bg-elevated);color:var(--ink);cursor:pointer;place-items:center}.brand strong{font-size:1.35rem}.brand span{color:#8eabc4;font-size:.78rem}.nav{display:flex;flex-direction:column;gap:8px;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:4px;scrollbar-width:thin}.nav-section{display:flex;flex-direction:column;gap:2px}.nav-section+.nav-section{margin-top:4px;padding-top:10px;border-top:1px solid hsla(0,0%,100%,.08)}.nav-section-title{font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#7a95ad;padding:0 10px 4px}.nav-section-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;background:transparent;border:0;border-radius:10px;color:#9bb0c4;font-size:.74rem;font-weight:700;letter-spacing:.03em;padding:6px 10px;cursor:pointer;text-align:right}.nav-section-toggle:hover{color:#e8eef5;background:hsla(0,0%,100%,.05)}.nav-section-items{-webkit-border-start:1px solid hsla(0,0%,100%,.1);border-inline-start:1px solid hsla(0,0%,100%,.1);-webkit-margin-start:12px;margin-inline-start:12px;-webkit-padding-start:6px;padding-inline-start:6px}.nav-caret{font-size:11px;opacity:.8}.nav-section-items{display:flex;flex-direction:column;gap:2px;padding-bottom:4px}.nav a{padding:7px 10px;border-radius:10px;color:#c9d8e8;font-size:.88rem;transition:background .15s ease}.nav a.active,.nav a:hover{background:rgba(42,157,143,.2);color:#fff}.sidebar-org{margin-top:0;padding:10px 10px 4px;font-size:13px;color:#9bb0c4!important;border-top:1px solid hsla(0,0%,100%,.08)}.brand,.sidebar-org{flex:0 0 auto}.jalali-date{display:flex;flex-direction:column;gap:4px;min-width:0;width:100%}.jalali-date-fields{display:flex;gap:8px;align-items:stretch;min-width:0}.jalali-date-fields datalist{display:none}.jalali-date-fields .jdate-day.input-polish{flex:0 0 4.6rem;width:4.6rem;max-width:4.6rem;text-align:center}.jalali-date-fields .jdate-month.input-polish{flex:1 1 8.5rem;min-width:8rem;width:auto}.jalali-date-fields .jdate-year.input-polish{flex:0 0 5.6rem;width:5.6rem;max-width:5.6rem;text-align:center}.jalali-hint{margin:0;font-size:.75rem;white-space:nowrap;color:var(--muted)}.tab-row{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}.tab-btn{border:1px solid var(--line);background:var(--bg-elevated);color:var(--ink);border-radius:999px;padding:8px 14px;cursor:pointer;font-weight:600;display:inline-flex;align-items:center;gap:8px}.tab-btn.active{background:var(--brand,#0f2a44);color:#fff;border-color:transparent}.tab-count{background:hsla(0,0%,100%,.2);border-radius:999px;padding:1px 8px;font-size:.78rem}.tab-btn:not(.active) .tab-count{background:var(--line)}.demo-tag{color:#5ec4b6;margin-top:4px}.banner-warn{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:12px 16px;border-radius:14px;background:#fff8eb;border:1px solid #f0d9a8;color:#8a5a10}.main{padding:10px 14px 18px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:10px}.chip{display:inline-flex;background:var(--bg-elevated);border:1px solid var(--line);border-radius:999px;padding:8px 14px;box-shadow:var(--shadow)}.chip,.header-pulse{align-items:center;gap:8px}.header-pulse{display:flex;flex-wrap:wrap;min-width:0}.header-clock{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:650;letter-spacing:0}.header-event{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;text-decoration:none;color:inherit}.header-event.warn{border-color:#f0d9a8;background:#fff8eb}.grid{display:grid;grid-gap:10px;gap:10px}.grid.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.card{background:var(--bg-elevated);border:1px solid var(--line);border-radius:10px;padding:8px 10px}.card .muted,.card h3,.card span.muted{font-size:.72rem;margin:0 0 2px;line-height:1.3}.card .value,.card strong{font-size:.92rem;line-height:1.3;word-break:break-word}.card h3{margin:0 0 8px;font-size:.95rem;color:var(--muted);font-weight:500}.card .value{font-size:1.45rem;font-weight:700}.panel{background:var(--bg-elevated);border:1px solid var(--line);border-radius:10px;padding:12px 14px}.panel h2,.panel h3{margin:0 0 8px;font-size:.95rem;font-weight:700;line-height:1.35}.panel p.lead{margin:0 0 20px;color:var(--muted)}table{border-collapse:collapse}td,th{text-align:right;padding:7px 8px;border-bottom:1px solid var(--line);font-size:.82rem;vertical-align:middle;line-height:1.35}th{color:var(--muted);font-weight:500}.badge{display:inline-block;padding:4px 10px;border-radius:999px;background:#ecfdf5;color:var(--ok);font-size:.8rem}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card{width:min(440px,100%);background:hsla(0,0%,100%,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:28px;padding:36px 32px;box-shadow:var(--shadow)}.login-card h1{margin:0 0 8px;font-size:2rem}.login-card .sub{color:var(--muted);margin-bottom:28px}.field{display:flex;flex-direction:column;gap:4px;margin-bottom:0;min-width:0}.field>label,.field>span{font-size:.75rem;color:var(--muted);line-height:1.3}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:#fff;min-width:0;max-width:100%}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:8px;padding:8px 14px;background:var(--brand);color:#fff;font-weight:600;cursor:pointer;width:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1.3;white-space:nowrap}.btn-block,.login-card .btn{width:100%}.btn:hover{filter:brightness(1.05)}.btn:disabled{opacity:.55;cursor:not-allowed}.captcha-row{display:flex;gap:10px;align-items:center}.captcha-img{height:56px;border-radius:12px}.captcha-img,.captcha-refresh{border:1px solid var(--line);background:#fff}.captcha-refresh{border-radius:12px;padding:10px 12px;cursor:pointer;line-height:1}.captcha-refresh:hover{border-color:var(--brand);color:var(--brand)}.form-error{color:#b91c1c;margin:0 0 12px;font-size:.92rem}.muted{color:var(--muted)}.btn-outline{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:8px;padding:6px 10px;cursor:pointer;font-weight:500;line-height:1.3;white-space:nowrap}.btn-outline:hover{border-color:var(--brand);color:var(--brand)}.btn-outline.danger:hover{border-color:#b91c1c;color:#b91c1c}.btn-sm{padding:5px 10px;font-size:.85rem;border-radius:10px}.actions-cell{display:inline-flex;gap:6px;flex-wrap:wrap}.table-wrap{overflow-x:auto}.data-table{display:flex;flex-direction:column;gap:8px}.table-shell{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.table-shell .table-wrap{overflow-x:auto}.table-toolbar{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;margin-bottom:10px}.table-toolbar.compact{padding:8px 10px;gap:8px;background:#f6f9fc;border:1px solid var(--line);border-radius:10px}.table-filter,.table-pager select,.table-search{border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:#fff;font:inherit;font-size:.85rem;height:36px;line-height:1.2}.table-search{flex:1 1 180px;min-width:160px;max-width:280px}.table-filter{flex:0 1 150px;min-width:128px}.table-filter-field{margin:0;min-width:220px;flex:1 1 220px;max-width:320px}.table-toolbar .input-polish{padding:7px 10px;height:36px}.table-toolbar-end{-webkit-margin-start:auto;margin-inline-start:auto}.table-footer,.table-toolbar-end{display:flex;gap:8px;align-items:center}.table-footer{justify-content:space-between;margin-top:0;flex-wrap:wrap;padding:8px 12px;background:#f7fafc;border-top:1px solid var(--line);font-size:.82rem}.table-count{font-size:.8rem}.table-pager{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.table-pager select{height:32px;padding:0 8px;min-width:0}.table-pager button{border:1px solid var(--line);background:#fff;border-radius:8px;min-width:32px;height:32px;padding:0 10px;cursor:pointer;font-size:.8rem;line-height:1}.table-pager button.on{background:var(--brand);color:#fff;border-color:var(--brand);font-weight:700}.table-pager button:disabled{opacity:.4;cursor:not-allowed}.pager-gap{padding:0 4px;color:var(--muted)}th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.center-cell{padding:28px 0!important}.row-selected{background:rgba(15,118,110,.07)}.text-danger{color:#b91c1c;font-weight:600}.badge.tone-ok{background:rgba(4,120,87,.12);color:#047857}.badge.tone-warn{background:rgba(180,83,9,.12);color:#b45309}.badge.tone-bad{background:rgba(185,28,28,.12);color:#b91c1c}.badge.tone-info{background:rgba(3,105,161,.12);color:#0369a1}.badge.tone-muted{background:rgba(91,107,103,.12);color:var(--muted)}.tabs{display:flex;gap:8px;margin-top:12px}.tab{border:1px solid var(--line);background:#fff;border-radius:12px;padding:8px 18px;cursor:pointer;color:var(--muted)}.tab.active{border-color:var(--brand);color:var(--brand);font-weight:600;background:rgba(15,118,110,.06)}.impersonation-banner{background:linear-gradient(135deg,#7c2d12,#9a3412);color:#fff7ed;border-radius:16px;padding:12px 18px;margin-bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.impersonation-banner button{border:1px solid rgba(255,247,237,.5);background:transparent;color:#fff7ed;border-radius:10px;padding:6px 14px;cursor:pointer}.impersonation-banner button:hover{background:rgba(255,247,237,.12)}.live-work-banner{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding:8px 12px;border-radius:10px;border:1px solid #b8e0d4;background:#f0faf6;color:var(--ink)}.live-dot{width:10px;height:10px;border-radius:50%;background:#0f9f6e;box-shadow:0 0 0 0 rgba(15,159,110,.55);animation:live-pulse 1.6s ease-out infinite;flex:0 0 auto}@keyframes live-pulse{0%{box-shadow:0 0 0 0 rgba(15,159,110,.5)}70%{box-shadow:0 0 0 8px rgba(15,159,110,0)}to{box-shadow:0 0 0 0 rgba(15,159,110,0)}}.live-work-copy{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1}.live-work-copy strong{font-size:.82rem;color:#0f6b56}.live-work-copy span{font-size:.75rem;color:var(--muted)}.live-work-actions{display:flex;gap:6px;flex-wrap:wrap}.live-work-actions .danger{color:var(--danger)}.ts-hblock.live{background:#0f9f6e;animation:live-pulse 1.6s ease-out infinite}.topbar-left,.topbar-right{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grid.two-cols{display:grid;grid-template-columns:1fr 1.2fr;grid-gap:18px;gap:18px}@media (max-width:1100px){.grid.two-cols{grid-template-columns:1fr}.grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell,.app-shell.rail-only{grid-template-columns:64px 1fr}.app-shell .nav-panel{display:none}.app-shell.nav-open .nav-panel{display:flex;position:fixed;top:0;inset-inline-end:64px;width:250px;height:100vh;background:#0b1c2c;-webkit-border-start:1px solid hsla(0,0%,100%,.08);border-inline-start:1px solid hsla(0,0%,100%,.08);z-index:60;box-shadow:-18px 0 40px rgba(3,12,22,.45)}.app-shell.nav-open .nav-scrim{display:block;position:fixed;inset:0;background:rgba(4,14,24,.5);z-index:50}.hamburger{display:grid}}.modal-backdrop{position:fixed;inset:0;background:rgba(15,23,22,.45);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-card{background:var(--panel,#fff);border-radius:12px;width:min(640px,100%);max-height:min(92vh,880px);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 40px rgba(15,32,51,.16);border:1px solid var(--line)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 14px 10px;border-bottom:1px solid var(--line);flex:0 0 auto}.modal-head h2{margin:0;font-size:1rem}.modal-close{border:none;background:transparent;font-size:1.6rem;line-height:1;cursor:pointer;color:var(--muted);padding:4px 8px}.modal-body{padding:12px 14px 14px;overflow-y:auto;min-height:0}.timesheet-modal .jalali-date{width:100%}.timesheet-modal{width:min(520px,100%)}.timesheet-modal .modal-body{padding:12px 14px 14px}.timesheet-modal textarea{min-height:96px}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px 12px;gap:10px 12px}.dt-span{display:grid;grid-template-columns:minmax(0,1fr) 7.5rem;grid-gap:8px;gap:8px;align-items:end}.dt-span input[type=time]{min-height:40px}.form-grid .field.full{grid-column:1/-1}.form-grid .field label{display:block;margin-bottom:6px;font-size:.88rem;color:var(--muted)}.form-grid .field input,.form-grid .field select,.form-grid .field textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:7px 10px;background:#fff;font:inherit}.form-grid .field .jalali-date-fields input{width:auto}.panel-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.field-hint{display:block;margin-top:4px;font-size:.78rem;color:var(--muted)}.check-field{display:flex!important;align-items:center;gap:8px;margin-top:8px}.check-field input{width:auto!important}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}table{border-collapse:separate;border-spacing:0;width:100%}.panel table thead th,.table-wrap table thead th{background:#f4f7fb;font-weight:700;font-size:.78rem;color:var(--muted);padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}.panel table tbody td,.table-wrap table tbody td{padding:8px 10px;border-bottom:1px solid #edf1f6}.table-wrap table tbody tr:nth-child(2n) td{background:#fafcfd}.table-wrap table tbody tr:hover td{background:#f3f8fc}.profile-hero{background:linear-gradient(135deg,rgba(15,42,68,.96),rgba(26,95,138,.88)),radial-gradient(500px 200px at 0 0,rgba(42,157,143,.35),transparent);color:#f4f8fc}.profile-hero .lead,.profile-hero .muted,.profile-hero h2{color:#e8eef5!important}.profile-avatar{width:64px;height:64px;border-radius:18px;display:grid;place-items:center;background:hsla(0,0%,100%,.16);font-size:1.35rem;font-weight:700;letter-spacing:.02em}.announce-composer{display:grid;grid-gap:16px;gap:16px}.announce-preview{border:1px dashed var(--line);border-radius:16px;padding:16px;background:#f8fafc;min-height:120px}.announce-preview img{max-width:100%;border-radius:12px;margin-bottom:10px}.inbox-pop{position:relative}.inbox-badge{position:absolute;top:-4px;inset-inline-start:-4px;background:var(--danger);color:#fff;border-radius:99px;font-size:.65rem;min-width:16px;height:16px;display:grid;place-items:center;padding:0 4px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:8px}.panel-head h2{margin:0}@media (max-width:700px){.form-grid{grid-template-columns:1fr}}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:14px;font-size:.9rem;color:var(--muted)}.breadcrumb a{color:var(--brand);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb-sep{margin:0 4px;opacity:.5}.breadcrumb-current{color:var(--ink);font-weight:600}.org-switcher{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px 12px}.org-switcher select{border:none;background:transparent;font:inherit;font-weight:600;color:var(--ink);min-width:140px;cursor:pointer}.profile-hero{background:linear-gradient(135deg,rgba(26,95,138,.07),hsla(0,0%,100%,.92))}a.btn-outline.btn-sm{display:inline-flex;align-items:center;text-decoration:none}.timesheet-toolbar{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;margin-top:8px}.timesheet-toolbar .field{margin-bottom:0;min-width:200px}.timesheet-toolbar input[type=date],.timesheet-toolbar select{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fff}.timesheet-summary{display:flex;flex-direction:column;gap:4px;margin-right:auto}.timesheet-legend{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:14px;font-size:.88rem;color:var(--muted)}.timesheet-legend .dot{display:inline-block;width:12px;height:12px;border-radius:4px;margin-left:6px;vertical-align:middle;border:1px solid var(--line)}.timesheet-legend .dot.free{background:#f7fafc}.timesheet-legend .dot.selecting{background:rgba(42,157,143,.45);border-color:var(--accent)}.timesheet-legend .dot.busy{background:rgba(26,95,138,.55);border-color:var(--brand)}.timesheet-legend .dot.ot{background:rgba(183,121,31,.55);border-color:var(--warn)}.timesheet-grid{display:grid;grid-template-columns:repeat(36,minmax(0,1fr));grid-gap:3px;gap:3px;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:8px;background:linear-gradient(180deg,#f8fafc,#eef3f8);border-radius:16px;border:1px solid var(--line)}.ts-slot{position:relative;height:52px;border:1px solid transparent;border-radius:8px;background:#fff;cursor:crosshair;padding:0;transition:background .12s ease,transform .12s ease,box-shadow .12s ease}.ts-slot.hour{border-color:#d0dae6}.ts-slot:hover:not(:disabled):not(.busy){background:rgba(42,157,143,.12);transform:translateY(-1px)}.ts-slot.selecting{background:rgba(42,157,143,.42)!important;box-shadow:inset 0 0 0 1px var(--accent)}.ts-slot.busy{background:rgba(26,95,138,.5);cursor:default}.ts-slot.busy.ot{background:rgba(183,121,31,.55)}.ts-slot:disabled:not(.busy){opacity:.45;cursor:not-allowed}.ts-label{position:absolute;top:4px;right:4px;font-size:.68rem;color:var(--muted);pointer-events:none;direction:ltr}.timesheet-list{margin-top:22px}.timesheet-list h3{margin:0 0 10px;font-size:1.05rem}.timesheet-modal textarea{border:1px solid var(--line);border-radius:12px;padding:10px 12px;font:inherit;resize:vertical;width:100%}@media (max-width:1100px){.timesheet-grid{grid-template-columns:repeat(18,minmax(0,1fr))}}@media (max-width:720px){.main{padding:16px 14px 32px}.timesheet-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.grid.two-col{grid-template-columns:1fr 1fr;gap:10px}.ops-actions{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:12px;gap:12px;margin-bottom:4px}.action-card{border-radius:16px;padding:16px;border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;gap:8px}.action-card p{margin:0;color:var(--muted);font-size:.9rem}.action-critical{border-color:#f3c0bc;background:#fff5f4}.action-warn{border-color:#f0d9a8;background:#fffaf0}.action-info{border-color:#c5d8ea;background:#f5f9fc}.action-ok{border-color:#b7e4d4;background:#f3fbf7;color:var(--ok)}.bale-guide{background:#f7f9fb;border:1px solid var(--line);border-radius:8px;padding:8px 10px;font-size:.82rem}.bale-guide ol{margin:8px 0 0;padding-right:18px}.bale-guide code{background:#e8eef5;padding:1px 6px;border-radius:6px}.kv-table td{padding:7px 10px!important;font-size:13px;vertical-align:top}.kv-table td:first-child{color:var(--muted);width:36%;white-space:nowrap}.compact-table td,.compact-table th{padding:7px 10px!important;font-size:13px}.profile-hero .chip{background:hsla(0,0%,100%,.12);color:#e8eef5;border-radius:999px;padding:3px 10px;font-size:12px}.cal-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.cal-chip{display:flex;align-items:center;gap:8px;width:100%;text-align:right;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 12px;cursor:pointer}.cal-chip.active{background:rgba(26,95,138,.08);border-width:2px}.cal-chip i{width:10px;height:10px;border-radius:50%}@media (max-width:900px){.grid.two-col{grid-template-columns:1fr}}.heat-toolbar{flex-wrap:wrap;justify-content:space-between;gap:12px}.heat-nav,.heat-toolbar{display:flex;align-items:center}.heat-nav{gap:10px}.heat-filter{display:flex;align-items:center;gap:8px}.heat-filter select{min-width:170px}.heat-legend{display:flex;align-items:center;gap:5px;font-size:.78rem}.heat-swatch{width:14px;height:14px;border-radius:4px;display:inline-block}.heat-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:6px;gap:6px;margin-top:12px}.heat-head{text-align:center;font-size:.7rem;font-weight:700;color:var(--muted);padding-bottom:4px}.heat-cell{position:relative;aspect-ratio:1/1;border:1px solid var(--line);border-radius:12px;background:#f4f7f9;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;padding:2px;transition:transform .12s ease,box-shadow .12s ease}.heat-cell:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(15,42,68,.14)}.heat-cell.blank{border:0;background:transparent;cursor:default;box-shadow:none;transform:none}.heat-cell.off{background-image:repeating-linear-gradient(45deg,rgba(15,42,68,.05),rgba(15,42,68,.05) 4px,transparent 0,transparent 8px)}.heat-cell.holiday{background:#fde8e4;border-color:#e07a5f}.heat-cell.holiday .heat-day{color:#9b2226}.work-breakdown{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-gap:6px;gap:6px}.work-breakdown li{display:flex;justify-content:space-between;gap:12px;font-size:.82rem;padding:6px 8px;background:var(--panel-2,#f4f7f9);border-radius:8px}.heat-cell.selected{outline:2px solid var(--brand);outline-offset:1px}.heat-day{font-size:.82rem;font-weight:700}.heat-min{font-size:.68rem;opacity:.75;min-height:12px}.heat-dots{display:flex;gap:3px;min-height:6px}.heat-dots .dot{width:5px;height:5px;border-radius:50%;display:inline-block}.heat-dots .dot.note{background:var(--ok)}.heat-dots .dot.event{background:var(--brand)}.heat-dots .dot.holiday{background:#e07a5f}.heat-cell.level-0,.heat-swatch.level-0{background-color:#eef2f5}.heat-cell.level-1,.heat-swatch.level-1{background-color:#d3ece7}.heat-cell.level-2,.heat-swatch.level-2{background-color:#a5dad1}.heat-cell.level-3,.heat-swatch.level-3{background-color:#62bfb0;color:#06302a}.heat-cell.level-4,.heat-swatch.level-4{background-color:#2a9d8f;color:#fff}.day-detail-head{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.day-reports{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.day-reports li{border:1px solid var(--line);border-radius:12px;padding:10px 12px;background:#fbfdfe}.day-reports li p{margin:4px 0 0;font-size:.88rem;white-space:pre-wrap}.kanban{display:flex;gap:14px;overflow-x:auto;padding-bottom:10px}.kanban-col{flex:0 0 300px;background:#f6f9fb;border:1px solid var(--line);border-radius:18px;padding:12px;display:flex;flex-direction:column;gap:10px;max-height:70vh}.kanban-col-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:8px;border-bottom:1px solid var(--line)}.kanban-col-head strong{font-size:.95rem}.kanban-cards{display:flex;flex-direction:column;gap:9px;overflow-y:auto}.kanban-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px 12px;box-shadow:0 2px 6px rgba(15,42,68,.05)}.kanban-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:.78rem;color:var(--muted)}.kanban-card p{margin:0;font-size:.87rem;line-height:1.7;white-space:pre-wrap}.role-picker{display:flex;flex-wrap:wrap;gap:8px}.role-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:.84rem;cursor:pointer;background:#fff;-webkit-user-select:none;-moz-user-select:none;user-select:none}.role-chip input{width:auto;margin:0}.role-chip.checked{border-color:var(--brand);background:rgba(42,157,143,.1);color:var(--brand-deep,#14615a);font-weight:600}.org-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:14px;gap:14px}.org-card{border:1px solid var(--line);border-radius:18px;padding:16px;background:var(--bg-elevated);display:flex;flex-direction:column;gap:10px}.org-card-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;font-size:.82rem}.org-card-stats span{color:var(--muted)}.org-card-stats strong{display:block;font-size:1.05rem;color:var(--ink)}.checklist-items{list-style:none;padding:0;margin:0 0 10px;display:flex;flex-direction:column;gap:8px}.checklist-items li{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:14px;background:linear-gradient(90deg,rgba(42,157,143,.1),transparent);border:1px solid var(--line);animation:check-in .22s ease}@keyframes check-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.check-mark{width:22px;height:22px;border-radius:50%;background:var(--accent,#2a9d8f);color:#fff;display:grid;place-items:center;font-size:.72rem;font-weight:700;flex-shrink:0;margin-top:1px}.check-text{flex:1 1;line-height:1.6;font-size:.92rem}.check-remove{border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:1.1rem;line-height:1;padding:0 4px}.checklist-input-row>.input-polish,.checklist-input-row>input{flex:1 1 auto;min-width:0;width:auto}.checklist-input-row>.btn{align-self:stretch}.progress-feed,.week-reports{display:flex;flex-direction:column;gap:10px;max-height:420px;overflow-y:auto}.progress-card,.week-report-card{border:1px solid var(--line);border-radius:14px;padding:10px 12px;background:#fbfdfe}.progress-card header,.week-report-card header{display:flex;justify-content:space-between;margin-bottom:8px;font-size:.82rem}.brand-presets{display:flex;flex-wrap:wrap;gap:8px}.brand-preset{border:0;border-radius:999px;color:#fff;padding:8px 14px;cursor:pointer;font-size:.82rem;font-weight:600}.icon-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.icon-pick{display:flex;flex-direction:column;align-items:center;gap:4px;width:72px;padding:10px 6px;border-radius:14px;border:1px solid var(--line);background:#fff;cursor:pointer;font-size:.72rem;color:var(--ink)}.icon-pick.active{font-weight:700}.brand-preview{margin-top:16px;display:flex;align-items:center;gap:12px;padding:16px;border-radius:16px;color:#e8eef5;border:2px solid transparent;position:relative;overflow:hidden}.brand-preview span{display:block;font-size:.78rem;opacity:.75}.brand-preview-accent{position:absolute;inset-inline-start:0;top:0;bottom:0;width:4px}.ticket-list{display:flex;flex-direction:column;gap:12px}.ticket-card header{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:8px}.ticket-reply{margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(42,157,143,.08);border:1px solid rgba(42,157,143,.25)}.page-hero{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px;padding:10px 12px;border-radius:10px;background:#fff;border:1px solid var(--line);color:var(--ink)}.page-hero.compact-hero{padding:8px 12px;margin-bottom:10px}.page-hero h1{margin:0;font-size:1.05rem;letter-spacing:0;line-height:1.3}.page-hero p{margin:2px 0 0;max-width:none;color:var(--muted);font-size:.78rem;line-height:1.35}.page-hero .eyebrow{margin:0 0 2px;font-size:.7rem;letter-spacing:0;text-transform:none;color:var(--brand);font-weight:600}.hero-metric{text-align:left;flex:0 0 auto}.hero-metric span{display:block;font-size:.7rem;color:var(--muted)}.hero-metric strong{font-size:1.05rem}.hero-actions{display:flex;gap:8px;flex-wrap:wrap}.page-hero .btn-outline{color:var(--ink);border-color:var(--line);background:#fff}.form-ok{color:var(--ok);font-weight:600}.stat-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:10px}.stat-strip>div{background:var(--bg-elevated);border:1px solid var(--line);border-radius:10px;padding:8px 10px}.stat-strip span{display:block;color:var(--muted);font-size:.75rem;margin-bottom:4px}.stat-strip strong{font-size:1.02rem}.stat-strip strong small{color:var(--muted);font-weight:500}.stat-strip .warn{color:var(--warn)}.stat-strip.rem-badges{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px}.stat-strip.rem-badges>button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--line);background:var(--panel,#fff);border-radius:14px;padding:12px 14px;text-align:right;cursor:pointer;display:flex;flex-direction:column;gap:4px}.stat-strip.rem-badges>button.active{border-color:var(--brand);box-shadow:0 0 0 2px rgba(26,95,138,.15)}.stat-strip.rem-badges span{color:var(--muted);font-size:.78rem}.stat-strip.rem-badges strong{font-size:1.25rem}.policy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:12px;gap:12px;margin-top:10px}.policy-card{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:#f8fafc}.policy-card.off{opacity:.65}.policy-card header{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:6px}.rem-detail{background:#f4f7f9;border-radius:10px;padding:10px 12px}button.linkish{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;padding:0;cursor:pointer;color:inherit;text-align:right}.user-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:14px;gap:14px}.user-card{border:1px solid var(--line);border-radius:16px;padding:14px;background:var(--panel,#fff);display:flex;flex-direction:column;gap:10px}.user-card.off{opacity:.7}.user-card header{display:flex;justify-content:space-between;gap:8px;align-items:center}.user-meta{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px}.user-meta li{display:flex;justify-content:space-between;gap:10px;font-size:.82rem}.user-meta span{color:var(--muted)}.modal-card.wide{max-width:860px;width:min(860px,96vw)}.empty-hint{color:var(--muted);padding:8px 2px;font-size:.82rem}.ts-toolbar-panel{margin-bottom:0}.ts-toolbar{display:grid;grid-template-columns:minmax(160px,.9fr) minmax(280px,2fr) 110px auto;grid-gap:8px;gap:8px;align-items:end}.ts-date-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ts-date-row .jalali-date{flex:1 1 240px;min-width:240px}.ts-layout{align-items:start}.ts-board-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:10px}.ts-board-head h2{margin:0;font-size:1rem}.ts-hday{display:flex;flex-direction:column;gap:4px}.ts-hhours{position:relative;display:grid;grid-template-columns:repeat(24,minmax(0,1fr));direction:ltr;font-size:.62rem;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding-left:0}.ts-hhours span{text-align:left}.ts-hhours .ts-h24{position:absolute;left:auto;right:0;text-align:right}.ts-htrack{position:relative;height:86px;direction:ltr;background:repeating-linear-gradient(90deg,#f4f7fa,#f4f7fa calc(100% / 24 - 1px),#d5dee8 calc(100% / 24 - 1px),#d5dee8 calc(100% / 24));border:1px solid var(--line);border-radius:8px;overflow:hidden;touch-action:none;cursor:crosshair}.ts-hselect{position:absolute;top:6px;bottom:6px;background:rgba(42,157,143,.28);border:1px dashed var(--accent);border-radius:8px;pointer-events:none}.ts-hblock{position:absolute;top:4px;bottom:4px;background:var(--brand);color:#fff;border:0;border-radius:8px;padding:5px 8px;text-align:right;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;justify-content:center;gap:1px;box-shadow:0 6px 14px rgba(15,42,68,.16)}.ts-hblock.ot{background:#9a6700}.ts-hblock.night{background:#1e3a5f}.ts-hblock.remote{background:#0f766e}.ts-hblock.conflict{background:#b42318;box-shadow:0 0 0 2px rgba(180,35,24,.35),0 6px 14px rgba(180,35,24,.25);z-index:1}.ts-live-banner{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 16px;margin-bottom:10px;border:1px solid #f5b4a8;background:linear-gradient(135deg,#fff5f3,#ffece8);border-radius:12px;box-shadow:0 0 0 1px rgba(180,35,24,.06)}.ts-live-banner strong{color:#9b1c1c;display:block}.ts-live-banner p{margin:4px 0 0;font-size:.84rem;color:var(--muted);line-height:1.5}.ts-conflict-banner{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap;padding:10px 14px;margin-bottom:10px;border:1px solid #f0d9a8;background:#fff8eb;border-radius:12px}.ts-conflict-banner p{margin:4px 0 0;font-size:.82rem;color:var(--muted)}.ts-conflict-actions{display:flex;gap:8px;flex-wrap:wrap}.ts-row-conflict td{background:#fff5f5}.confirm-backdrop{z-index:80}.confirm-card{width:min(420px,100%);text-align:center;padding:22px 20px 18px}.confirm-card h2{margin:0 0 8px;font-size:1.05rem}.confirm-message{margin:0;line-height:1.55}.confirm-detail{margin:10px 0 0;font-size:.82rem;white-space:pre-line;line-height:1.5}.confirm-icon{width:48px;height:48px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;font-size:1.4rem;font-weight:800;color:#fff;background:#b42318}.confirm-card.tone-warn .confirm-icon{background:#b54708}.confirm-card.tone-info .confirm-icon{background:#175cd3}.confirm-actions{justify-content:center;margin-top:18px}.btn.danger-solid{background:#b42318;border-color:#b42318;color:#fff}.btn.danger-solid:hover{filter:brightness(.95)}.ts-hblock em{font-style:normal;font-size:.62rem;font-weight:700;letter-spacing:0;opacity:.95}.ts-hblock em,.ts-hblock span,.ts-hblock strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ts-hblock span{font-size:.68rem;opacity:.9}.ts-now{position:absolute;top:0;bottom:0;width:2px;background:#e11d48;box-shadow:0 0 0 1px rgba(225,29,72,.25);z-index:2;pointer-events:none}.ts-day{display:grid;grid-template-columns:58px 1fr;grid-gap:8px;gap:8px}.ts-hour{color:var(--muted);font-size:.72rem;direction:ltr;text-align:left;border-top:1px dashed #e4ebf2;padding-top:4px}.ts-track{position:relative;background:repeating-linear-gradient(180deg,#f7fafc,#f7fafc 45px,#eef3f8 0,#eef3f8 46px);border:1px solid var(--line);border-radius:16px;overflow:hidden;touch-action:none;cursor:crosshair}.ts-select{background:rgba(42,157,143,.28);border:1px dashed var(--accent);border-radius:10px;pointer-events:none}.ts-block,.ts-select{position:absolute;right:8px;left:8px}.ts-block{background:linear-gradient(180deg,#1a5f8a,#154e72);color:#fff;border:0;border-radius:12px;padding:8px 10px;text-align:right;overflow:hidden;cursor:pointer;box-shadow:0 8px 18px rgba(15,42,68,.18)}.ts-block.ot{background:linear-gradient(180deg,#b7791f,#9a6416)}.ts-block span,.ts-block strong{display:block}.ts-block span{font-size:.78rem;opacity:.88;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.role-switch{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.role-switch button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:4px 10px;font-size:.74rem;cursor:pointer}.role-switch button.on{background:var(--brand);color:#fff;border-color:var(--brand);font-weight:700}.kv-inline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.kv-inline div{border:1px solid var(--line);border-radius:8px;padding:8px 10px;background:#fafbfc}.kv-inline span{display:block;font-size:.72rem;color:var(--muted)}.kv-inline strong{font-size:.88rem;line-height:1.35;word-break:break-word}.sheet{display:flex;flex-direction:column;gap:12px}.announce-studio{display:grid;grid-template-columns:1.3fr .7fr;grid-gap:16px;gap:16px;margin-bottom:18px}.kind-pills{display:flex;gap:8px;margin:8px 0 14px}.kind-pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 14px;cursor:pointer;font-weight:600}.kind-pill.on{color:#fff;border-color:transparent}.kind-pill.on.tone-info{background:#0369a1}.kind-pill.on.tone-ok{background:#047857}.kind-pill.on.tone-warn{background:#b45309}.dropzone{display:grid;place-items:center;min-height:88px;border:1px dashed var(--line);border-radius:16px;background:#f8fafc;color:var(--muted);cursor:pointer}.dropzone input{display:none}.chip-select{display:flex;flex-wrap:wrap;gap:8px}.announce-phone{background:#0f2a44;color:#e8eef5;border-radius:28px;padding:22px 18px 28px;min-height:420px;box-shadow:var(--shadow)}.phone-notch{width:88px;height:8px;border-radius:999px;background:hsla(0,0%,100%,.18);margin:0 auto 16px}.announce-phone img,.phone-photo{width:100%;height:160px;object-fit:cover;border-radius:16px;margin:12px 0;background:hsla(0,0%,100%,.08)}.announce-phone p{white-space:pre-wrap;color:rgba(232,238,245,.82);line-height:1.7}.announce-feed{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:14px;gap:14px}.announce-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(15,32,51,.05)}.announce-card img{width:100%;height:160px;object-fit:cover}.announce-card-body{padding:14px 16px 16px}.announce-card-body header{display:flex;gap:6px;margin-bottom:8px}.announce-card-body h3{margin:0 0 8px;font-size:1.05rem}.announce-card-body p{margin:0;white-space:pre-wrap;color:var(--muted);line-height:1.7}.announce-card-body footer{margin-top:12px;font-size:.75rem;color:var(--muted)}@media (max-width:900px){.announce-studio,.kv-inline,.page-hero,.stat-strip,.ts-toolbar{grid-template-columns:1fr 1fr;display:grid}.page-hero{align-items:start}.ts-toolbar{grid-template-columns:1fr}}.jcal{-webkit-user-select:none;-moz-user-select:none;user-select:none}.jcal-head{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.jcal-title{flex:1 1;text-align:center;min-width:140px}.jcal-title strong{display:block;font-size:1.05rem}.jcal-nav{width:36px;padding:0}.jcal-weekdays{margin-bottom:6px;font-size:.72rem;color:var(--muted);text-align:center}.jcal-grid,.jcal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.jcal-cell{min-height:52px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:6px 4px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;transition:border-color .15s,box-shadow .15s}.jcal-cell.today,.jcal-cell:hover{border-color:var(--brand)}.jcal-cell.today{background:#f0f9ff}.jcal-cell.selected{box-shadow:0 0 0 2px var(--brand)}.jcal-cell.friday .jcal-day{color:#b42318}.jcal-cell.jcal-pad{visibility:hidden;pointer-events:none}.jcal-day{font-weight:700;font-size:.9rem}.jcal-dots{display:flex;gap:3px;flex-wrap:wrap;justify-content:center}.jcal-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.jcal-dot.tone-info{background:#0ea5e9}.jcal-dot.tone-warn{background:#f59e0b}.jcal-dot.tone-ok{background:#059669}.jcal-more{font-size:.65rem;color:var(--muted)}.jcal-layout .panel-stack{display:flex;flex-direction:column;gap:12px}.rem-day-list{list-style:none;padding:0;margin:0}.rem-day-list li{display:flex;justify-content:space-between;gap:8px;padding:10px 0;border-bottom:1px solid var(--line)}.rem-card{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-bottom:8px}.nav-badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#b42318;color:#fff;font-size:.68rem;font-weight:700;justify-content:center;-webkit-margin-start:6px;margin-inline-start:6px}.chip-with-badge,.nav-badge{display:inline-flex;align-items:center}.chip-with-badge{gap:4px}.nav-section-items a{display:flex;align-items:center;justify-content:space-between}.input-polish{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#fff;font:inherit;transition:border-color .15s,box-shadow .15s}.input-polish:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(14,116,144,.12)}.checklist-input-row{display:flex;gap:8px;align-items:stretch}.checklist-input-row>.input-polish{flex:1 1 auto;min-width:0;width:auto}.checklist-input-row>.btn{flex:0 0 auto;width:auto}.quick-tile{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.quick-tile-icon{width:36px;height:36px;border-radius:10px;background:rgba(14,116,144,.1);display:grid;place-items:center;color:var(--brand)}.security-feed{list-style:none;padding:0;margin:8px 0 0;font-size:.82rem}.security-feed li{display:grid;grid-gap:2px;gap:2px;padding:8px 0;border-bottom:1px solid var(--line)}.compact-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;width:100%}.compact-filters .field{margin:0;min-width:140px;flex:1 1 160px;max-width:280px}.compact-filters .field input,.compact-filters .field select,.compact-filters .input-polish{height:36px;padding:6px 10px;font-size:.85rem}.form-grid.compact-filters .field{max-width:none}.row-selected td{background:#f0f9ff}.session-tasks-panel{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:linear-gradient(180deg,#f8fbff,#fff)}.session-tasks-panel.compact{padding:10px 12px}.session-tasks-head{margin-bottom:10px}.session-tasks-head h3{margin:0 0 4px;font-size:1rem}.session-task-list{list-style:none;margin:0 0 12px;padding:0;display:grid;grid-gap:8px;gap:8px}.session-task-list li{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.session-task-list li.active{border-color:var(--brand);box-shadow:0 0 0 1px rgba(27,79,114,.12)}.live-pill{display:inline-block;-webkit-margin-start:6px;margin-inline-start:6px;font-size:.68rem;padding:2px 6px;border-radius:999px;background:#ecfdf5;color:#0f6b56;font-weight:600}.session-task-form{display:grid;grid-gap:8px;gap:8px}.session-time-q{margin:2px 0 0;font-size:.82rem;font-weight:600;color:var(--ink)}.session-time-hint{margin:0;font-size:.78rem}.time-mode-grid{display:grid;grid-gap:6px;gap:6px}.time-mode-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:right;border:1px solid var(--line);background:#fff;border-radius:10px;padding:8px 12px;cursor:pointer;font:inherit}.time-mode-grid button strong{font-size:.85rem;font-weight:650}.time-mode-grid button span{font-size:.75rem;color:var(--muted);line-height:1.35}.time-mode-grid button.on{border-color:var(--brand);background:#f0f9ff;box-shadow:0 0 0 1px rgba(27,79,114,.15)}.compact-seg{display:flex;flex-wrap:wrap;gap:6px}.compact-seg button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;font-size:.82rem;cursor:pointer}.compact-seg button.on{border-color:var(--brand);color:var(--brand);background:#f0f9ff}.inline-times{display:flex;gap:8px;align-items:center}.panel-accent{border-color:rgba(27,79,114,.25);background:linear-gradient(180deg,#f8fbff,#fff)}.activity-report-panel .checklist{margin-top:4px}.activity-report-area{min-height:120px;resize:vertical;line-height:1.7}.checkout-modal{width:min(760px,100%)}.expense-editor-modal{width:min(920px,100%)}.expense-upload-box{border:1px dashed var(--line);border-radius:14px;padding:16px;background:linear-gradient(180deg,#fbfdff,#f6fbff);cursor:pointer;display:grid;grid-gap:6px;gap:6px}.expense-upload-box:hover{border-color:var(--brand)}.expense-file-list{list-style:none;padding:0;margin:10px 0 0;display:grid;grid-gap:8px;gap:8px}.expense-file-list li{display:flex;justify-content:space-between;gap:8px;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fff}.expense-textarea{line-height:1.8;resize:vertical}.expense-row-main{display:grid;grid-gap:4px;gap:4px}.expense-attachments-cell,.expense-status-cell{display:grid;grid-gap:6px;gap:6px}.actions-cell.wrap{flex-wrap:wrap}.receipt-preview-modal{width:min(980px,100%)}.receipt-frame{height:min(75vh,820px)}.receipt-frame,.receipt-image{width:100%;border:1px solid var(--line);border-radius:12px;background:#fff}.receipt-image{max-height:75vh;object-fit:contain}.receipt-preview-fallback{min-height:320px;display:grid;place-items:center;grid-gap:10px;gap:10px;text-align:center;border:1px dashed var(--line);border-radius:12px;background:var(--surface2);padding:24px}.receipt-thumb-pdf-lg{width:88px;height:88px;font-size:1rem}.receipt-nav{display:grid;grid-template-columns:auto 1fr auto;grid-gap:12px;gap:12px;align-items:center;margin-top:12px}.receipt-thumbs-strip{display:flex;gap:8px;overflow-x:auto;padding:4px}.receipt-nav-thumb{border:1px solid var(--line);background:#fff;border-radius:10px;padding:2px;cursor:pointer;flex:0 0 auto}.receipt-nav-thumb.active{border-color:var(--brand,#2563eb);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand,#2563eb) 18%,transparent)}.existing-receipts{margin-top:12px}.existing-receipts-label{font-size:.82rem;color:var(--muted);margin:0 0 6px;font-weight:600}.existing-receipt-item{display:flex;align-items:center;gap:10px;padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);margin-bottom:6px;flex-wrap:wrap}.receipt-thumb-btn{background:none;border:none;padding:0;cursor:pointer;border-radius:8px;overflow:hidden;flex-shrink:0}.receipt-thumb-img{width:56px;height:56px;object-fit:cover;border-radius:8px;border:1px solid var(--line);display:block;transition:opacity .15s}.receipt-thumb-btn:hover .receipt-thumb-img{opacity:.8}.receipt-thumb-pdf{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:8px;background:#fee2e2;color:#dc2626;font-size:.7rem;font-weight:700;border:1px solid #fecaca}.receipt-thumb-name{flex:1 1;font-size:.82rem;color:var(--text);word-break:break-all;min-width:0}.expense-success-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px;padding:14px 16px;border-radius:14px;background:linear-gradient(135deg,#ecfdf3,#d1fae5);border:1px solid #6ee7b7;color:#065f46}.expense-success-banner p{margin:4px 0 0}.expense-month-bars{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:8px;gap:8px;align-items:end;min-height:160px;padding:12px 8px 0}.expense-month-bar{display:grid;justify-items:center;grid-gap:6px;gap:6px;height:160px;align-content:end}.expense-month-fill{width:100%;max-width:28px;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,#0f766e,#34d399)}.expense-month-bar span{font-size:.72rem;color:var(--muted)}.expense-month-bar small{font-size:.65rem;color:var(--text);text-align:center}.ts-row-live td{background:color-mix(in srgb,#0f766e 10%,transparent);font-weight:600}.toast-stack{position:fixed;inset-inline-start:20px;bottom:20px;z-index:1200;display:grid;grid-gap:10px;gap:10px}.toast-item{min-width:260px;max-width:420px;display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;color:#fff;box-shadow:0 18px 40px rgba(15,23,42,.22);animation:toast-in .22s ease}.toast-item.tone-success{background:linear-gradient(135deg,#0f766e,#16a34a)}.toast-item.tone-error{background:linear-gradient(135deg,#b42318,#ef4444)}.toast-item.tone-info{background:linear-gradient(135deg,#1b4f72,#2563eb)}.toast-icon{width:24px;height:24px;border-radius:999px;background:hsla(0,0%,100%,.18);display:grid;place-items:center;font-weight:700}@keyframes toast-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.muted-chip{color:var(--muted);font-size:.8rem}.att-live-banner{margin-bottom:12px}.center-cell{text-align:center;padding:18px 10px!important}@media (max-width:1100px){.page-hero{flex-wrap:wrap}.hero-actions{width:100%}.hero-actions .btn,.hero-actions .btn-outline{flex:1 1;min-width:120px;justify-content:center}.table-search{min-width:0;width:100%}.grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:900px){.page-hero{display:grid;grid-template-columns:1fr;align-items:start}.stat-strip{grid-template-columns:1fr 1fr}.ts-toolbar{grid-template-columns:1fr}.att-live-banner,.ts-live-banner{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}.att-live-banner .btn,.ts-live-banner .btn{width:100%}.modal-backdrop{padding:10px;align-items:flex-end}.expense-editor-modal,.modal-card,.receipt-preview-modal,.timesheet-modal{width:100%;max-height:92vh;border-radius:16px 16px 10px 10px}.compact-filters{display:flex;flex-wrap:wrap}.compact-filters .field{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 8px);min-width:140px;max-width:none}.jalali-date,.jalali-date-fields{width:100%}.jalali-date-fields .jdate-month.input-polish{min-width:0}.topbar-left .chip:not(.chip-with-badge){max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jcal-cell{min-height:44px;padding:4px 2px}}@media (max-width:640px){.app-shell,.app-shell.rail-only{grid-template-columns:1fr}.sidebar{display:none}.app-shell.nav-open .sidebar{display:grid;position:fixed;inset:0 auto 0 0;width:min(300px,86vw);z-index:70;height:100vh}.app-shell.nav-open .nav-panel{display:flex;position:static;width:auto;inset:auto;box-shadow:none}.main{padding:8px 10px 24px}.grid.stats,.stat-strip{grid-template-columns:1fr}.page-hero h1{font-size:1rem}.compact-filters .field,.table-filter,.table-filter-field,.table-search{flex:1 1 100%;max-width:none;min-width:0;width:100%}.table-toolbar-end{-webkit-margin-start:0;margin-inline-start:0;width:100%}.table-footer{flex-direction:column;align-items:stretch}.table-pager{justify-content:flex-start}.jalali-date-fields .jdate-day.input-polish,.jalali-date-fields .jdate-year.input-polish{flex:1 1;width:auto;max-width:none}.ts-htrack{height:72px}.ts-hblock em,.ts-hblock strong{font-size:.68rem}.actions-cell,.actions-cell.wrap{display:flex}.stack-table thead{display:none}.stack-table tbody{display:grid;grid-gap:8px;gap:8px}.stack-table tbody tr{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px 12px;gap:8px 12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff}.stack-table tbody td{display:flex;flex-direction:column;gap:2px;border:0!important;padding:0!important;white-space:normal}.stack-table tbody td:before{content:attr(data-label);font-size:.7rem;color:var(--muted);font-weight:600}.stack-table tbody td:not([data-label]):before{content:none}.stack-table tbody td.actions-cell,.stack-table tbody td.stack-span{grid-column:1/-1}.stack-table tbody td.center-cell{grid-column:1/-1;text-align:center}.toast-stack{inset-inline:10px;bottom:12px}.toast-item{min-width:0;max-width:none}}.checklist-input-row>.input-polish{flex:1 1 auto!important;min-width:12rem;width:auto!important}.checklist-input-row>.btn{flex:0 0 auto!important;width:auto!important;min-width:5.5rem}.ts-month-actions,.ts-month-hero .hero-actions{flex-wrap:wrap;gap:8px}.ts-month-actions{display:flex;align-items:center}.ts-month-toolbar{margin-bottom:14px;padding:12px 16px}.ts-month-toolbar-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between}.ts-month-kpis .ts-kpi strong{font-size:1.15rem}.tone-ok-text{color:#0f766e}.tone-warn-text{color:#b45309}.ts-month-counts{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.ts-count-chip{font-size:.78rem;padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:var(--panel-2,#f4f7f9)}.ts-month-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.85fr);grid-gap:16px;gap:16px;align-items:start}@media (max-width:960px){.ts-month-layout{grid-template-columns:1fr}}.ts-month-period-hint{margin-top:6px;font-size:.85rem}.ts-month-nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.ts-month-nav-label{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:11rem;text-align:center}.ts-month-nav-label strong{font-size:1.05rem}.ts-month-nav-label .muted{font-size:.75rem}.ts-month-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px;margin-bottom:14px}@media (max-width:900px){.ts-month-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}.ts-month-kpis .ts-kpi{background:var(--panel,#fff);border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:6px;min-height:76px}.ts-month-kpis .ts-kpi strong{font-size:1.12rem;line-height:1.35}.ts-detail-callout{border-radius:12px;padding:10px 12px;font-size:.86rem;margin-bottom:12px;line-height:1.55}.ts-detail-callout.warn{background:color-mix(in srgb,#b45309 12%,#fff);border:1px solid color-mix(in srgb,#b45309 28%,transparent);color:#9a3412}.btn-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:8px;padding:8px 14px;background:var(--brand);color:#fff;font-weight:600;cursor:pointer;width:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;line-height:1.3;white-space:nowrap}.btn-primary:hover{filter:brightness(1.05)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-primary.btn-sm{padding:6px 10px;font-size:.85rem}.btn-primary.btn-xs{padding:4px 8px;font-size:.78rem}.ts-month-calendar .panel-head{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;margin-bottom:8px}.ts-month-legend{display:flex;flex-wrap:wrap;gap:6px;max-width:420px}.ts-legend-dot{font-size:.68rem;padding:3px 8px;border-radius:999px;border:1px solid transparent;white-space:nowrap}.ts-month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px}.ts-month-head{text-align:center;font-size:.72rem;font-weight:700;color:var(--muted);padding-bottom:4px}.ts-month-cell{position:relative;min-height:72px;border:1px solid var(--line);border-radius:14px;background:#f8fafb;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;padding:6px 4px;transition:transform .12s ease,box-shadow .12s ease}.ts-month-cell:hover:not(.blank){transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,42,68,.12)}.ts-month-cell.blank{border:0;background:transparent;cursor:default;min-height:0}.ts-month-cell.selected{outline:2px solid var(--brand);outline-offset:2px}.ts-month-cell.today{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--brand) 35%,transparent)}.ts-month-cell.live{animation:ts-pulse 2s ease-in-out infinite}@keyframes ts-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb,#0f766e 25%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb,#0f766e 15%,transparent)}}.ts-cell-day{font-size:.95rem;font-weight:800}.ts-cell-status{font-size:.62rem;font-weight:600;opacity:.9}.ts-cell-hours{font-size:.65rem;opacity:.75}.ts-cell-dots{display:flex;gap:3px;min-height:6px;margin-top:2px}.ts-cell-dots .dot{width:5px;height:5px;border-radius:50%;display:inline-block}.ts-cell-dots .dot.overlap{background:#dc2626}.ts-cell-dots .dot.leave{background:#7c3aed}.ts-cell-dots .dot.report{background:#2563eb}.ts-cell-dots .dot.live{background:#0f766e}.ts-month-cell.tone-ok{background:#ecfdf5;border-color:#6ee7b7}.ts-month-cell.tone-deficit{background:#fff7ed;border-color:#fdba74}.ts-month-cell.tone-overtime{background:#eff6ff;border-color:#93c5fd}.ts-month-cell.tone-leave{background:#f5f3ff;border-color:#c4b5fd}.ts-month-cell.tone-absent{background:#fef2f2;border-color:#fca5a5}.ts-month-cell.tone-mission{background:#ecfeff;border-color:#67e8f9}.ts-month-cell.tone-holiday,.ts-month-cell.tone-off{background:#f4f4f5;border-color:#d4d4d8}.ts-month-cell.tone-friday-work,.ts-month-cell.tone-holiday-work{background:#fdf4ff;border-color:#e879f9}.ts-month-cell.tone-overlap{background:#fef2f2;border-color:#ef4444}.ts-legend-dot.tone-ok{background:#ecfdf5;color:#047857}.ts-legend-dot.tone-deficit{background:#fff7ed;color:#c2410c}.ts-legend-dot.tone-overtime{background:#eff6ff;color:#1d4ed8}.ts-legend-dot.tone-leave{background:#f5f3ff;color:#6d28d9}.ts-legend-dot.tone-absent{background:#fef2f2;color:#b91c1c}.ts-legend-dot.tone-mission{background:#ecfeff;color:#0e7490}.ts-legend-dot.tone-overlap{background:#fef2f2;color:#dc2626}.ts-legend-dot.tone-holiday{background:#f4f4f5;color:#52525b}.ts-count-chip.tone-ok{border-color:#6ee7b7}.ts-count-chip.tone-deficit{border-color:#fdba74}.ts-count-chip.tone-overtime{border-color:#93c5fd}.ts-count-chip.tone-leave{border-color:#c4b5fd}.ts-count-chip.tone-absent{border-color:#fca5a5}.ts-count-chip.tone-mission{border-color:#67e8f9}.ts-count-chip.tone-overlap{border-color:#ef4444}.ts-count-chip.tone-holiday{border-color:#d4d4d8}.ts-month-detail h2{margin-bottom:12px}.ts-day-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.ts-detail-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;margin:0 0 16px}.ts-detail-stats div{background:var(--panel-2,#f4f7f9);border-radius:10px;padding:10px 12px}.ts-detail-stats dt{font-size:.72rem;color:var(--muted);margin-bottom:4px}.ts-detail-stats dd{margin:0;font-weight:700}.ts-detail-block{margin-bottom:14px}.ts-detail-block h4{margin:0 0 6px;font-size:.85rem}.ts-leave-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:6px;gap:6px}.ts-leave-list li{display:flex;gap:8px;align-items:center;font-size:.85rem}.ts-detail-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.ts-detail-hint{margin-top:10px;font-size:.78rem}.ts-day-entries-block{border-top:1px solid var(--line);padding-top:12px}.ts-day-entries-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:10px}.ts-day-entries-head h4{margin:0}.ts-day-entries-empty{margin:0 0 8px;font-size:.88rem}.ts-day-entry-list{list-style:none;margin:0;padding:0;max-height:min(52vh,420px);overflow:auto}.ts-day-entry,.ts-day-entry-list{display:flex;flex-direction:column;gap:8px}.ts-day-entry{border:1px solid var(--line);border-radius:12px;background:var(--panel-2,#f7fafb);padding:10px 12px}.ts-day-entry.editing{background:#fff;border-color:color-mix(in srgb,var(--brand) 35%,var(--line));box-shadow:0 6px 18px rgba(15,42,68,.06)}.ts-day-entry-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px}.ts-day-entry-meta strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.01em}.ts-day-entry-act{margin:0;font-size:.88rem;line-height:1.5;color:var(--ink,#14304a)}.ts-day-entry-actions{display:flex;flex-wrap:wrap;gap:6px}.ts-day-entry-edit{display:flex;flex-direction:column;gap:8px}.ts-day-entry-times{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.ts-day-entry-edit .field{margin:0}.ts-day-entry-edit textarea{resize:vertical;min-height:72px}.btn-outline.danger-outline{color:#b91c1c;border-color:color-mix(in srgb,#b91c1c 35%,var(--line))}.btn-outline.danger-outline:hover{background:color-mix(in srgb,#b91c1c 8%,#fff)}.ts-skeleton-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:8px;gap:8px}.ts-skeleton-cell{aspect-ratio:1;border-radius:14px;background:linear-gradient(90deg,#eef2f5 25%,#f8fafb 50%,#eef2f5 75%);background-size:200% 100%;animation:ts-shimmer 1.2s infinite}@keyframes ts-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ts-range-modal{max-width:560px}.ts-range-tabs{display:flex;gap:6px;margin-bottom:14px}.ts-range-tabs button{flex:1 1;padding:8px 10px;border-radius:10px;border:1px solid var(--line);background:var(--panel-2,#f4f7f9);cursor:pointer;font-weight:600;font-size:.85rem}.ts-range-tabs button.on{background:color-mix(in srgb,var(--brand) 12%,#fff);border-color:var(--brand);color:var(--brand)}.ts-range-preview{margin-top:14px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2,#f4f7f9)}.ts-range-preview.has-conflicts{border-color:#fca5a5;background:#fef2f2}.ts-range-preview-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.ts-conflict-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:4px;gap:4px;font-size:.82rem}.ts-conflict-list li{display:flex;justify-content:space-between;align-items:center;gap:8px}@media (max-width:900px){.ts-month-layout{grid-template-columns:1fr}.ts-month-cell{min-height:58px}.ts-cell-status{display:none}}.hub{display:grid;grid-gap:10px;gap:10px}.hub-alerts{display:flex;flex-wrap:wrap;gap:6px}.hub-alert{position:relative;display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 14px;border-radius:999px;border:1px solid var(--line);background:#fff;text-decoration:none;color:inherit;font-size:.78rem;overflow:hidden}.hub-alert.urgent{border-color:#fca5a5;background:#fef2f2}.hub-alert.soon{border-color:#fcd34d;background:#fffbeb}.hub-alert-pulse{width:8px;height:8px;border-radius:50%;background:#dc2626;animation:hub-pulse 1.4s ease-in-out infinite}.hub-alert.soon .hub-alert-pulse{background:#d97706}@keyframes hub-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.55}}.hub-kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.hub-kpi-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 10px;display:grid;grid-gap:2px;gap:2px}.hub-kpi-card span{font-size:.68rem;color:var(--muted)}.hub-kpi-card strong{font-size:.98rem;line-height:1.2}.hub-kpi-card strong.ok{color:#0f766e}.hub-kpi-card .warn,.hub-kpi-card strong.warn{color:#b45309}.hub-kpi-card em{font-style:normal;font-size:.68rem;color:var(--muted)}.hub-bar{height:4px;border-radius:99px;background:#eef2f5;overflow:hidden;margin:4px 0}.hub-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--brand),#2a9d8f);border-radius:99px}.hub-bar.wide{margin:6px 0 2px}.hub-month-strip{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 10px;background:#fff;border:1px solid var(--line);border-radius:10px;font-size:.75rem}.hub-month-strip b{font-weight:800;-webkit-margin-end:2px;margin-inline-end:2px}.hub-month-strip .hub-bar{flex:1 1 120px;min-width:80px}.hub-quick{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));grid-gap:6px;gap:6px}.hub-quick .quick-tile{padding:8px 8px 7px;gap:4px;min-height:0}.hub-quick .quick-tile strong{font-size:.78rem}.hub-quick .quick-tile .muted{font-size:.65rem}.hub-quick .quick-tile-icon{width:28px;height:28px}.hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px;align-items:start}.hub-panel{padding:10px 12px;margin:0}.hub-panel .panel-head{margin-bottom:6px}.hub-panel h3{margin:0;font-size:.88rem}.hub-entries{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px;max-height:160px;overflow:auto}.hub-entries li{display:grid;grid-template-columns:72px 1fr auto;grid-gap:6px;gap:6px;align-items:start;font-size:.75rem;padding:5px 6px;background:var(--panel-2,#f4f7f9);border-radius:8px}.hub-entries time{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--muted);direction:ltr}.hub-report{margin-top:8px;grid-gap:6px}.hub-dl,.hub-report{display:grid;gap:6px}.hub-dl{grid-template-columns:1fr 1fr;grid-gap:6px;margin:0 0 8px}.hub-dl div{background:var(--panel-2,#f4f7f9);border-radius:8px;padding:6px 8px}.hub-dl dt{font-size:.65rem;color:var(--muted)}.hub-dl dd{margin:0;font-weight:700;font-size:.85rem}.hub-dl dd.ok{color:#0f766e}.hub-dl dd.warn{color:#b45309}.hub-week-mini{margin-top:8px;display:grid;grid-gap:6px;gap:6px}.hub-week-mini h4{margin:0;font-size:.75rem}.hub-week-mini article{font-size:.72rem;padding:6px;background:var(--panel-2,#f4f7f9);border-radius:8px}.hub-exp{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px}.hub-exp li{display:flex;justify-content:space-between;gap:8px;font-size:.75rem;padding:4px 0;border-bottom:1px dashed var(--line)}.hub-finance-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.hub-empty{font-size:.75rem;margin:6px 0}.att-compact .page-hero{padding:6px 10px;margin-bottom:8px}.att-compact .stat-strip{gap:6px;margin-bottom:8px}.att-compact .stat-strip>div{padding:6px 8px}.att-compact .panel{padding:10px 12px}.att-compact h2{font-size:.95rem;margin:0 0 6px}.att-today-timeline{list-style:none;margin:0;padding:0;display:grid;grid-gap:4px;gap:4px}.att-today-timeline li{display:grid;grid-template-columns:88px 1fr;grid-gap:8px;gap:8px;font-size:.78rem;padding:6px 8px;background:var(--panel-2,#f4f7f9);border-radius:8px}.att-today-timeline time{direction:ltr;color:var(--muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.reminder-modal-card{max-width:420px}@media (max-width:1100px){.hub-grid{grid-template-columns:1fr 1fr}}@media (max-width:800px){.hub-kpi{grid-template-columns:1fr 1fr}.hub-grid{grid-template-columns:1fr}}[data-theme=dark]{--bg:#0f1419;--bg-elevated:#1a2332;--ink:#e8eef5;--muted:#94a3b8;--line:#2d3a4d;--panel-2:#151d28;--ok:#34d399;--warn:#fbbf24;--danger:#f87171;color-scheme:dark}[data-theme=dark] .sidebar{background:linear-gradient(185deg,#0a121c,#060d14)}[data-theme=dark] .header-event.warn{background:#2a2210;border-color:#4a3a15}.topbar-compact{margin-bottom:6px;padding:4px 0;min-height:36px}.chip-xs{gap:4px}.btn-xs,.chip-xs{padding:4px 10px;font-size:.72rem}.chip-icon{padding:4px 8px;min-width:32px;justify-content:center}.chip-user{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-switcher-compact select{font-size:.78rem;padding:4px 8px;max-width:120px}.theme-toggle{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:var(--bg-elevated);border-radius:999px;padding:4px 10px;cursor:pointer;font-size:.72rem;color:var(--ink);transition:transform .15s ease,border-color .15s}.theme-toggle:hover{border-color:var(--accent);transform:scale(1.03)}.theme-toggle-label{font-weight:600}.stat-strip-tight{gap:6px;margin-bottom:8px}.stat-strip-tight>div{padding:6px 10px}.tab-pills{display:flex;gap:6px;margin-bottom:8px}.tab-pills button{border:1px solid var(--line);background:var(--bg-elevated);border-radius:999px;padding:4px 12px;font-size:.75rem;cursor:pointer}.tab-pills button.active{background:var(--brand);color:#fff;border-color:var(--brand)}.att-v2 .att-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px}.att-v2 .att-toolbar h1{margin:0;font-size:1.05rem}.att-v2 .att-toolbar p{margin:2px 0 0;font-size:.72rem}.att-toolbar-actions{display:flex;gap:4px;flex-wrap:wrap}.panel-compact{padding:8px 10px}.panel-compact h2,.panel-compact h3{font-size:.85rem;margin:0 0 6px}.tiny{font-size:.72rem}.meeting-ai-textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:10px;background:var(--bg-elevated);color:var(--ink);resize:vertical;min-height:200px;font-family:inherit;line-height:1.6}.meeting-summary{background:var(--panel-2,#f4f7f9);padding:10px;border-radius:8px;font-size:.85rem;line-height:1.7}.ai-items-list{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:8px;gap:8px}.ai-items-list li{display:grid;grid-template-columns:28px 1fr;grid-gap:8px;gap:8px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--bg-elevated)}.ai-items-list li.dim{opacity:.55}.ai-item-title{width:100%;border:1px solid var(--line);border-radius:6px;padding:6px 8px;font:inherit;background:transparent;color:inherit}.ai-item-meta{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px;margin-top:6px}.ai-empty{text-align:center;padding:32px 12px;color:var(--muted)}.ai-usage-log{list-style:none;margin:0;padding:0;font-size:.75rem}.ai-usage-log li{display:flex;gap:12px;padding:4px 0;border-bottom:1px solid var(--line)}.ai-status-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 10px;border-radius:8px;font-size:.72rem;border:1px solid var(--line);background:var(--bg-elevated)}.ai-status-bar.ok{border-color:#9fd4c4;background:#ecfdf8}.ai-status-bar.warn{border-color:#f0d9a8;background:#fff8eb}[data-theme=dark] .ai-status-bar.ok{background:#0f2a24;border-color:#1b7a6e}[data-theme=dark] .ai-status-bar.warn{background:#2a2210;border-color:#4a3a15}.insurance-form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;padding:8px;background:var(--panel-2,#f4f7f9);border-radius:8px}.insurance-form-grid .full-span{grid-column:1/-1}.insurance-form-grid span{display:block;font-size:.68rem;color:var(--muted)}.settlement-ins-row td{background:transparent!important}@media (max-width:900px){.insurance-form-grid{grid-template-columns:1fr 1fr}.theme-toggle-label{display:none}.tamin-cols{grid-template-columns:1fr}.month-close-steps{grid-template-columns:1fr 1fr}}.banner-ok{padding:8px 12px;border-radius:8px;background:#ecfdf8;border:1px solid #9fd4c4;color:#0f5132;margin-bottom:12px;font-size:.85rem}[data-theme=dark] .banner-ok{background:#0f2a24;border-color:#1b7a6e;color:#a7f3d0}.month-close-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:12px}.month-close-step{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--panel);cursor:pointer;text-align:right;position:relative}.month-close-step.done{border-color:#9fd4c4;background:#f0fdf9}.month-close-step.active{border-color:var(--brand,#1b7a6e);box-shadow:0 0 0 1px var(--brand,#1b7a6e)}[data-theme=dark] .month-close-step.done{background:#0f2a24}.month-close-step .step-title{font-size:.78rem;font-weight:600}.month-close-step .step-progress{font-size:.68rem;color:var(--muted)}.month-close-step .step-check{position:absolute;left:10px;top:10px;color:#1b7a6e;font-weight:700}.month-close-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.month-close-tabs button{border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:6px 14px;font-size:.78rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.month-close-tabs button.active{background:var(--brand,#1b7a6e);color:#fff;border-color:transparent}.tamin-sheet{padding:8px 4px}.tamin-alert{padding:8px 10px;border-radius:8px;background:#fff8eb;border:1px solid #f0d9a8;margin-bottom:10px;font-size:.78rem}[data-theme=dark] .tamin-alert{background:#2a2210;border-color:#4a3a15}.tamin-cols{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.tamin-cols h4{margin:0 0 8px;font-size:.82rem}.tamin-fields{display:grid;grid-gap:6px;gap:6px}.tamin-field{padding:8px 10px;border-radius:8px;border:1px solid var(--line);background:var(--panel)}.tamin-field.highlight{border-color:#f0d9a8;background:#fffdf5}[data-theme=dark] .tamin-field.highlight{background:#2a2210}.tamin-field span{display:block;font-size:.68rem;color:var(--muted)}.tamin-value-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:2px}.tamin-value-row strong{font-size:.82rem}.copy-btn{flex-shrink:0}.payout-modal{padding:16px}.payout-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin:12px 0}.payout-summary>div{padding:8px;border-radius:8px;border:1px solid var(--line);font-size:.75rem}.payout-summary>div.highlight{grid-column:1/-1;border-color:var(--brand,#1b7a6e);background:#f0fdf9}.payout-summary span{display:block;color:var(--muted);font-size:.68rem}.row-actions{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end}.panel-head-note{padding:8px 12px 0}.reminder-menu,.reminder-menu-btn{position:relative}.reminder-menu-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:200;width:min(320px,90vw);background:var(--panel);border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 24px rgba(15,32,51,.12);padding:8px}.reminder-menu-head{display:flex;align-items:center;justify-content:space-between;padding:4px 4px 8px;border-bottom:1px solid var(--line);margin-bottom:6px}.reminder-menu-list{list-style:none;margin:0;padding:0;max-height:280px;overflow:auto}.reminder-menu-list li a{display:flex;flex-direction:column;gap:2px;padding:8px;border-radius:6px;font-size:.78rem;text-decoration:none;color:inherit}.reminder-menu-list li a:hover{background:var(--bg-elevated)}.reminder-menu-list li a.warn{border-right:3px solid #e67e22}.reminder-menu-list li a small{color:var(--muted);font-size:.68rem}.reminder-menu-empty{padding:12px 8px;margin:0}.readiness-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:10px;margin-bottom:12px;border:1px solid var(--line);font-size:.85rem}.readiness-banner p{margin:4px 0 0;color:var(--muted);font-size:.78rem}.readiness-banner.ok{background:#ecfdf8;border-color:#9fd4c4}.readiness-banner.blocked{background:#fef2f2;border-color:#fecaca}[data-theme=dark] .readiness-banner.ok{background:#0f2a24;border-color:#1b7a6e}[data-theme=dark] .readiness-banner.blocked{background:#2a1515;border-color:#7a1b1b}.org-status-strip strong.text-danger,.text-danger{color:#b42318}.text-ok{color:#047857}.blockers-box{margin:8px 12px;padding:10px 12px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;font-size:.8rem}.blockers-box.soft{background:#f8fafc;border-color:var(--line)}.work-period-chip{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px;padding:10px 14px;margin-bottom:10px;border-radius:10px;border:1px solid var(--line);background:var(--panel);font-size:.82rem}.work-period-chip strong{color:var(--brand,#1b7a6e)}.status-toolbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}.status-toolbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.btn-ghost{background:transparent;border:none;color:var(--muted);cursor:pointer;font-size:.75rem}.col-check{width:44px;text-align:center}.status-org-table .row-ready{background:rgba(236,253,245,.65)}.status-org-table .row-ready.row-picked{background:rgba(167,243,208,.45);box-shadow:inset 3px 0 0 #059669}.status-org-table .row-blocked{background:rgba(248,250,252,.9);opacity:.78}[data-theme=dark] .status-org-table .row-ready{background:rgba(6,78,59,.28)}[data-theme=dark] .status-org-table .row-ready.row-picked{background:rgba(6,95,70,.45)}[data-theme=dark] .status-org-table .row-blocked{background:rgba(30,35,40,.6);opacity:.7}.chip-ok{background:#ecfdf8;border-color:#9fd4c4;color:#047857}.picked-names{list-style:none;margin:0 0 12px;padding:0;max-height:180px;overflow:auto}.picked-name-ok{padding:6px 10px;margin-bottom:4px;border-radius:8px;background:#ecfdf8;border:1px solid #a7f3d0;font-size:.85rem}[data-theme=dark] .picked-name-ok{background:#0f2a24;border-color:#1b7a6e}.blockers-box ul{margin:6px 0 0;padding-right:18px}[data-theme=dark] .blockers-box{background:#2a1515;border-color:#7a1b1b}[data-theme=dark] .blockers-box.soft{background:#1a1f24;border-color:var(--line)}.deficit-link,.linkish{background:none;border:none;color:var(--brand,#1b7a6e);cursor:pointer;padding:0;font:inherit;text-decoration:underline;text-underline-offset:2px}.issue-days-panel{padding:8px}.issue-days-title{font-size:.82rem;font-weight:600;margin:0 0 8px}.issue-explain{font-size:.72rem;color:var(--muted);max-width:320px}.tone-row.tone-absent{background:hsla(0,93%,94%,.4)}.tone-row.tone-deficit{background:hsla(48,96%,89%,.45)}.tone-row.tone-open{background:hsla(32,98%,83%,.4)}.lock-dot{font-size:.7rem;margin-right:4px}.wizard-confirm{padding:16px}.wizard-month-q{font-size:1rem;margin:8px 0 12px}.panel-head-note{padding:10px 12px 4px}.panel-head-note strong{display:block;margin-bottom:2px}.mc-hero .mc-period-line{margin:6px 0 0;font-size:.88rem}.mc-hero-bar{flex-wrap:wrap;gap:10px;justify-content:flex-end}.mc-hero-bar,.mc-period-pick{display:flex;align-items:center}.mc-period-pick{gap:6px}.mc-period-pick input,.mc-period-pick select{height:36px;border-radius:8px;border:1px solid var(--line);padding:0 10px;background:var(--panel)}.mc-period-pick input{width:88px}.mc-steps{list-style:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:6px;gap:6px;margin:0 0 14px;padding:0}.mc-steps li button{width:100%;display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--panel);cursor:pointer;font-size:.78rem;text-align:right}.mc-steps li button:disabled{opacity:.45;cursor:not-allowed}.mc-steps li.active button{border-color:var(--brand,#1b7a6e);box-shadow:0 0 0 1px var(--brand,#1b7a6e);font-weight:600}.mc-steps li.done button{border-color:#9fd4c4;background:#f0fdf9}.mc-steps .n{width:22px;height:22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--bg-elevated,#eef2f5);font-size:.72rem;font-weight:700;flex-shrink:0}.mc-steps li.active .n{background:var(--brand,#1b7a6e);color:#fff}.mc-summary-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px;margin-bottom:12px}.mc-summary-row>div{padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--panel)}.mc-summary-row span{display:block;font-size:.68rem;color:var(--muted)}.mc-summary-row strong{font-size:.9rem}.mc-footer-actions{display:flex;justify-content:flex-end;padding:12px;border-top:1px solid var(--line)}.mc-callout{margin:8px 12px;padding:12px 14px;border-radius:10px;font-size:.85rem;line-height:1.7}.mc-callout.warn{background:#fff8eb;border:1px solid #f0d9a8}.mc-row-finalized{background:#eef8f2}.mc-row-finalized td:first-child strong:after{content:" · نهایی";color:#1a7f4b;font-weight:600;font-size:.78em}.mc-row-debt{background:#fff8eb}[data-theme=dark] .mc-row-finalized{background:#0f2a1c}[data-theme=dark] .mc-row-finalized td:first-child strong:after{color:#6ee7a8}[data-theme=dark] .mc-row-debt{background:#2a2210}.mc-callout p{margin:0}.mc-inline-link{display:inline;white-space:nowrap;font-weight:600;color:var(--brand,#1b7a6e);text-decoration:underline;text-underline-offset:2px}[data-theme=dark] .mc-callout.warn{background:#2a2210;border-color:#4a3a15}[data-theme=dark] .mc-steps li.done button{background:#0f2a24}@media (max-width:900px){.mc-steps,.mc-summary-row{grid-template-columns:1fr 1fr}}