*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,SF Arabic,IBM Plex Sans Arabic,Segoe UI,Tahoma,sans-serif;font-size:16px;line-height:1.45}[dir=ltr] body{font-family:-apple-system,Segoe UI,Roboto,IBM Plex Sans Arabic,sans-serif}button{font:inherit;color:inherit}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.center{flex-direction:column;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.topbar{justify-content:flex-end;width:100%;max-width:960px;display:flex}.card{width:100%;max-width:420px;margin-top:6vh}.hero{text-align:center;padding:12px 8px 20px}.hero h1{margin:20px 0 4px;font-size:28px}.wordmark{letter-spacing:.04em;color:var(--brand);font-family:Playfair Display,Georgia,serif;font-weight:700}.wordmark .gold{color:#b08a3a}.tagline{letter-spacing:.3em;color:#4a7c79;direction:ltr;margin:8px 0 0;font-family:Playfair Display,Georgia,serif;font-size:11px}.sub{color:var(--text2);margin:0}.group{background:var(--cell);border-radius:var(--r-group);box-shadow:0 0 0 1px var(--edge);overflow:hidden}.form{flex-direction:column;gap:12px;padding:18px 16px;display:flex}label.fl{color:var(--text2);font-size:14px;display:block}input,select,textarea{width:100%;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--edge);border-radius:var(--r-input);margin-top:6px;padding:10px 12px;font-size:16px}.lang select{background:var(--cell);width:auto;margin:0}.btn{border-radius:var(--r-btn);background:var(--tint);color:#fff;cursor:pointer;border:0;padding:13px;font-size:17px;font-weight:600}.btn[disabled]{opacity:.4;cursor:not-allowed}.note{color:var(--text2);margin:0;font-size:14px}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--tint);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.app{min-height:100vh;display:flex}.side{background:var(--cell);border-inline-end:1px solid var(--edge);flex-direction:column;flex:none;gap:18px;width:260px;height:100vh;padding:20px 16px;display:flex;position:sticky;top:0}.side nav{flex-direction:column;gap:2px;display:flex}.side nav a{color:var(--text);border-radius:10px;padding:9px 12px;text-decoration:none}.side nav a.on{background:var(--tint);color:#fff}.who{flex-direction:column;font-size:14px;display:flex}.who span{color:var(--text2)}.side-foot{flex-direction:column;align-items:flex-start;gap:10px;margin-top:auto;display:flex}.content{flex:1;min-width:0;max-width:1100px;padding:8px 28px 60px}h1.lt{margin:18px 0 6px;font-size:30px}.content .sub{margin:0 0 18px}.gh{color:var(--text2);margin:18px 12px 8px;font-size:15px;font-weight:600}.gf{color:var(--text2);margin:6px 14px 0;font-size:13px}.cardx{margin-bottom:18px}.pad{padding:16px}.row-form{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:8px;display:flex}.row-form .fl{flex:180px}.row-form .btn{flex:none}.grid2{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-bottom:14px;display:grid}.filters{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.filters input,.filters select{background:var(--cell);width:auto;margin:0}.filters input{flex:220px}.tbl{border-collapse:separate;border-spacing:0;background:var(--cell);width:100%;box-shadow:0 0 0 1px var(--edge);border-radius:16px;margin-bottom:18px;overflow:hidden}.tbl th,.tbl td{text-align:start;border-bottom:1px solid var(--sep);vertical-align:top;padding:10px 12px;font-size:15px}.tbl th{color:var(--text2);font-size:13px;font-weight:600}.tbl tr:last-child td{border-bottom:0}.tbl.inner{box-shadow:none;border-radius:0}.tbl tr.bad td{background:var(--soft-red)}.tbl a{color:var(--tint);font-weight:600;text-decoration:none}.mono{color:var(--text2);word-break:break-all;font-family:ui-monospace,Menlo,monospace;font-size:12px}.pill{white-space:nowrap;border-radius:20px;padding:2px 9px;font-size:12.5px;font-weight:600;display:inline-block}.p-blue{background:var(--soft-blue);color:var(--tint)}.p-orange{background:var(--soft-orange);color:var(--pill-orange-text)}.p-green{background:var(--soft-green);color:var(--pill-green-text)}.p-red{background:var(--soft-red);color:var(--pill-red-text)}.p-gray{background:var(--sep);color:var(--text2)}.err{color:var(--pill-red-text);background:var(--soft-red);border-radius:10px;margin:8px 0;padding:8px 12px;font-size:14px}.ok{color:var(--pill-green-text);background:var(--soft-green);border-radius:10px;margin:8px 0;padding:8px 12px;font-size:14px}.toggle{border-bottom:1px solid var(--sep);align-items:center;gap:14px;padding:10px 0;display:flex}.toggle:last-of-type{border-bottom:0}.toggle .rt{flex-direction:column;flex:1;display:flex}.toggle .d{color:var(--text2);font-size:13px}.switch{flex:none;width:51px;height:31px;position:relative}.switch input{opacity:0;cursor:pointer;z-index:1;width:100%;height:100%;margin:0;position:absolute}.switch span{background:var(--sep);border-radius:31px;transition:all .2s;position:absolute;inset:0}.switch span:after{content:"";top:2px;background:#fff;border-radius:50%;width:27px;height:27px;transition:all .2s;position:absolute;inset-inline-start:2px;box-shadow:0 2px 4px #0003}.switch input:checked+span{background:#5cc46a}.switch input:checked+span:after{inset-inline-start:22px}.switch input:focus-visible+span{outline:2px solid var(--tint);outline-offset:2px}.btn.ghost{background:var(--cell);color:var(--tint);border:1px solid var(--edge)}.btn.red{background:var(--cell);color:#ec5545;border:1px solid var(--edge)}.btn.inline{margin:4px 0 12px;text-decoration:none;display:inline-block}.actions{flex-wrap:wrap;gap:10px;display:flex}.lnk{color:var(--tint);cursor:pointer;background:0 0;border:0;padding:0;font-size:15px}.list{margin:0 0 10px;padding:0;list-style:none}.list li{border-bottom:1px solid var(--sep);padding:6px 0}.days{border:0;flex-wrap:wrap;gap:10px;margin:0;padding:0;display:flex}.days legend{color:var(--text2);margin-bottom:4px;font-size:14px}.days label{align-items:center;gap:4px;font-size:14px;display:flex}.days input{width:auto;margin:0}@media (max-width:760px){.app{flex-direction:column}.side{width:auto;height:auto;position:static}.content{padding:8px 16px 40px}}
