:root{--primary:#5fc7b0;--primary-soft:#dff4ef;--primary-ink:#1f6b5c;--secondary:#7cb2f0;--secondary-soft:#e0edfb;--accent:#c6e86b;--accent-soft:#eef8d0;--bg-from:#eef8f5;--bg-to:#eaf1fb;--radius:20px;--glass:.72;--font-heading:"Sora","Cairo",system-ui,sans-serif;--font-body:"Inter","Cairo",system-ui,sans-serif;--text:#14282b;--muted:#6a7f83;--line:#14282b17;--surface:rgba(255,255,255,max(var(--glass),.82));--surface-solid:#fff;--danger:#ee8a8a;--danger-soft:#fde8e8;--warn:#f1c27a;--warn-soft:#fdf1dc;--shadow:0 10px 30px -12px #1e46502e;--grad:linear-gradient(135deg,var(--primary),var(--secondary));--ease:cubic-bezier(.2,.8,.2,1);--sidebar:248px;--rail:76px;--safe-b:env(safe-area-inset-bottom,0px)}:root[data-mode=dark]{--text:#e7f2f1;--muted:#8aa3a6;--line:#ffffff17;--surface:rgba(24,38,42,max(var(--glass),.78));--surface-solid:#162327;--danger-soft:#3a2326;--warn-soft:#3a3123;--shadow:0 10px 30px -12px #00000080}*{box-sizing:border-box;margin:0}html,body,#root{height:100%}html{background-color:var(--bg-from);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{font-family:var(--font-body);color:var(--text);-webkit-font-smoothing:antialiased;background:0 0;overflow-x:hidden}body:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(135deg,var(--bg-from),var(--bg-to));background:radial-gradient(60vmax 60vmax at 0% 0%,color-mix(in srgb,var(--primary) 26%,transparent),transparent 60%),radial-gradient(55vmax 55vmax at 100% 100%,color-mix(in srgb,var(--secondary) 22%,transparent),transparent 60%),linear-gradient(135deg,var(--bg-from),var(--bg-to));position:fixed;top:0;bottom:0;left:0;right:0;transform:translateZ(0)}h1,h2,h3,h4{font-family:var(--font-heading);letter-spacing:-.01em;font-weight:700}h1{font-size:1.65rem}h2{font-size:1.2rem}h3{font-size:1rem}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}.muted{color:var(--muted)}.small{font-size:.82rem}.tiny{font-size:.72rem}.bold{font-weight:600}.row{align-items:center;gap:.6rem;display:flex}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.col{flex-direction:column;gap:.6rem;display:flex}.grow{flex:1;min-width:0}.grid{gap:1rem;display:grid}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(3,minmax(0,1fr))}.g4{grid-template-columns:repeat(4,minmax(0,1fr))}.auto{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}@media (max-width:900px){.g4,.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.g2,.g3,.g4{grid-template-columns:minmax(0,1fr)}.g4.keep2,.g3.keep2{grid-template-columns:repeat(2,minmax(0,1fr))}}.shell{grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh;display:grid}.sidebar{background:var(--surface);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-inline-end:1px solid var(--line);flex-direction:column;gap:.4rem;height:100vh;padding:1rem .8rem;display:flex;position:sticky;top:0}.brand{font-family:var(--font-heading);align-items:center;gap:.65rem;padding:.4rem .6rem 1rem;font-weight:800;display:flex}.brand img{object-fit:cover;width:34px;height:34px;box-shadow:var(--shadow);border-radius:11px}.navitem{color:var(--muted);transition:.25s var(--ease);border-radius:14px;align-items:center;gap:.75rem;padding:.7rem .85rem;font-size:.92rem;font-weight:500;display:flex;position:relative}.navitem svg{flex:none;width:20px;height:20px}.navitem:hover{background:var(--primary-soft);color:var(--text)}.navitem.active{background:var(--grad);color:#0c2a2a;box-shadow:0 8px 20px -10px var(--primary);font-weight:600}:root[data-mode=dark] .navitem.active{color:#06201f}.main{width:100%;min-width:0;max-width:1280px;margin-inline-start:auto;margin-inline-end:auto;padding:1.2rem 1.6rem 2.5rem}.topbar{justify-content:space-between;align-items:center;gap:.8rem;margin-bottom:1.3rem;display:flex}.topbar .actions{align-items:center;gap:.45rem;display:flex}.iconbtn{background:var(--surface-solid);border:1px solid var(--line);width:40px;height:40px;transition:transform .2s var(--ease),box-shadow .2s;border-radius:13px;place-items:center;display:grid;position:relative}.iconbtn:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.dot{top:8px;background:var(--danger);border:2px solid var(--surface-solid);border-radius:50%;width:8px;height:8px;position:absolute}.dot:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:9px}.dot:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:9px}.dot:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:9px}.dot:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:9px}.dot:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:9px}.dot:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:9px}.bottomnav{display:none}@media (min-width:701px){.shell{transition:grid-template-columns .28s var(--ease)}}.shell[data-collapsed=true]{grid-template-columns:var(--rail) minmax(0,1fr)}.shell[data-collapsed=true] .sidebar .label,.shell[data-collapsed=true] .sidebar .brand span{display:none}.shell[data-collapsed=true] .sidebar .navitem{justify-content:center;padding:.8rem}.shell[data-collapsed=true] .sidebar .brand{justify-content:center;padding-inline-start:0;padding-inline-end:0}.collapse{margin-top:auto}@media (max-width:700px){.shell,.shell[data-collapsed=true]{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.main{padding:1rem 1rem calc(88px + var(--safe-b))}.bottomnav{bottom:calc(10px + var(--safe-b));z-index:30;background:var(--surface);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border:1px solid var(--line);border-radius:24px;justify-content:space-around;padding:.35rem;display:flex;position:fixed;left:12px;right:12px;box-shadow:0 18px 40px -14px #143c4659}.bottomnav .navitem{border-radius:18px;flex-direction:column;flex:1;gap:.15rem;min-width:0;padding:.5rem .55rem;font-size:.62rem}.bottomnav .navitem span{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem 1.2rem}.card.hover{transition:transform .25s var(--ease),box-shadow .25s;cursor:pointer}.card.hover:hover{transform:translateY(-3px)}.card.flat{box-shadow:none}.card h3{margin-bottom:.7rem}.btn{border-radius:calc(var(--radius) * .7);background:var(--surface-solid);border:1px solid var(--line);transition:.25s var(--ease);white-space:nowrap;justify-content:center;align-items:center;gap:.45rem;padding:.65rem 1.05rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.btn:active{transform:scale(.97)}.btn.primary{background:var(--grad);color:#0a2a29;box-shadow:0 10px 22px -10px var(--primary);border:0}.btn.ghost{background:0 0;border-color:#0000}.btn.danger{color:#c24d4d}.btn.sm{padding:.4rem .7rem;font-size:.8rem}.btn.block{width:100%}.btn:disabled{opacity:.5;pointer-events:none}.badge{background:var(--primary-soft);color:var(--primary-ink);border-radius:99px;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.72rem;font-weight:600;display:inline-flex}.badge.blue{background:var(--secondary-soft);color:#3d6fa8}.badge.lime{background:var(--accent-soft);color:#5e7a14}.badge.warn{background:var(--warn-soft);color:#a8741d}.badge.red{background:var(--danger-soft);color:#b04646}.badge.gray{background:var(--line);color:var(--muted)}:root[data-mode=dark] .badge.blue{color:#a9cdf5}:root[data-mode=dark] .badge.lime{color:#d5ee8c}:root[data-mode=dark] .badge.warn{color:#f2cf94}:root[data-mode=dark] .badge.red{color:#f3b0b0}.avatar{color:#0c2a2a;background:var(--grad);border-radius:50%;flex:none;place-items:center;width:38px;height:38px;font-size:.82rem;font-weight:700;display:grid}.avatar.lg{width:72px;height:72px;font-size:1.4rem}.avatar.sm{width:28px;height:28px;font-size:.66rem}.avatar.c1{background:linear-gradient(135deg,#b8ecdd,#8fd0f5)}.avatar.c2{background:linear-gradient(135deg,#d9f2a0,#9be2c4)}.avatar.c3{background:linear-gradient(135deg,#bcd7fb,#d6c9f7)}.avatar.c4{background:linear-gradient(135deg,#fbe0b9,#f7c9c9)}.tabs{border-radius:calc(var(--radius) * .8);background:var(--surface);border:1px solid var(--line);scrollbar-width:none;gap:.3rem;width:-moz-fit-content;width:fit-content;max-width:100%;padding:.3rem;display:flex;overflow-x:auto}.tabs button{border-radius:calc(var(--radius) * .6);color:var(--muted);white-space:nowrap;padding:.5rem .95rem;font-size:.86rem;font-weight:500;transition:all .2s;position:relative}.tabs button.on{color:#0c2a2a;font-weight:600}.tabs .pill{border-radius:inherit;background:var(--grad);z-index:0;position:absolute;top:0;bottom:0;left:0;right:0}.tabs button span{z-index:1;position:relative}.field{color:var(--muted);flex-direction:column;gap:.3rem;font-size:.8rem;display:flex}.field input,.field select,.field textarea{border:1px solid var(--line);background:var(--surface-solid);color:var(--text);border-radius:14px;outline:none;padding:.65rem .8rem;transition:all .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}input[type=range]{accent-color:var(--primary);background:0 0!important;border:0!important;padding:0!important}input[type=color]{cursor:pointer;height:42px;padding:2px!important}.seg{background:var(--line);border-radius:14px;gap:.2rem;padding:.25rem;display:inline-flex}.seg button{color:var(--muted);border-radius:11px;padding:.4rem .8rem;font-size:.82rem;font-weight:600;transition:all .2s}.seg button.on{background:var(--surface-solid);color:var(--text);box-shadow:var(--shadow)}.chips{flex-wrap:wrap;gap:.4rem;display:flex}.chip{border:1px solid var(--line);background:var(--surface-solid);border-radius:99px;padding:.32rem .7rem;font-size:.78rem;font-weight:500;transition:all .2s}.chip.on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-ink);font-weight:600}.stat{flex-direction:column;gap:.2rem;display:flex}.stat .v{font-family:var(--font-heading);font-size:1.7rem;font-weight:700;line-height:1.1}.stat .l{color:var(--muted);font-size:.78rem}.stat .d{font-size:.76rem;font-weight:600}.up{color:#3a9a7f}.down{color:#cf6666}.statcard{position:relative;overflow:hidden}.statcard:after{content:"";background:var(--grad);opacity:.16;border-radius:50%;width:110px;height:110px;position:absolute;top:-30px}.statcard:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):after{right:-30px}.statcard:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):after{right:-30px}.statcard:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):after{right:-30px}.statcard:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):after{left:-30px}.statcard:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):after{left:-30px}.statcard:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):after{left:-30px}.statcard .ic{background:var(--primary-soft);width:36px;height:36px;color:var(--primary-ink);border-radius:12px;place-items:center;margin-bottom:.5rem;display:grid}.bar{background:var(--line);border-radius:99px;height:8px;overflow:hidden}.bar i{border-radius:inherit;background:var(--grad);height:100%;display:block}.list>*+*{border-top:1px solid var(--line)}.list>*{padding:.75rem 0}table{border-collapse:collapse;width:100%;font-size:.88rem}th{text-align:start;color:var(--muted);padding:.5rem .6rem;font-size:.76rem;font-weight:500}td{border-top:1px solid var(--line);padding:.7rem .6rem}.tablewrap{overflow-x:auto}.empty{text-align:center;color:var(--muted);padding:2rem 1rem}.hscroll{overflow-x:auto}.overlay{z-index:60;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0f232859;place-items:center;padding:1rem;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.modal{background:var(--surface-solid);border-radius:calc(var(--radius) + 6px);border:1px solid var(--line);width:min(560px,100%);max-height:92vh;padding:1.3rem;overflow:auto;box-shadow:0 30px 70px -20px #0006}.modal.wide{width:min(760px,100%)}@media (max-width:620px){.overlay{place-items:end}.modal{max-height:90vh;padding-bottom:calc(1.3rem + var(--safe-b))}.modal:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-bottom-right-radius:0;border-bottom-left-radius:0}.modal:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-bottom-right-radius:0;border-bottom-left-radius:0}.modal:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){border-bottom-right-radius:0;border-bottom-left-radius:0}.modal:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-bottom-right-radius:0;border-bottom-left-radius:0}.modal:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-bottom-right-radius:0;border-bottom-left-radius:0}.modal:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){border-bottom-right-radius:0;border-bottom-left-radius:0}}.popover{z-index:50;width:min(360px,92vw);position:absolute;top:48px}.popover:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.popover:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.popover:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:0}.popover:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.popover:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.popover:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:0}.cal{grid-template-columns:54px repeat(var(--days),1fr);border-radius:var(--radius);display:grid;position:relative;overflow:hidden}.cal-head{z-index:3;text-align:center;background:var(--surface-solid);border-bottom:1px solid var(--line);padding:.5rem .2rem;font-size:.78rem;position:sticky;top:0}.cal-head b{font-family:var(--font-heading);font-size:1.05rem;display:block}.cal-head.today b{color:var(--primary-ink)}.cal-head.today{background:var(--primary-soft)}.cal-hours div{height:var(--hh);color:var(--muted);text-align:center;padding-top:2px;font-size:.68rem}.cal-col{border-inline-start:1px solid var(--line);background:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--hh) - 1px),var(--line) calc(var(--hh) - 1px),var(--line) var(--hh));position:relative}.cal-col.today{background-color:var(--primary-soft);background-color:color-mix(in srgb,var(--primary-soft) 40%,transparent)}.cal-slot{height:var(--hh);cursor:pointer;opacity:0;background:var(--primary-soft);transition:all .15s;position:absolute;left:0;right:0}.cal-slot:hover{opacity:.7}.ev{cursor:pointer;border-inline-start:4px solid var(--primary);background:var(--primary-soft);color:var(--primary-ink);transition:.2s var(--ease);border-radius:12px;padding:.3rem .5rem;font-size:.72rem;position:absolute;left:3px;right:3px;overflow:hidden;box-shadow:0 4px 12px -6px #00000026}.ev:hover{z-index:4;transform:scale(1.02)}.ev b{white-space:nowrap;text-overflow:ellipsis;font-size:.76rem;display:block;overflow:hidden}.ev.group{background:var(--secondary-soft);border-color:var(--secondary);color:#2f5f95}.ev.done{opacity:.6}.ev.cancelled{opacity:.4;text-decoration:line-through}:root[data-mode=dark] .ev.group{color:#b5d3f7}.nowline{background:var(--danger);z-index:2;height:2px;position:absolute;left:0;right:0}.nowline:before{content:"";background:var(--danger);border-radius:50%;width:8px;height:8px;position:absolute;top:-3px}.nowline:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:-4px}.nowline:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:-4px}.nowline:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:-4px}.nowline:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{right:-4px}.nowline:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{right:-4px}.nowline:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{right:-4px}.daystrip{gap:.4rem;padding-bottom:.3rem;display:flex;overflow-x:auto}.daystrip button{background:var(--surface);border:1px solid var(--line);min-width:48px;color:var(--muted);border-radius:16px;flex-direction:column;flex:1;align-items:center;padding:.5rem .2rem;font-size:.7rem;display:flex}.daystrip button b{font-family:var(--font-heading);color:var(--text);font-size:1rem}.daystrip button.on{background:var(--grad);color:#0c2a2a;border:0}.daystrip button.on b{color:#0c2a2a}.tl-day{font-family:var(--font-heading);padding:.5rem 0;font-weight:700;position:sticky;top:0}.tl{border-inline-start:2px dashed var(--line);margin-inline-start:.3rem;padding-inline-start:1.3rem;position:relative}.tl>.item{margin-bottom:.7rem;position:relative}.tl>.item:before{content:"";background:var(--grad);border:3px solid var(--surface-solid);border-radius:50%;width:12px;height:12px;position:absolute;top:1.1rem}.tl>.item:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:calc(-1.3rem - 7px)}.tl>.item:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:calc(-1.3rem - 7px)}.tl>.item:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{left:calc(-1.3rem - 7px)}.tl>.item:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{right:calc(-1.3rem - 7px)}.tl>.item:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{right:calc(-1.3rem - 7px)}.tl>.item:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{right:calc(-1.3rem - 7px)}.rate{grid-template-columns:96px 1fr 34px;align-items:center;gap:.6rem;font-size:.84rem;display:grid}.rate output{text-align:end;font-weight:700}.ring{place-items:center;display:grid;position:relative}.ring svg{transform:rotate(-90deg)}.ring .c{text-align:center;font-family:var(--font-heading);font-weight:700;position:absolute}.login{place-items:center;min-height:100%;padding:1.5rem;display:grid}.login .card{width:min(460px,100%);padding:2rem}.roleBtn{background:var(--surface-solid);border:1px solid var(--line);text-align:start;width:100%;transition:.25s var(--ease);border-radius:16px;align-items:center;gap:.8rem;padding:.7rem .9rem;display:flex}.roleBtn:hover{border-color:var(--primary);transform:translate(4px)}[dir=rtl] .roleBtn:hover{transform:translate(-4px)}.toast{bottom:100px;z-index:80;background:var(--text);width:-moz-fit-content;width:fit-content;color:var(--surface-solid);box-shadow:var(--shadow);border-radius:16px;margin-inline-start:auto;margin-inline-end:auto;padding:.7rem 1.1rem;font-size:.88rem;font-weight:600;position:fixed;left:0;right:0}.skeleton{background:linear-gradient(90deg,var(--line),transparent,var(--line));background-size:200% 100%;animation:1.4s infinite sh}@keyframes sh{to{background-position:-200% 0}}.demo{text-align:center;color:var(--muted);padding:.4rem;font-size:.72rem}[dir=rtl] .flip{transform:scaleX(-1)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.topsw{margin-inline-end:.3rem}@media (max-width:560px){.topsw button{padding:.35rem .5rem;font-size:.7rem}}input[type=color],input[dir=ltr],.ltr{text-align:start;direction:ltr}html{-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}.shell{min-height:100dvh}.sidebar{height:100dvh}.mlogo{border-radius:11px;flex:none;width:34px;height:34px;display:none}.topbar .greet{flex:1;min-width:0}.hello{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}@media (hover:none) and (pointer:coarse){.field input,.field select,.field textarea,.overlay input,.overlay select,.overlay textarea{font-size:16px}}@media (max-width:1000px){.main{padding:1.1rem 1.2rem 2.5rem}}.page{animation:rise .35s var(--ease) backwards}.enter{animation:rise .45s var(--ease) backwards}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.sidebar{will-change:auto}@media (max-width:700px){.main{padding:calc(.7rem + env(safe-area-inset-top,0px)) .85rem calc(96px + var(--safe-b))}.topbar{flex-wrap:wrap;gap:.55rem;margin-bottom:.9rem}.topbar .greet{flex:1 1 0}.mlogo{display:block}.hidem{display:none}.topbar .actions{gap:.35rem}.iconbtn{border-radius:12px;width:38px;height:38px}.topsw{order:3;width:100%;margin:0}.topsw button{flex:1;padding:.5rem}h1{font-size:1.35rem}h2{font-size:1.05rem}.card{padding:.95rem 1rem}.stat .v{font-size:1.35rem}.stat .l{font-size:.72rem}.statcard .ic{width:30px;height:30px;margin-bottom:.35rem}.grid{gap:.75rem}.auto{grid-template-columns:minmax(0,1fr)}.popover{left:.7rem;right:.7rem;top:calc(60px + env(safe-area-inset-top,0px));width:auto;position:fixed}.rate{grid-template-columns:78px 1fr 30px}.btn{padding:.6rem .9rem}.cal-hours div{font-size:.62rem}.cal{grid-template-columns:42px repeat(var(--days),1fr)}.tabs{max-width:calc(100vw - 1.7rem)}.modal{max-height:88dvh}}@media (max-width:360px){.main{padding-inline-start:.65rem;padding-inline-end:.65rem}}.qrbox{background:#fff;border-radius:18px;padding:12px;line-height:0;display:inline-block}.scanner{border-radius:var(--radius);aspect-ratio:1;background:#0c1a1c;max-width:420px;margin-inline-start:auto;margin-inline-end:auto;position:relative;overflow:hidden}.scanner video{object-fit:cover;width:100%;height:100%}.scanner .frame{border:3px solid var(--primary);border-radius:24px;position:absolute;top:18%;bottom:18%;left:18%;right:18%;box-shadow:0 0 0 999px #00000059}.scanner .laser{background:var(--accent);height:2px;animation:2s ease-in-out infinite laser;position:absolute;left:18%;right:18%}@keyframes laser{0%,to{top:20%}50%{top:78%}}@media print{.sidebar,.bottomnav,.topbar,.noprint{display:none!important}.main{padding:0}.card{box-shadow:none;break-inside:avoid}body:before{display:none}}.cps{flex-direction:column;gap:.45rem;margin:.7rem 0;padding:0;list-style:none;display:flex}.cps li{background:var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.4rem;padding:.4rem .6rem;font-size:.84rem;display:flex}.cps li .grow{min-width:120px}.plan{flex-direction:column;display:flex}.tabrow{justify-content:space-between;align-items:center;gap:.6rem;margin:1rem 0;display:flex}.tabrow .tabs{flex:0 auto;min-width:0}.tab-actions{flex:none;gap:.4rem;margin-inline-start:auto;display:flex}@media (min-width:701px) and (max-width:1000px){.tab-actions .btn span{display:none}.tab-actions .btn{padding:.5rem .6rem}}@media (max-width:700px){.tabrow{flex-wrap:wrap}.tabrow .tabs{flex:100%}.tab-actions{width:100%;margin:0}.tab-actions .btn{flex:1}}
