@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/vazirmatn-arabic-wght-normal.17kulbwbqyr3x.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/vazirmatn-latin-ext-wght-normal.25-3vv1h640gq.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(../media/vazirmatn-latin-wght-normal.1z7ud83nnnm99.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--background:#f8fafc;--sidebar:#fff;--surface:#fff;--surface-strong:#f1f5f9;--surface-hover:#eef2f7;--border:#e2e8f0;--border-strong:#cbd5e1;--text:#0f172a;--muted:#64748b;--muted-strong:#475569;--accent:#0f766e;--accent-strong:#0d9488;--accent-soft:#ccfbf1;--accent-foreground:#fff;--danger:#dc2626;--danger-soft:#fee2e2;--warning:#b45309;--warning-soft:#fef3c7;--info:#1d4ed8;--info-soft:#dbeafe;--purple:#7e22ce;--purple-soft:#f3e8ff;--shadow:0 8px 28px #0f172a12;--shadow-soft:0 2px 10px #0f172a0a;--radius:10px;--radius-lg:16px}:root[data-theme=dark]{--background:#0b1018;--sidebar:#0f172a;--surface:#111827;--surface-strong:#1f2937;--surface-hover:#182234;--border:#273244;--border-strong:#354258;--text:#f8fafc;--muted:#94a3b8;--muted-strong:#cbd5e1;--accent:#2dd4bf;--accent-strong:#5eead4;--accent-soft:#123d3b;--accent-foreground:#042f2e;--danger:#fb7185;--danger-soft:#401d29;--warning:#fbbf24;--warning-soft:#402f16;--info:#60a5fa;--info-soft:#172c4c;--purple:#c084fc;--purple-soft:#33204c;--shadow:0 10px 35px #0003;--shadow-soft:0 3px 12px #0000001f}*{box-sizing:border-box}html{background:var(--background);color:var(--text);min-width:320px}body{background:var(--background);min-height:100vh;color:var(--text);text-rendering:optimizelegibility;margin:0;font-family:Vazirmatn Variable,Vazirmatn,Segoe UI,Tahoma,sans-serif;font-size:15px;line-height:1.6}button,input,textarea,select{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 42%, transparent);outline-offset:2px}::selection{background:var(--accent);color:var(--accent-foreground)}.primary-button,.outline-button,.toolbar-button{border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 18px;font-size:14px;font-weight:650;transition:border-color .16s,background .16s,color .16s,transform .16s;display:inline-flex}.primary-button{border:1px solid var(--accent);background:var(--accent);color:var(--accent-foreground)}:root[data-theme=light] .primary-button{color:#fff}.primary-button:hover{background:var(--accent-strong);border-color:var(--accent-strong);transform:translateY(-1px)}.primary-button:disabled{cursor:wait;opacity:.7;transform:none}.outline-button,.toolbar-button{border:1px solid var(--border-strong);color:var(--text);background:0 0}.outline-button:hover,.toolbar-button:hover{background:var(--surface-hover);border-color:var(--accent)}.primary-button svg,.outline-button svg,.toolbar-button svg{stroke-width:1.8px;width:20px;height:20px}.icon-button{width:42px;height:42px;color:var(--muted-strong);background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;transition:background .16s,color .16s,border-color .16s;display:inline-grid;position:relative}.icon-button:hover{background:var(--surface-strong);color:var(--text);border-color:var(--border)}.icon-button svg{stroke-width:1.8px;width:21px;height:21px}.text-button{color:var(--accent);background:0 0;border:0;padding:4px;font-size:13px;font-weight:600}.text-button:hover{color:var(--accent-strong)}.login-page{place-items:center;min-height:100vh;padding:40px 20px 72px;display:grid;position:relative;overflow:hidden}.login-page:before,.login-page:after{content:"";background:color-mix(in srgb, var(--accent) 6%, transparent);filter:blur(1px);pointer-events:none;border-radius:50%;width:420px;height:420px;position:fixed}.login-page:before{inset:-240px -160px auto auto}.login-page:after{inset:auto auto -280px -170px}.login-theme{z-index:2;position:fixed;inset:22px 22px auto auto}.login-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:min(100%,470px);box-shadow:var(--shadow);z-index:1;padding:34px 38px 30px;position:relative}.login-brand{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding-bottom:26px;display:flex}.login-brand img{object-fit:contain}.login-brand div{flex-direction:column;display:flex}.login-brand strong{letter-spacing:-.3px;font-size:20px;font-weight:760}.login-brand span{color:var(--muted);font-size:12px}.login-copy{margin:28px 0 25px}.login-copy h1{margin:0 0 6px;font-size:25px;font-weight:730;line-height:1.4}.login-copy p,.dialog-header p{color:var(--muted);margin:0;font-size:14px}.login-form{gap:18px;display:grid}.field-group{gap:7px;display:grid}.field-group label{color:var(--muted-strong);font-size:13px;font-weight:650}.field-label-row{justify-content:space-between;align-items:center;display:flex}.input-wrap{border:1px solid var(--border-strong);background:var(--background);border-radius:8px;align-items:center;gap:10px;min-height:48px;padding:0 13px;transition:border-color .16s,box-shadow .16s;display:flex}.input-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 13%, transparent)}.input-wrap>svg{color:var(--muted);width:19px;height:19px}.input-wrap input{background:0 0;border:0;outline:0;width:100%;height:46px;font-size:14px}.input-wrap input::placeholder,textarea::placeholder{color:color-mix(in srgb, var(--muted) 72%, transparent)}.input-action{width:34px;height:34px;color:var(--muted);background:0 0;border:0;place-items:center;padding:0;display:grid}.input-action svg{width:18px;height:18px}.form-error{background:var(--danger-soft);color:var(--danger);border-radius:8px;margin:-5px 0 0;padding:10px 12px;font-size:13px}.login-submit{width:100%;margin-top:2px}.login-hint{color:var(--muted);text-align:center;margin:-5px 0 0;font-size:12px}.security-note{border-top:1px solid var(--border);color:var(--muted);justify-content:center;align-items:center;gap:8px;margin-top:26px;padding-top:18px;font-size:12px;display:flex}.security-note svg{width:17px;height:17px;color:var(--accent)}.login-footer{text-align:center;color:var(--muted);z-index:1;font-size:12px;position:fixed;inset:auto 0 22px}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{background:var(--background);min-height:100vh}.sidebar{background:var(--sidebar);border-left:1px solid var(--border);z-index:50;flex-direction:column;width:288px;display:flex;position:fixed;inset:0 0 0 auto}.sidebar-brand{border-bottom:1px solid var(--border);align-items:center;gap:13px;min-height:126px;padding:22px 24px 18px;display:flex}.sidebar-brand img{object-fit:contain;flex:none}html[data-theme=dark] .login-brand img,html[data-theme=dark] .sidebar-brand img{filter:invert()grayscale()brightness(1.35)}.sidebar-brand>div{flex-direction:column;min-width:0;display:flex}.sidebar-brand strong{white-space:nowrap;font-size:20px;font-weight:760}.sidebar-brand span{color:var(--muted);white-space:nowrap;font-size:11px}.sidebar-close{display:none}.sidebar-nav{scrollbar-width:thin;flex:1;padding:16px 10px;overflow:auto}.nav-item{width:100%;min-height:50px;color:var(--muted-strong);text-align:right;background:0 0;border:0;border-radius:8px;align-items:center;gap:14px;padding:0 18px;font-size:14px;font-weight:580;transition:background .15s,color .15s;display:flex}.nav-item:hover{background:var(--surface-hover);color:var(--text)}.nav-item-active{background:var(--accent-soft);color:var(--accent-strong);font-weight:700;position:relative}.nav-item-active:before{content:"";background:var(--accent);border-radius:3px 0 0 3px;width:3px;position:absolute;inset:0 auto 0 -10px}.nav-item svg{stroke-width:1.7px;flex:none;width:22px;height:22px}.sidebar-collapse{border:0;border-top:1px solid var(--border);min-height:68px;color:var(--muted);text-align:right;background:0 0;align-items:center;gap:13px;padding:0 24px;font-size:13px;display:flex}.sidebar-collapse:hover{color:var(--text);background:var(--surface-hover)}.sidebar-collapse svg{width:19px}.app-content{flex-direction:column;min-height:100vh;margin-right:288px;display:flex}.topbar{border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--background) 92%, transparent);z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex:0 0 78px;align-items:center;gap:20px;height:78px;padding:0 28px;display:flex;position:sticky;top:0}.mobile-menu{display:none}.account-switcher{align-items:center;gap:11px;min-width:220px;display:flex}.account-avatar{border:1px solid var(--border-strong);width:42px;height:42px;color:var(--muted-strong);border-radius:50%;place-items:center;display:grid}.account-avatar svg{width:21px}.account-switcher>div:nth-child(2){flex-direction:column;display:flex}.account-switcher strong{font-size:13px}.account-switcher span{color:var(--muted);font-size:11px}.account-chevron{width:16px;color:var(--muted);transform:rotate(-90deg)}.topbar-actions{align-items:center;gap:2px;display:flex}.notification-button>span{background:var(--accent);min-width:18px;height:18px;color:var(--accent-foreground);border-radius:9px;place-items:center;font-size:10px;display:grid;position:absolute;inset:0 auto auto -2px}.today{color:var(--muted);align-items:center;gap:9px;margin-right:auto;font-size:13px;display:flex}.today svg{width:19px;height:19px}.main-area{flex:1;width:100%;max-width:1600px;margin:0 auto;padding:34px 28px 28px}.page-heading{justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:30px;display:flex}.page-heading h1{letter-spacing:-.7px;margin:0;font-size:clamp(26px,2vw,34px);font-weight:760;line-height:1.35}.page-heading p{color:var(--muted);margin:5px 0 0;font-size:14px}.heading-actions{gap:12px;display:flex}.quick-panel,.data-panel,.workspace-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft)}.quick-panel{margin-bottom:24px}.panel-title{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:58px;padding:0 18px;display:flex}.panel-title h2{align-items:center;gap:9px;margin:0;font-size:15px;font-weight:720;display:flex}.panel-title h2 svg{stroke-width:1.8px;width:19px;height:19px;color:var(--muted-strong)}.panel-title>button:not(.text-button){color:var(--muted);background:0 0;border:0;place-items:center;display:grid}.panel-title>button svg{width:19px;height:19px}.quick-links{grid-template-columns:repeat(4,1fr);min-height:116px;padding:16px 0;display:grid}.quick-links>button{border:0;border-left:1px solid var(--border);color:var(--text);text-align:right;background:0 0;justify-content:center;align-items:center;gap:17px;padding:15px 24px;transition:background .15s;display:flex}.quick-links>button:last-child{border-left:0}.quick-links>button:hover{background:var(--surface-hover)}.quick-links>button>svg{stroke-width:1.55px;width:36px;height:36px;color:var(--accent-strong)}.quick-links>button>span{flex-direction:column;gap:2px;display:flex}.quick-links strong{font-size:14px;font-weight:700}.quick-links small{color:var(--muted);white-space:nowrap;font-size:11px}.dashboard-columns{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px;display:grid}.data-panel{flex-direction:column;min-height:540px;display:flex;overflow:hidden}.panel-date{color:var(--muted);margin:12px 18px 7px;font-size:11px}.schedule-list,.notice-list,.task-list{flex:1;padding:0 12px}.schedule-row{border:1px solid var(--border);border-radius:8px;grid-template-columns:58px 10px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:72px;margin-bottom:7px;padding:8px 12px;display:grid}.schedule-row time{color:var(--muted-strong);text-align:center;direction:ltr;font-size:12px}.schedule-dot{background:var(--accent);border-radius:50%;width:8px;height:8px}.schedule-row>div{flex-direction:column;min-width:0;display:flex}.schedule-row strong,.notice-row strong,.task-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:660;overflow:hidden}.schedule-row small,.notice-row small,.task-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.schedule-room{color:var(--muted-strong);white-space:nowrap;font-size:11px}.schedule-break{background:var(--surface-strong);min-height:48px}.schedule-break .schedule-dot,.schedule-break .schedule-room,.schedule-break small{display:none}.notice-row,.task-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 12px;min-height:83px;padding:11px 4px;display:grid}.notice-row>div,.task-row>div{flex-direction:column;min-width:0;display:flex}.notice-row time,.task-row time{color:var(--muted);grid-column:1;font-size:10px}.status-tag{white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;width:max-content;max-width:130px;min-height:24px;padding:2px 7px;font-size:9px;line-height:1.4;display:inline-flex}.status-teal{background:var(--accent-soft);color:var(--accent-strong)}.status-blue{background:var(--info-soft);color:var(--info)}.status-purple{background:var(--purple-soft);color:var(--purple)}.status-amber{background:var(--warning-soft);color:var(--warning)}.status-red{background:var(--danger-soft);color:var(--danger)}.status-neutral{background:var(--surface-strong);color:var(--muted-strong)}.panel-footer-action{border:0;border-top:1px solid var(--border);width:100%;min-height:54px;color:var(--muted);background:0 0;justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.panel-footer-action:hover{color:var(--accent-strong);background:var(--surface-hover)}.panel-footer-action svg{width:17px;height:17px}.workspace-panel{overflow:hidden}.workspace-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;min-height:78px;padding:15px 18px;display:flex}.workspace-toolbar>div{align-items:center;gap:10px;display:flex}.search-box{border:1px solid var(--border-strong);background:var(--background);border-radius:8px;align-items:center;gap:10px;width:min(100%,390px);min-height:45px;padding:0 13px;display:flex}.search-box:focus-within{border-color:var(--accent)}.search-box svg{width:18px;color:var(--muted)}.search-box input{background:0 0;border:0;outline:0;width:100%;height:43px;font-size:13px}.table-wrap{min-height:480px;overflow-x:auto}table{border-collapse:collapse;text-align:right;width:100%}th,td{border-bottom:1px solid var(--border);white-space:nowrap;height:60px;padding:0 22px}th{background:var(--surface-strong);height:48px;color:var(--muted-strong);font-size:11px;font-weight:680}td{font-size:13px}tbody tr:hover{background:var(--surface-hover)}.empty-table{min-height:310px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-table svg{stroke-width:1.4px;width:42px;height:42px;margin-bottom:12px}.empty-table strong{color:var(--text);font-size:15px}.empty-table span{font-size:12px}.app-footer{border-top:1px solid var(--border);min-height:66px;color:var(--muted);justify-content:space-between;align-items:center;padding:0 28px;font-size:11px;display:flex}.app-footer>div{align-items:center;gap:9px;display:flex}.app-footer svg{width:19px;height:19px;margin-right:10px}.dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#020617ad;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(100%,520px);box-shadow:var(--shadow);overflow:hidden}.dialog-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 24px 18px;display:flex}.dialog-header h2{margin:0 0 3px;font-size:20px}.dialog form{gap:18px;padding:22px 24px 24px;display:grid}.dialog textarea{resize:vertical;border:1px solid var(--border-strong);background:var(--background);border-radius:8px;outline:none;min-height:104px;padding:12px 14px;font-size:13px}.dialog textarea:focus{border-color:var(--accent)}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:2px;display:flex}.toast{background:var(--surface-strong);border:1px solid var(--border-strong);min-width:260px;max-width:min(420px,100vw - 48px);min-height:48px;box-shadow:var(--shadow);color:var(--text);opacity:0;pointer-events:none;z-index:120;border-radius:8px;align-items:center;padding:12px 16px;font-size:13px;transition:opacity .18s,transform .18s;display:flex;position:fixed;inset:auto auto 24px 24px;transform:translateY(8px)}.toast:not(:empty){opacity:1;transform:none}.center-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-height:100vh;padding:30px;display:flex}.center-state h1,.center-state p{margin:0}.center-state p{color:var(--muted)}.loader{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;animation:.8s linear infinite spin}@media (max-width:1240px){.dashboard-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-panel{grid-column:1/-1}.quick-links>button{padding-inline:14px}}@media (max-width:1024px){.sidebar{box-shadow:var(--shadow);transition:transform .22s;transform:translate(105%)}.sidebar-open{transform:none}.sidebar-close{background:var(--surface-strong);border:0;border-radius:50%;place-items:center;width:36px;height:36px;margin-right:auto;display:grid}.sidebar-close svg{width:18px}.sidebar-backdrop{z-index:45;background:#02061794;border:0;position:fixed;inset:0}.app-content{margin-right:0}.mobile-menu{border:1px solid var(--border);background:var(--surface);border-radius:8px;place-items:center;width:42px;height:42px;display:grid}.mobile-menu svg{width:21px}.account-switcher{min-width:0}.today{display:none}.topbar-actions{margin-right:auto}}@media (max-width:760px){.login-panel{padding:28px 22px 24px}.topbar{gap:10px;padding-inline:14px}.account-avatar,.account-chevron,.account-switcher span,.topbar-actions .icon-button:nth-child(2),.topbar-actions .icon-button:last-child{display:none}.account-switcher{flex:1}.account-switcher strong{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.main-area{padding:24px 14px 20px}.page-heading{flex-direction:column;gap:18px;margin-bottom:22px}.heading-actions{width:100%}.heading-actions>button{flex:1;padding-inline:10px}.quick-links{grid-template-columns:repeat(2,1fr);padding:0}.quick-links>button{border-bottom:1px solid var(--border);min-height:100px}.quick-links>button:nth-child(2){border-left:0}.quick-links>button:nth-last-child(-n+2){border-bottom:0}.quick-links>button>svg{width:30px;height:30px}.quick-links small{display:none}.dashboard-columns{grid-template-columns:1fr}.schedule-panel{grid-column:auto}.data-panel{min-height:auto}.workspace-toolbar{flex-direction:column;align-items:stretch}.workspace-toolbar>div,.search-box{width:100%}.workspace-toolbar>div:last-child>button{flex:1}.app-footer{flex-direction:column;gap:8px;padding:16px}.dialog-backdrop{align-items:end;padding:0}.dialog{border-radius:16px 16px 0 0;width:100%}.toast{min-width:0;max-width:none;inset:auto 16px 16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
