:root{--bg:#f7f9fd;--surface:#fff;--text:#17253b;--muted:#718096;--line:#e5eaf2;--primary:#5a73f7;--mint:#27bea0;--cyan:#45b9d8;--amber:#f2b94b;--rose:#e96578;--violet:#846ef3;--shadow:0 20px 60px rgba(29,55,90,.09);font-family:"IBM Plex Sans Arabic","Noto Kufi Arabic","Tajawal",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Tahoma,Arial,sans-serif}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text)}body{background:radial-gradient(circle at 6% 0,#eef3ff 0,transparent 28%),radial-gradient(circle at 100% 20%,#eafaf5 0,transparent 24%),#f7f9fd}button,input,select,textarea{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.fp-topbar{position:sticky;top:0;z-index:70;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;padding:12px max(16px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.9);backdrop-filter:blur(20px);border-bottom:1px solid rgba(224,230,239,.88)}.back-btn{justify-self:start;display:inline-flex;align-items:center;gap:7px;text-decoration:none;color:#64748b;font-size:12px;font-weight:850;padding:9px 11px;border-radius:12px}.back-btn:hover{background:#f2f4f8}.back-arrow{font-size:17px}.fp-brand{justify-self:center;display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}.fp-logo{width:43px;height:43px;border-radius:14px;box-shadow:0 9px 24px rgba(80,102,204,.17)}.brand-name{display:flex;align-items:center;gap:7px}.fp-brand strong{font-size:16px;font-weight:950}.fp-brand em{font-style:normal;font-size:8px;letter-spacing:1.4px;color:var(--primary);font-weight:950;background:#eef1ff;border-radius:999px;padding:3px 6px}.fp-brand small{display:block;color:var(--muted);font-size:9px;margin-top:2px}.lang-switch{justify-self:end;display:flex;padding:4px;background:#f2f4f8;border:1px solid var(--line);border-radius:13px}.lang-switch button{border:0;background:transparent;color:#7a8798;padding:7px 10px;border-radius:9px;font-weight:850}.lang-switch button.active{background:#fff;color:var(--primary);box-shadow:0 4px 12px rgba(36,58,96,.08)}.container{max-width:1180px;margin:auto;padding:26px 18px 92px}.hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 32px;border:1px solid #e2e7f1;border-radius:30px;background:linear-gradient(135deg,#fff 0%,#f5f7ff 62%,#eefbf7 100%);box-shadow:var(--shadow)}.hero:after{content:"";position:absolute;width:250px;height:250px;border-radius:50%;background:rgba(90,115,247,.05);inset-inline-end:-100px;top:-130px}.hero-copy{position:relative;z-index:1}.eyebrow{display:inline-flex;font-size:11px;font-weight:900;color:#5068d9;background:#eef1ff;border:1px solid #dfe5ff;padding:7px 11px;border-radius:999px}.hero h1{font-size:clamp(29px,4.5vw,46px);line-height:1.2;margin:14px 0 8px;letter-spacing:-1px}.hero p{color:var(--muted);line-height:1.8;margin:0;max-width:700px;font-size:13px}.hero-actions{position:relative;z-index:1;display:flex;gap:9px;flex-wrap:wrap}.stats-btn,.export-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;white-space:nowrap;border:1px solid #dee5f0;padding:12px 15px;border-radius:14px;font-weight:900;font-size:12px}.stats-btn{background:#eef1ff;color:#536ce6;border-color:#e0e5ff}.export-btn{background:#eafaf5;color:#219d83;border-color:#d5f0e7}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:16px}.stat-card{display:flex;align-items:center;gap:11px;padding:15px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 26px rgba(31,55,91,.045)}.stat-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-size:18px;font-weight:950;flex:none}.stat-card.blue .stat-icon{background:#eef1ff;color:#586fe6}.stat-card.green .stat-icon{background:#eaf9f4;color:#219d83}.stat-card.amber .stat-icon{background:#fff7e8;color:#b67d16}.stat-card.purple .stat-icon{background:#f2efff;color:#7963df}.stat-card span{display:block;color:var(--muted);font-size:10px}.stat-card strong{display:block;font-size:25px;margin-top:2px}.content-grid{display:block;margin-top:16px}.panel{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}.form-panel{padding:26px}.panel-head,.records-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.panel-head h2,.records-head h2{font-size:21px;margin:8px 0 5px}.panel-head p,.records-head p{color:var(--muted);font-size:11px;margin:0}.step{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:23px;border-radius:999px;background:#eef1ff;color:#536ce6;font-size:9px;font-weight:950;letter-spacing:.6px}.guide-open-btn{display:inline-flex;align-items:center;gap:8px;flex:none;border:1px solid #dfe6f3;background:#fafbff;color:#536ce6;padding:10px 13px;border-radius:13px;font-weight:900}.guide-help-icon{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:#eef1ff}.fp-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:23px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:12px;font-weight:900;color:#34475e}.field input,.field select,.field textarea{width:100%;border:1px solid #dce3ed;background:#fbfcfe;color:var(--text);border-radius:14px;padding:13px 14px;outline:0;transition:.18s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#9baaf5;box-shadow:0 0 0 4px rgba(90,115,247,.08);background:#fff}.field input[readonly]{background:#f2f4f7;color:#6b7889}.field-hint{display:block;color:#8a98a9;font-size:10px;line-height:1.6}.executor-picker{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px}.add-executor-btn{border:1px solid #d3eee5;border-radius:14px;background:#eafaf5;color:#219d83;font-size:24px;font-weight:950}.add-executor-btn:hover{background:#def6ee}.school-field{position:relative}.school-picker{position:relative}.school-search-box{display:flex;align-items:center;gap:8px;border:1px solid #dce3ed;background:#fbfcfe;border-radius:14px;padding:0 11px}.school-search-box:focus-within{border-color:#9baaf5;box-shadow:0 0 0 4px rgba(90,115,247,.08);background:#fff}.school-search-box input{border:0!important;box-shadow:none!important;background:transparent!important;padding-inline:3px!important}.school-search-icon{color:#7182e8;font-size:20px}.school-search-clear{display:none;border:0;background:#edf1f6;color:#6c7a8b;width:29px;height:29px;border-radius:9px;font-size:19px}.school-search-clear.show{display:grid;place-items:center}.school-picker select{margin-top:8px}.school-suggestions{position:absolute;z-index:60;top:52px;inset-inline:0;background:#fff;border:1px solid #dfe5ee;border-radius:16px;box-shadow:0 20px 55px rgba(37,59,93,.16);max-height:330px;overflow:auto;padding:6px}.school-suggestion{width:100%;border:0;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:start;padding:11px 12px;border-radius:11px;color:var(--text)}.school-suggestion:hover{background:#f3f5ff}.school-suggestion strong{display:block;font-size:12px}.school-suggestion small{display:block;color:#8795a7;font-size:9px;margin-top:3px}.school-code-mini{flex:none;background:#eef1ff;color:#536ce6;font-weight:900;font-size:9px;border-radius:999px;padding:5px 8px}.school-suggestion.manual{background:#fff9ec;color:#8b651f}.form-actions{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding-top:2px}.save-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:linear-gradient(135deg,#5a73f7,#34b9bb);color:#fff;font-weight:950;padding:13px 20px;border-radius:14px;box-shadow:0 12px 28px rgba(77,105,221,.21)}.save-btn:disabled{opacity:.65}.save-icon{font-size:15px}.form-actions>span{font-size:11px;color:#6f7e90}.records-panel{margin-top:16px;padding:24px}.record-search{display:flex;align-items:center;gap:7px;min-width:260px;border:1px solid #e0e5ed;background:#fafbfe;border-radius:13px;padding:0 11px}.record-search span{color:#7788e6}.record-search input{width:100%;border:0;background:transparent;outline:0;padding:11px 0}.table-wrap{overflow:auto;margin-top:16px;border:1px solid var(--line);border-radius:17px}table{width:100%;border-collapse:collapse;min-width:980px;background:#fff}th,td{padding:11px;border-bottom:1px solid #edf0f4;text-align:start;font-size:11px;vertical-align:top}th{background:#f6f8fc;color:#607187;white-space:nowrap;font-weight:900}tbody tr:hover{background:#fbfcff}.status{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:9px;font-weight:950;white-space:nowrap}.status.complete{background:#e9f8f3;color:#20856f}.status.progress{background:#fff6df;color:#9b6a0f}.status.blocked{background:#fff0f2;color:#bd5667}.empty-records{text-align:center;color:var(--muted);padding:26px;font-size:11px}.guide-modal,.executor-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:18px}.guide-modal-backdrop,.executor-modal-backdrop{position:absolute;inset:0;background:rgba(22,34,55,.38);backdrop-filter:blur(9px)}.guide-modal-card,.executor-modal-card{position:relative;z-index:1;width:min(520px,100%);max-height:88vh;overflow:auto;background:linear-gradient(180deg,#fff,#fbfcff);border:1px solid #e0e6ef;border-radius:28px;padding:29px;box-shadow:0 35px 100px rgba(24,43,75,.25)}.guide-close-btn,.executor-modal-close{position:absolute;top:14px;inset-inline-end:14px;width:36px;height:36px;border:1px solid #e3e7ee;border-radius:11px;background:#f5f7fa;color:#64748b;font-size:23px}.modal-logo{width:55px;height:55px;border-radius:17px;margin-bottom:12px;box-shadow:0 10px 25px rgba(77,96,190,.15)}.guide-kicker,.executor-modal-kicker{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef1ff;border:1px solid #e0e5ff;color:#536ce6;font-size:9px;font-weight:950}.guide-modal-card h2,.executor-modal-card h2{margin:10px 0 5px;font-size:23px}.guide-modal-sub,.executor-modal-sub{margin:0 0 14px;color:var(--muted);font-size:11px;line-height:1.7}.guide-item{display:flex;gap:11px;padding:13px 0;border-bottom:1px dashed #e5e9ef}.guide-item b{flex:none;width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#eef1ff;color:#536ce6}.guide-item p{margin:3px 0 0;color:#53667a;font-size:12px;line-height:1.7}.guide-note{margin-top:15px;padding:13px 14px;border-radius:14px;background:#fff8e9;border:1px solid #f4e6c7;color:#80601f;font-size:11px;line-height:1.7}.guide-done-btn{width:100%;margin-top:16px;border:0;border-radius:14px;padding:12px;background:linear-gradient(135deg,#5a73f7,#34b9bb);color:#fff;font-weight:950}.executor-modal-label{display:block;margin-bottom:7px;font-size:11px;font-weight:900;color:#4d6075}.executor-modal-input{width:100%;border:1px solid #dce3ed;background:#fbfcfe;border-radius:14px;padding:13px;outline:0}.executor-modal-input:focus{border-color:#9baaf5;box-shadow:0 0 0 4px rgba(90,115,247,.08)}.executor-modal-hint{margin-top:7px;color:#8795a7;font-size:10px;line-height:1.6}.executor-modal-message{min-height:20px;margin-top:7px;color:#bd5667;font-size:11px;font-weight:850}.executor-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.executor-cancel-btn,.executor-save-btn{border:0;border-radius:13px;padding:11px 15px;font-weight:900}.executor-cancel-btn{background:#edf1f5;color:#5f7184}.executor-save-btn{background:linear-gradient(135deg,#5a73f7,#34b9bb);color:#fff}.toast{position:fixed;bottom:88px;left:50%;z-index:150;transform:translate(-50%,18px);opacity:0;pointer-events:none;background:#17253b;color:#fff;border-radius:12px;padding:10px 14px;font-size:11px;transition:.2s}.toast.show{opacity:1;transform:translate(-50%,0)}body.guide-modal-open,body.executor-modal-open{overflow:hidden}.mobile-nav{display:none}
@media(max-width:820px){.summary-grid{grid-template-columns:repeat(2,1fr)}.fp-form{grid-template-columns:1fr}.field.full,.form-actions{grid-column:auto}.hero{align-items:flex-start;flex-direction:column}.hero-actions{width:100%}.stats-btn,.export-btn{flex:1}.records-head{align-items:stretch;flex-direction:column}.record-search{min-width:0;width:100%}}
@media(max-width:600px){.fp-topbar{grid-template-columns:auto 1fr auto;padding:9px 11px}.back-btn span:not(.back-arrow),.fp-brand small{display:none}.fp-brand{justify-self:start}.fp-logo{width:39px;height:39px}.brand-name em{display:none}.container{padding:17px 12px 100px}.hero{padding:22px 19px;border-radius:23px}.hero h1{font-size:29px}.summary-grid{gap:8px}.stat-card{padding:12px;gap:8px}.stat-icon{width:38px;height:38px}.stat-card strong{font-size:21px}.form-panel,.records-panel{padding:18px;border-radius:21px}.form-panel-head{align-items:flex-start}.guide-open-btn{padding:9px 10px}.guide-open-btn #guideOpenText{display:none}.panel-head h2,.records-head h2{font-size:18px}.mobile-nav{position:fixed;z-index:80;display:grid;grid-template-columns:repeat(3,1fr);bottom:max(10px,env(safe-area-inset-bottom));left:12px;right:12px;padding:7px;border:1px solid rgba(220,226,236,.95);border-radius:20px;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);box-shadow:0 18px 55px rgba(28,47,78,.18)}.mobile-nav a{text-decoration:none;color:#7b8797;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 5px;border-radius:14px;font-size:18px}.mobile-nav a b{font-size:9px}.mobile-nav a.active{color:#526bea;background:#f0f2ff}.guide-modal,.executor-modal{padding:11px}.guide-modal-card,.executor-modal-card{padding:23px 18px;border-radius:22px}.executor-modal-actions{flex-direction:column-reverse}.executor-cancel-btn,.executor-save-btn{width:100%}}

/* ===== V16 precision UX ===== */
.fp-stepper{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:8px;margin:18px 0 2px;padding:12px 14px;border:1px solid rgba(220,228,240,.86);border-radius:16px;background:rgba(248,251,255,.72)}
.fp-step{display:flex;align-items:center;gap:7px;color:#8996a8;min-width:0;transition:.2s ease}.fp-step span{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;background:#edf1f7;color:#7d8999;font-size:10px;font-weight:950;transition:.2s ease}.fp-step b{font-size:9px;white-space:nowrap}.fp-stepper>i{height:2px;border-radius:999px;background:#e5eaf2;transition:.25s ease}.fp-step.active{color:#526ce6}.fp-step.active span{background:#eef1ff;color:#536ce6;box-shadow:0 0 0 4px rgba(83,108,230,.08)}.fp-step.done{color:#218f78}.fp-step.done span{background:#e8f8f2;color:#218f78}.fp-stepper>i.done{background:linear-gradient(90deg,#54c5a9,#6b87f6)}
.executor-meta{display:flex;align-items:center;gap:9px;margin-top:3px;padding:8px 10px;border:1px solid #e4e9f1;border-radius:12px;background:rgba(249,251,255,.75)}.executor-avatar,.executor-avatar-lg{display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#e9efff,#dff8f2);color:#5068cd;font-weight:950;flex:none}.executor-avatar{width:31px;height:31px;font-size:10px}.executor-meta strong{display:block;font-size:10px}.executor-meta small{display:block;color:#8794a6;font-size:8px;margin-top:2px}
.edit-mode-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid #ead6a9;background:#fff8e8;color:#956a15;border-radius:12px;padding:8px 10px;font-size:9px;font-weight:950}.cancel-edit-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid #dfe5ed;background:#f4f6f9;color:#64748b;padding:11px 14px;border-radius:13px;font-weight:900}.school-search-box input:disabled{opacity:.72;cursor:not-allowed}.school-search-clear:disabled{display:none!important}
.record-filters{display:grid;grid-template-columns:minmax(240px,1.6fr) minmax(140px,.8fr) minmax(150px,.9fr) 150px auto;gap:8px;margin-top:14px}.record-filters select,.record-filters input[type=date]{width:100%;border:1px solid #e0e6ef;background:rgba(250,252,255,.82);border-radius:12px;padding:10px 11px;color:var(--text);outline:0}.filter-reset{border:1px solid #e0e6ef;background:rgba(255,255,255,.72);color:#67768a;border-radius:12px;padding:9px 12px;font-weight:900;white-space:nowrap}.record-edit-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid #dce4ff;background:#eef2ff;color:#526be0;border-radius:10px;padding:7px 9px;font-size:9px;font-weight:950;transition:.18s}.record-edit-btn:hover{transform:translateY(-1px);background:#e5ebff}
.mobile-records{display:none}.record-mobile-card{border:1px solid #e4e9f1;background:rgba(255,255,255,.78);border-radius:16px;padding:13px;box-shadow:0 8px 22px rgba(30,50,80,.05)}.record-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.record-card-head strong{display:block;font-size:11px}.record-card-head small{display:block;color:#8491a3;font-size:8px;margin-top:4px}.record-card-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:11px}.record-card-counts span{padding:8px;border:1px solid #edf0f4;background:#fafbfe;border-radius:11px;color:#8794a5;font-size:8px;text-align:center}.record-card-counts b{display:block;color:var(--text);font-size:14px;margin-bottom:2px}.record-mobile-card p{margin:10px 0;color:#64748b;font-size:9px;line-height:1.65}.record-mobile-card .record-edit-btn{width:100%;margin-top:8px;padding:9px}
.records-skeleton{display:grid;gap:9px;margin-top:16px}.records-skeleton i{height:42px;border-radius:12px;background:linear-gradient(90deg,#eef2f7 20%,#f8fafe 38%,#eef2f7 60%);background-size:220% 100%;animation:skeletonMove 1.3s ease-in-out infinite}.records-skeleton i:nth-child(2){width:94%}.records-skeleton i:nth-child(3){width:88%}.records-skeleton i:nth-child(4){width:96%}@keyframes skeletonMove{to{background-position:-220% 0}}

@media(max-width:900px){.record-filters{grid-template-columns:1fr 1fr}.record-search{grid-column:1/-1}.filter-reset{grid-column:2}}
@media(max-width:650px){.fp-stepper{gap:5px;padding:10px}.fp-step{flex-direction:column;gap:4px;text-align:center}.fp-step b{font-size:7px}.fp-step span{width:25px;height:25px}.record-filters{grid-template-columns:1fr 1fr}.record-filters .record-search{grid-column:1/-1}.record-filters input[type=date]{grid-column:1}.record-filters .filter-reset{grid-column:2}.desktop-records{display:none!important}.mobile-records{display:grid;gap:9px;margin-top:14px}.form-actions{flex-wrap:wrap}.cancel-edit-btn{width:100%}}
