*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}
body{font-family:'Cairo',system-ui,sans-serif;background:#050908;color:#fff;min-height:100svh}

/* ══ تخطيط ══ */
.page{display:flex;min-height:100svh}

/* ══ شريط جانبي ══ */
.sidebar{width:272px;flex-shrink:0;background:#080d08;border-left:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;position:sticky;top:0;height:100svh;overflow-y:auto;padding:14px 12px 12px;gap:12px}
@media(max-width:1023px){.sidebar{display:none}}
.sb-top{padding:18px 16px 16px;border:1px solid rgba(255,255,255,.06);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02))}
.sb-logo{width:42px;height:42px;background:#22c55e;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:900;color:#052e10;font-size:22px;flex-shrink:0;box-shadow:0 14px 30px -18px rgba(34,197,94,.5)}
.sb-name{font-weight:800;font-size:16px}
.sb-sub{font-size:11px;color:rgba(255,255,255,.42)}
.sb-add{width:100%;background:#22c55e;color:#052e10;border:none;border-radius:14px;padding:12px 14px;font-weight:800;font-size:13px;cursor:pointer;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:6px;margin-top:14px;transition:background .15s,transform .15s,box-shadow .15s;box-shadow:0 18px 36px -24px rgba(34,197,94,.65)}
.sb-add:hover{background:#1bc155}
.sb-live-wrap{padding:0 4px;display:none}
.sb-live-card{background:#0f1a0f;border:1px solid rgba(34,197,94,.25);border-radius:18px;padding:14px}
.sb-nav{padding:8px;flex:1;border:1px solid rgba(255,255,255,.05);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015))}
.sb-nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:14px;font-size:13px;color:rgba(255,255,255,.68);text-decoration:none;transition:all .15s;font-weight:700}
.sb-nav a:hover{background:rgba(255,255,255,.06);color:#fff;transform:translateX(-2px)}
.sb-section-lbl{font-size:10px;font-weight:800;color:rgba(255,255,255,.28);padding:8px 12px 6px;letter-spacing:.08em}
.sb-foot{padding:0 4px}
.sb-logout{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:16px;font-size:13px;color:#f87171;text-decoration:none;width:100%;transition:all .15s;border:1px solid rgba(239,68,68,.12);background:rgba(127,29,29,.06)}
.sb-logout:hover{background:rgba(239,68,68,.08)}

/* ══ عمود رئيسي ══ */
.main-col{flex:1;min-width:0;display:flex;flex-direction:column}

/* ══ هيدر موبايل ══ */
.mob-hdr{position:sticky;top:0;z-index:40;background:rgba(5,9,8,.9);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.07);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px}
@media(min-width:1024px){.mob-hdr{display:none}}
.mob-hdr-brand{display:flex;align-items:center;gap:10px;flex:1;min-width:0}
.mob-hdr-logo{width:38px;height:38px;background:#22c55e;border-radius:12px;display:flex;align-items:center;justify-content:center;font-weight:900;color:#052e10;font-size:19px;flex-shrink:0;box-shadow:0 16px 30px -18px rgba(34,197,94,.5)}
.mob-hdr-copy{min-width:0;display:grid;gap:2px}
.mob-hdr-title{font-weight:800;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mob-hdr-subtitle{font-size:11px;color:rgba(255,255,255,.4)}
.mob-hdr-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.mob-hdr-link,.mob-hdr-btn{min-height:38px;border-radius:12px;font-size:12px;font-weight:800;font-family:inherit;display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;cursor:pointer}
.mob-hdr-link{padding:0 12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);color:rgba(255,255,255,.78)}
.mob-hdr-btn{background:#22c55e;color:#052e10;border:none;padding:0 13px;box-shadow:0 16px 28px -18px rgba(34,197,94,.55)}

/* ══ هيدر ديسكتوب ══ */
.desk-hdr{padding:22px 28px 18px;border-bottom:1px solid rgba(255,255,255,.06);display:none;align-items:center;justify-content:space-between}
@media(min-width:1024px){.desk-hdr{display:flex}}

/* ══ محتوى ══ */
.content{padding:20px;flex:1;position:relative}
.content::before{content:'';position:absolute;inset:0 0 auto;min-height:360px;background:radial-gradient(circle at top right,rgba(20,184,166,.14),transparent 32%),radial-gradient(circle at top left,rgba(14,165,233,.08),transparent 24%);pointer-events:none}
@media(min-width:1024px){.content{padding:28px 32px 36px}}

/* ══ بانر البث ══ */
.live-banner{background:#0f1a0f;border:1px solid rgba(34,197,94,.3);border-radius:18px;padding:14px;margin-bottom:20px;display:none}
.live-banner.show{display:block}
.live-dot{width:7px;height:7px;background:#ef4444;border-radius:50%;animation:lp 1.4s infinite;display:inline-block}
@keyframes lp{0%,100%{opacity:1}50%{opacity:.5}}
.watch-btn{background:#22c55e;color:#052e10;border:none;border-radius:10px;padding:8px 14px;font-weight:700;font-size:12px;cursor:pointer;font-family:inherit;text-decoration:none;flex-shrink:0}
.attend-row{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}
@media(min-width:640px){.attend-row{grid-template-columns:repeat(6,1fr)}}
.attend-cell{background:rgba(255,255,255,.04);border-radius:9px;padding:7px;text-align:center;font-size:11px}
.attend-name{font-weight:700}
.attend-ok{color:#22c55e;font-size:10px}
.attend-no{color:rgba(255,255,255,.35);font-size:10px}

.overview-hero{display:grid;gap:16px;margin-bottom:28px;position:relative;z-index:1}
.intervention-card{background:linear-gradient(135deg,rgba(239,68,68,.2),rgba(251,191,36,.08) 55%,rgba(34,197,94,.06)),#0a1410;border:1px solid rgba(248,113,113,.28);border-radius:24px;padding:16px;display:grid;gap:12px;box-shadow:0 18px 45px -28px rgba(239,68,68,.65)}
.intervention-kicker{display:inline-flex;align-items:center;gap:6px;width:max-content;background:rgba(239,68,68,.12);border:1px solid rgba(239,68,68,.25);border-radius:999px;color:#f87171;padding:5px 10px;font-size:11px;font-weight:900}
.intervention-title{font-size:22px;font-weight:900;line-height:1.35}
.intervention-text{font-size:13px;line-height:1.8;color:rgba(255,255,255,.68);max-width:760px}
@media(min-width:768px){.intervention-card{grid-template-columns:1fr auto;align-items:center}.intervention-actions{justify-content:flex-end}}
.summary-hero{background:linear-gradient(135deg,rgba(34,197,94,.12),rgba(34,197,94,0) 55%),#0a1410;border:1px solid rgba(34,197,94,.18);border-radius:30px;padding:20px 20px 18px;overflow:hidden;position:relative}
.summary-hero::after{content:'';position:absolute;inset:auto -48px -70px auto;width:220px;height:220px;background:radial-gradient(circle,rgba(20,184,166,.14),transparent 72%);pointer-events:none}
.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(min-width:768px){.summary-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.summary-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:20px;padding:15px 15px 14px;min-width:0;box-shadow:inset 0 1px 0 rgba(255,255,255,.04);min-height:116px}
.summary-kicker{font-size:11px;color:rgba(255,255,255,.45);margin-bottom:6px}
.summary-value{font-size:26px;font-weight:900;line-height:1}
.summary-note{font-size:11px;color:rgba(255,255,255,.38);margin-top:6px}
.family-strip{display:grid;gap:12px}
@media(min-width:1024px){.family-strip{grid-template-columns:minmax(0,1fr)}}
.family-box{background:#0a1410;border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:20px}
.family-list{display:grid;gap:8px;margin-top:12px}
@media(min-width:640px){.family-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}
.family-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);font-size:12px}
.family-item strong{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;text-align:left}
.price-inline{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:0;background:rgba(20,184,166,.08);border:1px solid rgba(20,184,166,.12);border-radius:999px;padding:5px 10px}
.price-amount{font-size:15px;font-weight:900;color:#0f172a}
.price-currency{font-size:12px;font-weight:800;color:#0f766e}
.family-sep{opacity:.45}
.tone-urgent{color:#f87171}
.tone-warning{color:#fbbf24}
.tone-positive{color:#22c55e}
.tone-info{color:#38bdf8}
.alerts-list{display:grid;gap:9px;margin-top:12px}
.alert-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);border-radius:18px;padding:13px 14px}
.alert-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}
.alert-title{font-size:13px;font-weight:800}
.alert-meta{font-size:11px;color:rgba(255,255,255,.42)}
.alert-text{font-size:12px;line-height:1.8;color:rgba(255,255,255,.68)}
.empty-muted{padding:14px;border-radius:16px;background:rgba(255,255,255,.03);border:1px dashed rgba(255,255,255,.09);font-size:12px;color:rgba(255,255,255,.42)}
.inline-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.soft-btn{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);color:#fff;border-radius:12px;padding:9px 12px;font-size:12px;font-weight:700;cursor:pointer;font-family:inherit;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.soft-btn:hover{background:rgba(255,255,255,.08)}
.soft-btn.primary{background:rgba(34,197,94,.14);border-color:rgba(34,197,94,.24);color:#22c55e}
.soft-btn.warn{background:rgba(251,191,36,.12);border-color:rgba(251,191,36,.22);color:#fbbf24}
.soft-btn.danger{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.18);color:#f87171}

/* ══ مجموعة أزرار إجراءات الطفل (إدارة + إعدادات) ══ */
.child-action-group{display:flex;flex-direction:column;gap:8px;margin-top:4px}
.child-action-primary{width:100%;min-height:46px;font-size:13px !important;padding:11px 14px !important}
.child-action-secondary{display:flex;flex-wrap:wrap;gap:8px}
.child-action-secondary .soft-btn{flex:1 1 130px;min-height:40px}
.child-action-danger{display:flex;padding-top:4px;border-top:1px solid rgba(239,68,68,.12);margin-top:2px}
.child-action-danger .soft-btn{flex:1 1 auto;min-height:38px;font-size:11px}
@media(max-width:430px){
  .child-action-secondary .soft-btn{flex-basis:100%}
  .child-action-danger .soft-btn{flex-basis:100%}
}

/* ══ تحسين تابات لوحة التحكم (أيقونة + نص) ══ */
.dashboard-tab{display:inline-flex;align-items:center;gap:5px}
.dashboard-tab svg{flex-shrink:0;opacity:.7}
.dashboard-tab.active svg{opacity:1}

/* ══ شبكة الأبناء ══ */
.sec-lbl{font-size:12px;font-weight:700;color:rgba(255,255,255,.4);margin-bottom:14px;letter-spacing:.02em}
.dashboard-workspace{display:grid;gap:22px;align-items:start;position:relative;z-index:1}
@media(min-width:1024px){.dashboard-workspace{grid-template-columns:minmax(0,1fr) minmax(320px,380px)}}
@media(min-width:1024px){.dashboard-workspace.no-priority{grid-template-columns:minmax(0,1fr)}}
.priority-child-rail{display:none}
.priority-child-rail.show{display:block}
@media(min-width:1024px){.priority-child-rail.show{position:sticky;top:104px;grid-column:2}.children-area{grid-column:1}.priority-child-rail .card{border-color:rgba(251,191,36,.22);box-shadow:0 24px 55px -34px rgba(14,165,233,.28)}}
@media(min-width:1024px){.dashboard-workspace.no-priority .children-area{grid-column:1/-1}}
.priority-label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}
.priority-label .sec-lbl{margin-bottom:0;color:#0f766e;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.children-area{display:grid;gap:14px}
.children-grid{display:grid;grid-template-columns:1fr;gap:18px}
@media(min-width:720px){.children-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:1440px){.children-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.children-grid.single-child{grid-template-columns:minmax(0,340px);justify-content:start}
.children-grid .card{width:min(100%,340px);justify-self:start}

/* ══ بطاقة ابن ══ */
.card{background:#0a1410;border:1.5px solid rgba(255,255,255,.07);border-radius:26px;padding:18px;transition:border-color .2s,transform .18s,box-shadow .18s;position:relative;overflow:hidden;min-height:100%}
.card::before{content:'';position:absolute;inset:0 0 auto;height:84px;background:linear-gradient(180deg,rgba(20,184,166,.08),rgba(20,184,166,0));pointer-events:none}
.card:hover{border-color:rgba(34,197,94,.22);transform:translateY(-3px);box-shadow:0 22px 48px -24px rgba(20,184,166,.24)}
.card:active{transform:none}
.card-layout{display:grid;gap:14px;grid-template-columns:minmax(0,1fr)}
.card-primary-col,.card-secondary-col{display:grid;gap:12px;align-content:start}
.card-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:13px}
.avatar{width:44px;height:44px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:21px;color:#22c55e;flex-shrink:0}
.avatar svg{width:18px;height:18px;opacity:.92}
.avatar-stack{display:grid;place-items:center;gap:2px}
.avatar-initial{font-size:16px;font-weight:900;line-height:1;color:currentColor}
.card-head-meta{min-width:0;display:grid;gap:3px}
.child-name{font-weight:900;font-size:16px;line-height:1.25}
.child-age{font-size:12px;color:rgba(255,255,255,.48)}
.card-pin{width:28px;height:28px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:rgba(255,255,255,.34);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);flex-shrink:0}
.prog-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}
.prog-lbl{font-size:11px;color:rgba(255,255,255,.4)}
.prog-g{color:#22c55e;font-size:11px;font-weight:700}
.prog-a{color:#fbbf24;font-size:11px;font-weight:700}
.track{height:5px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden;margin-bottom:11px}
.fill{height:100%;border-radius:99px;background:#22c55e;transition:width .6s}
.fill-a{background:#fbbf24}
.task-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px}
.badge-ok{background:rgba(34,197,94,.12);color:#22c55e;border:1px solid rgba(34,197,94,.25);border-radius:99px;padding:3px 9px;font-size:10px;font-weight:700}
.badge-no{background:rgba(255,255,255,.05);color:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.1);border-radius:99px;padding:3px 9px;font-size:10px;font-weight:700}
.badge-attn{border-radius:99px;padding:4px 9px;font-size:10px;font-weight:800;border:1px solid transparent}
.badge-attn.urgent{background:rgba(239,68,68,.12);color:#f87171;border-color:rgba(239,68,68,.2)}
.badge-attn.warning{background:rgba(251,191,36,.12);color:#fbbf24;border-color:rgba(251,191,36,.2)}
.badge-attn.positive{background:rgba(34,197,94,.12);color:#22c55e;border-color:rgba(34,197,94,.2)}
.badge-attn.info{background:rgba(56,189,248,.12);color:#38bdf8;border-color:rgba(56,189,248,.2)}
.badge-attn.neutral{background:rgba(255,255,255,.05);color:rgba(255,255,255,.58);border-color:rgba(255,255,255,.1)}
.student-code{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;background:#060f06;border:1px solid rgba(255,255,255,.06);margin-bottom:12px;font-size:12px}
.student-code span{display:inline-flex;align-items:center;gap:6px}
.student-code svg{width:14px;height:14px;opacity:.7}
.student-code strong{font-size:13px;letter-spacing:.04em;color:#fff}
.card-note{font-size:12px;line-height:1.9;color:rgba(255,255,255,.56);min-height:auto;margin-bottom:8px}
.mini-metrics{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:12px}
.mini-box{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:11px}
.mini-box .lbl{display:inline-flex;align-items:center;gap:6px}
.mini-box .lbl svg{width:13px;height:13px;opacity:.7}
.mini-box .lbl{font-size:10px;color:rgba(255,255,255,.42);margin-bottom:4px}
.mini-box .val{font-size:13px;font-weight:800;line-height:1.6;word-break:break-word}
.child-alert{padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);font-size:11px;line-height:1.7;margin-bottom:10px}
.preferred-voice{display:grid;gap:6px;margin-bottom:10px;padding:9px 10px;border-radius:12px;background:#060f06;border:1px solid rgba(255,255,255,.06)}
.preferred-voice label{font-size:10px;color:rgba(255,255,255,.48);font-weight:800}
.preferred-voice select{width:100%;border:1px solid rgba(255,255,255,.09);background:#0a1410;color:#fff;border-radius:10px;padding:8px;font-family:inherit;font-size:12px;outline:none}
.preferred-voice select:focus{border-color:rgba(34,197,94,.45)}
.enter-btn{width:100%;background:#22c55e;color:#052e10;border:none;border-radius:13px;padding:11px 12px;font-weight:800;font-size:13px;cursor:pointer;margin-bottom:10px;font-family:inherit;transition:background .15s;min-height:46px}
.enter-btn:hover{background:#1bc155}
.card-actions{display:grid;grid-template-columns:1fr auto auto;gap:8px}
.card-support-row{margin-bottom:0}
.mon-btn{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.2);color:#22c55e;border-radius:10px;padding:8px;font-size:11px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;font-family:inherit;transition:background .15s;min-height:36px}
.mon-btn:hover{background:rgba(34,197,94,.2)}
.ico-btn{width:36px;height:36px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.5);transition:background .15s}
.ico-btn:hover{background:rgba(255,255,255,.1)}

/* ══ حالات ══ */
.state-box{padding:60px 20px;text-align:center;color:rgba(255,255,255,.35);font-size:13px;display:none}
.spinner{width:32px;height:32px;border:2px solid rgba(34,197,94,.2);border-top-color:#22c55e;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 12px}
@keyframes spin{to{transform:rotate(360deg)}}

/* ══ Monitor Panel ══ */
.mon-overlay{position:fixed;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.18),rgba(15,23,42,.42));backdrop-filter:blur(10px);display:none;align-items:flex-end;justify-content:center;z-index:50}
.mon-overlay.open{display:flex}
.mon-panel{background:#0a1410;border-radius:32px 32px 0 0;width:100%;max-width:560px;max-height:90svh;overflow-y:auto;transform:translateY(100%);transition:transform .32s cubic-bezier(.32,0,.4,1);box-shadow:0 35px 90px -48px rgba(15,23,42,.8)}
.mon-overlay.open .mon-panel{transform:translateY(0)}
@media(min-width:1024px){
  .mon-overlay{align-items:stretch;justify-content:flex-end;width:468px;left:auto;right:0}
  .mon-panel{width:468px;max-width:468px;border-radius:32px 0 0 32px;max-height:none;height:calc(100% - 22px);margin:11px 0 11px 0;transform:translateX(100%);border:1px solid rgba(255,255,255,.08);border-right:none;box-shadow:-24px 0 70px rgba(15,23,42,.22)}
  .mon-overlay.open .mon-panel{transform:translateX(0)}
  .drag-h{display:none}
}
.drag-h{width:40px;height:4px;background:rgba(255,255,255,.15);border-radius:99px;margin:12px auto 0}
.mon-hdr{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 16px;border-bottom:1px solid rgba(255,255,255,.07);position:sticky;top:0;background:linear-gradient(180deg,rgba(10,20,16,.98),rgba(10,20,16,.94));z-index:5;backdrop-filter:blur(18px)}
.sh-av{width:48px;height:48px;border-radius:16px;background:#1a3320;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:20px;color:#22c55e;flex-shrink:0;box-shadow:0 16px 28px -20px rgba(34,197,94,.55)}
.sh-name{font-weight:800;font-size:16px}
.sh-sub{font-size:11px;color:rgba(255,255,255,.4)}
.close-btn{width:38px;height:38px;background:rgba(255,255,255,.05);border:none;border-radius:12px;color:rgba(255,255,255,.5);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,transform .15s}
.close-btn:hover{background:rgba(255,255,255,.1)}
.mon-body{padding:18px;display:flex;flex-direction:column;gap:22px}
.sh-lbl{font-size:11px;font-weight:700;color:rgba(255,255,255,.4);margin-bottom:10px;letter-spacing:.03em}
.week-row{display:flex;gap:6px;justify-content:space-between}
.day{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;flex-shrink:0}
.d-done{background:rgba(34,197,94,.18);color:#22c55e;border:1.5px solid rgba(34,197,94,.35)}
.d-miss{background:rgba(255,255,255,.04);color:rgba(255,255,255,.25);border:1.5px solid rgba(255,255,255,.07)}
.d-today{background:#22c55e;color:#052e10}
.stats3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.stat-box{background:#060f06;border:1px solid rgba(255,255,255,.06);border-radius:18px;padding:14px 12px;text-align:center}
.stat-lbl{font-size:10px;color:rgba(255,255,255,.4);margin-bottom:3px}
.stat-val{font-size:24px;font-weight:800;color:#22c55e;line-height:1}
.stat-val-w{color:#fff}
.stat-hint{font-size:10px;color:rgba(255,255,255,.3);margin-top:2px}
.rec-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.rec-item:last-child{border:none}
.ri-info{flex:1;min-width:0}
.ri-name{font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ri-date{font-size:10px;color:rgba(255,255,255,.35)}
.ri-score{display:flex;align-items:center;gap:7px;flex-shrink:0;width:95px}
.sbar{height:5px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden;flex:1}
.sf{height:100%;border-radius:99px}
.ri-pct{font-size:13px;font-weight:800;min-width:32px;text-align:left}
.weak-item{display:flex;align-items:center;justify-content:space-between;background:rgba(251,191,36,.07);border:1px solid rgba(251,191,36,.2);border-radius:11px;padding:10px 12px;margin-bottom:6px}
.wi-name{font-size:13px;font-weight:700}
.wi-note{font-size:10px;color:rgba(255,255,255,.4)}
.wi-score{font-size:14px;font-weight:800;color:#fbbf24}
.ok-item{display:flex;align-items:center;gap:9px;background:rgba(34,197,94,.06);border:1px solid rgba(34,197,94,.15);border-radius:11px;padding:10px 12px}
.ok-txt{font-size:13px;color:rgba(34,197,94,.8)}
.att-item{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.05)}
.att-item:last-child{border:none}
.at-title{font-size:13px;font-weight:700}
.at-date{font-size:10px;color:rgba(255,255,255,.35)}
.at-p{background:rgba(34,197,94,.12);color:#22c55e;border:1px solid rgba(34,197,94,.25);border-radius:99px;padding:3px 9px;font-size:11px;font-weight:700}
.at-a{background:rgba(239,68,68,.1);color:#f87171;border:1px solid rgba(239,68,68,.2);border-radius:99px;padding:3px 9px;font-size:11px;font-weight:700}
.rec-card{border-radius:13px;padding:12px}
.rc-title{font-size:11px;font-weight:700;margin-bottom:4px}
.rc-txt{font-size:13px;color:rgba(255,255,255,.6);line-height:1.6}
.sh-loading{padding:20px;text-align:center;font-size:12px;color:rgba(255,255,255,.3)}
.monitor-context{display:grid;gap:10px}
.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.detail-card{background:#060f06;border:1px solid rgba(255,255,255,.06);border-radius:18px;padding:13px}
.detail-card.full{grid-column:1/-1}
.detail-label{font-size:10px;color:rgba(255,255,255,.42);margin-bottom:4px}
.detail-value{font-size:14px;font-weight:800;line-height:1.6}
.monitor-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.monitor-code{display:grid;gap:12px}
.code-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:16px;background:#060f06;border:1px solid rgba(255,255,255,.06)}
.code-row strong{font-size:18px;letter-spacing:.04em}
.code-meta{font-size:11px;color:rgba(255,255,255,.42)}
.code-form{display:grid;grid-template-columns:1fr auto;gap:8px}
.monitor-alerts{display:grid;gap:10px}
.mini-alert{padding:12px 13px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}
.mini-alert-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}
.mini-alert-title{font-size:12px;font-weight:800}
.mini-alert-text{font-size:12px;line-height:1.8;color:rgba(255,255,255,.62)}

/* ══ PIN Modal ══ */
.pin-overlay{position:fixed;inset:0;background:linear-gradient(180deg,rgba(3,7,6,.68),rgba(15,23,42,.5));backdrop-filter:blur(12px);display:none;align-items:center;justify-content:center;z-index:60;padding:16px}
.pin-overlay.open{display:flex}
.pin-modal{position:relative;background:linear-gradient(180deg,#0a1410,#08100d);border-radius:28px;width:100%;max-width:430px;overflow:hidden;border:1px solid rgba(255,255,255,.08);box-shadow:0 32px 90px -42px rgba(0,0,0,.8),0 0 0 1px rgba(34,197,94,.05)}
.pin-modal::before{content:'';position:absolute;inset:auto auto 100% 18px;width:120px;height:120px;background:radial-gradient(circle,rgba(34,197,94,.16),transparent 70%);transform:translateY(58px);pointer-events:none}
.pin-top{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 16px;border-bottom:1px solid rgba(255,255,255,.07)}
.pin-boxes{display:flex;justify-content:center;gap:12px;margin:18px 0 14px;flex-wrap:wrap}
.pbox{width:52px;height:60px;background:#060f06;border:1.5px solid rgba(255,255,255,.12);border-radius:14px;text-align:center;font-size:26px;font-weight:900;color:#22c55e;outline:none;transition:border-color .2s;direction:ltr;font-family:inherit}
.pbox:focus{border-color:#22c55e;box-shadow:0 0 0 3px rgba(34,197,94,.18)}
.es-btn{width:100%;background:#22c55e;color:#052e10;border:none;border-radius:14px;padding:14px;font-weight:800;font-size:15px;cursor:pointer;font-family:inherit;transition:background .15s}
.es-btn:hover{background:#1bc155}

/* ══ Form Modal ══ */
.form-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;z-index:60;padding:16px}
.form-overlay.open{display:flex}
.form-modal{background:#0a1410;border-radius:24px;width:100%;max-width:420px;border:1px solid rgba(255,255,255,.08);overflow:hidden}
.form-hdr{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 14px;border-bottom:1px solid rgba(255,255,255,.07)}
.field{width:100%;background:#060f06;border:1.5px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;padding:10px 14px;font-family:inherit;font-size:14px;outline:none;transition:border-color .2s;display:block}
.field:focus{border-color:#22c55e}
.field::placeholder{color:rgba(255,255,255,.3)}
textarea.field{resize:none}
.flbl{font-size:11px;color:rgba(255,255,255,.4);display:block;margin-bottom:5px;margin-top:12px}
.frow{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.session-settings-card{display:grid;gap:12px;margin:16px 0 4px;padding:14px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07)}
.session-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#toasts{position:fixed;bottom:24px;inset-inline:0;z-index:90;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;padding:0 16px}

/* ══ Parent Dashboard V2 Overrides ══ */
body.dashboard-theme{
  background:linear-gradient(180deg,#f9fffe 0%,#effcf8 36%,#f7fffe 64%,#ffffff 100%);
  color:#0f172a;
}
body.dashboard-theme .sidebar,
body.dashboard-theme .mob-hdr,
body.dashboard-theme .desk-hdr,
body.dashboard-theme .live-banner,
body.dashboard-theme .summary-hero,
body.dashboard-theme .family-box,
body.dashboard-theme .card,
body.dashboard-theme .mon-panel,
body.dashboard-theme .pin-modal,
body.dashboard-theme .form-modal{
  background:#ffffff;
  border-color:rgba(20,184,166,.12);
  box-shadow:0 16px 34px rgba(15,23,42,.05);
}
body.dashboard-theme .sidebar,
body.dashboard-theme .mob-hdr{
  backdrop-filter:blur(16px);
}
body.dashboard-theme .mob-hdr-link{
  background:#f8fffe;
  border-color:rgba(20,184,166,.12);
  color:#0f766e;
}
body.dashboard-theme .mob-hdr-btn{
  background:linear-gradient(135deg,#14b8a6,#0f766e);
  color:#ffffff;
}
body.dashboard-theme .sidebar{
  background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(248,255,254,.98));
  border-left-color:rgba(20,184,166,.12);
  box-shadow:18px 0 40px -34px rgba(15,23,42,.12);
}
body.dashboard-theme .sb-top,
body.dashboard-theme .sb-live-wrap,
body.dashboard-theme .sb-foot,
body.dashboard-theme .desk-hdr,
body.dashboard-theme .mon-hdr,
body.dashboard-theme .pin-top,
body.dashboard-theme .form-hdr{
  border-color:rgba(20,184,166,.1);
}
body.dashboard-theme .sb-sub,
body.dashboard-theme .sb-section-lbl,
body.dashboard-theme .sec-lbl,
body.dashboard-theme .summary-kicker,
body.dashboard-theme .summary-note,
body.dashboard-theme .prog-lbl,
body.dashboard-theme .child-age,
body.dashboard-theme .card-note,
body.dashboard-theme .mini-box .lbl,
body.dashboard-theme .preferred-voice label,
body.dashboard-theme .detail-label,
body.dashboard-theme .stat-lbl,
body.dashboard-theme .stat-hint,
body.dashboard-theme .code-meta,
body.dashboard-theme .flbl,
body.dashboard-theme .sh-sub,
body.dashboard-theme .sh-lbl,
body.dashboard-theme .empty-muted,
body.dashboard-theme .alert-meta,
body.dashboard-theme .alert-text,
body.dashboard-theme .intervention-text{
  color:#64748b;
}
body.dashboard-theme .sb-nav a,
body.dashboard-theme .soft-btn,
body.dashboard-theme .close-btn,
body.dashboard-theme .ico-btn{
  color:#334155;
}
body.dashboard-theme .sb-top,
body.dashboard-theme .sb-nav{
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(242,255,251,.96));
}
body.dashboard-theme .sb-logo{
  background:linear-gradient(135deg,#14b8a6,#0f766e);
  color:#ffffff;
}
body.dashboard-theme .sb-add{
  background:linear-gradient(135deg,#14b8a6,#0f766e);
  color:#ffffff;
}
body.dashboard-theme .sb-add:hover{background:linear-gradient(135deg,#0ea5a4,#0f766e)}
body.dashboard-theme .sb-nav a:hover{
  background:#f0fdfa;
  color:#0f766e;
}
body.dashboard-theme .sb-logout{
  background:#fff5f5;
  border-color:rgba(248,113,113,.16);
}
body.dashboard-theme .sb-nav a:hover,
body.dashboard-theme .soft-btn:hover,
body.dashboard-theme .close-btn:hover,
body.dashboard-theme .ico-btn:hover{
  background:#f8fffe;
}
body.dashboard-theme .soft-btn,
body.dashboard-theme .close-btn,
body.dashboard-theme .ico-btn,
body.dashboard-theme .summary-card,
body.dashboard-theme .family-item,
body.dashboard-theme .mini-box,
body.dashboard-theme .child-alert,
body.dashboard-theme .preferred-voice,
body.dashboard-theme .student-code,
body.dashboard-theme .detail-card,
body.dashboard-theme .code-row,
body.dashboard-theme .stat-box,
body.dashboard-theme .sb-live-card,
body.dashboard-theme .alert-card,
body.dashboard-theme .mini-alert,
body.dashboard-theme .ok-item,
body.dashboard-theme .weak-item{
  background:#f8fffe;
  border-color:rgba(20,184,166,.1);
}
body.dashboard-theme .mon-panel{
  background:linear-gradient(180deg,#ffffff,#f7fffd);
  border-color:rgba(20,184,166,.12);
}
body.dashboard-theme .mon-hdr{
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(241,253,250,.92));
}
body.dashboard-theme .sh-av{
  background:linear-gradient(135deg,#ccfbf1,#99f6e4);
  color:#0f766e;
}
body.dashboard-theme .monitor-context,
body.dashboard-theme .monitor-code{
  padding:14px;
  border-radius:22px;
  background:linear-gradient(180deg,#ffffff,#f8fffe);
  border:1px solid rgba(20,184,166,.1);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85);
}
body.dashboard-theme .stat-box,
body.dashboard-theme .detail-card,
body.dashboard-theme .code-row,
body.dashboard-theme .mini-alert{
  border-radius:18px;
}
body.dashboard-theme .monitor-actions .soft-btn.primary,
body.dashboard-theme .watch-btn{
  background:linear-gradient(135deg,#14b8a6,#0f766e);
  color:#ffffff;
  border-color:transparent;
}
body.dashboard-theme .monitor-actions .soft-btn,
body.dashboard-theme .code-form .soft-btn,
body.dashboard-theme .inline-actions .soft-btn{
  min-height:40px;
}
body.dashboard-theme .track,
body.dashboard-theme .sbar{
  background:rgba(148,163,184,.18);
}
body.dashboard-theme .field,
body.dashboard-theme .preferred-voice select,
body.dashboard-theme .pbox{
  background:#f8fffe;
  border-color:rgba(20,184,166,.14);
  color:#0f172a;
}
body.dashboard-theme .field::placeholder{
  color:#94a3b8;
}
body.dashboard-theme .session-settings-card{
  background:linear-gradient(180deg,#ffffff,#f8fffe);
  border-color:rgba(20,184,166,.1);
}
body.dashboard-theme .student-code strong,
body.dashboard-theme .code-row strong,
body.dashboard-theme .stat-val-w,
body.dashboard-theme .detail-value,
body.dashboard-theme .ri-name,
body.dashboard-theme .at-title,
body.dashboard-theme .mini-alert-title,
body.dashboard-theme .wi-name,
body.dashboard-theme .child-name,
body.dashboard-theme .sh-name,
body.dashboard-theme #mob-name,
body.dashboard-theme #desk-name,
body.dashboard-theme #sb-name,
body.dashboard-theme #summary-headline,
body.dashboard-theme #family-plan-name,
body.dashboard-theme #intervention-title{
  color:#0f172a;
}
body.dashboard-theme .intervention-card{
  background:linear-gradient(135deg,rgba(254,226,226,.92),rgba(255,247,237,.96) 55%,rgba(240,253,250,.98));
  border-color:rgba(248,113,113,.2);
  box-shadow:0 18px 45px -28px rgba(239,68,68,.22);
}
body.dashboard-theme .summary-hero{
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,253,250,.95));
}
body.dashboard-theme .live-banner,
body.dashboard-theme .sb-live-card{
  background:linear-gradient(180deg,#ffffff,#f0fdfa);
}
body.dashboard-theme .summary-card,
body.dashboard-theme .card,
body.dashboard-theme .family-box{
  border-radius:28px;
}
body.dashboard-theme .price-inline{
  background:#ecfdf5;
  border-color:rgba(20,184,166,.14);
}
body.dashboard-theme .price-amount{color:#0f172a}
body.dashboard-theme .price-currency{color:#0f766e}
body.dashboard-theme .card-pin{
  background:#f8fffe;
  border-color:rgba(20,184,166,.12);
  color:#0f766e;
}
body.dashboard-theme .summary-card,
body.dashboard-theme .card,
body.dashboard-theme .family-box,
body.dashboard-theme .intervention-card,
body.dashboard-theme .summary-hero{
  box-shadow:0 24px 55px -34px rgba(15,23,42,.14);
}
body.dashboard-theme .summary-value{color:#0f766e}
body.dashboard-theme .summary-value.tone-warning{color:#d97706}
body.dashboard-theme .summary-value.tone-info{color:#0284c7}
body.dashboard-theme .summary-value.tone-positive{color:#059669}
body.dashboard-theme .priority-child-rail .card{
  background:linear-gradient(180deg,#ffffff,#f7fffd);
}
body.dashboard-theme .card::before{
  background:linear-gradient(180deg,rgba(20,184,166,.07),rgba(20,184,166,0));
}
body.dashboard-theme .card-note{color:#526377}
body.dashboard-theme .content::before{opacity:1}
body.dashboard-theme .children-area > .sec-lbl{margin-bottom:2px}
body.dashboard-theme .pin-modal{
  background:linear-gradient(180deg,#ffffff,#f0fdfa);
  border-color:rgba(20,184,166,.14);
  box-shadow:0 28px 70px -36px rgba(15,23,42,.24);
}
body.dashboard-theme .pin-modal::before{
  background:radial-gradient(circle,rgba(20,184,166,.18),transparent 70%);
}
body.dashboard-theme .pin-top{
  background:linear-gradient(180deg,rgba(240,253,250,.92),rgba(255,255,255,.86));
}
body.dashboard-theme .pin-boxes{
  margin-top:20px;
}
body.dashboard-theme .es-btn{
  box-shadow:0 18px 40px -28px rgba(20,184,166,.6);
}
body.dashboard-theme .pbox{
  border-radius:18px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.85),0 14px 30px -24px rgba(20,184,166,.32);
}
body.dashboard-theme .badge-no,
body.dashboard-theme .badge-attn.neutral{
  background:#f8fafc;
  color:#64748b;
  border-color:rgba(148,163,184,.18);
}
body.dashboard-theme .watch-btn{
  text-decoration:none;
}

@media(min-width:768px) and (max-width:1023px){
  .content{padding:18px 18px 28px}
  .mob-hdr{padding:14px 18px}
  .mob-hdr-logo{width:40px;height:40px;border-radius:13px}
  .mob-hdr-title{font-size:15px}
  .mob-hdr-link,.mob-hdr-btn{min-height:40px;padding-inline:14px}
  .overview-hero{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
  .intervention-card{grid-column:1/-1}
  .summary-hero,
  .family-box{height:100%}
  .summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .family-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-workspace{grid-template-columns:minmax(0,1fr)}
  .children-area{order:1}
  .priority-child-rail.show{order:2}
  .children-grid{grid-template-columns:repeat(2,minmax(0,340px));gap:14px}
  .card{padding:15px}
  .card-layout{grid-template-columns:minmax(0,1fr);gap:12px}
  .card-top{gap:12px}
  .card-actions{grid-template-columns:1fr auto auto}
}

@media(max-width:767px){
  .mob-hdr{padding:10px 14px;gap:10px}
  .mob-hdr-actions{gap:6px}
  .family-package-link{display:none}
  .content{padding:14px 14px 24px}
  .content::before{min-height:260px;background:radial-gradient(circle at top right,rgba(20,184,166,.12),transparent 42%),radial-gradient(circle at top left,rgba(14,165,233,.08),transparent 34%)}
  .live-banner{padding:12px;border-radius:20px}
  .overview-hero{gap:12px;margin-bottom:18px}
  .intervention-card,
  .summary-hero,
  .family-box,
  .card{border-radius:22px}
  .intervention-card{padding:14px}
  .intervention-title{font-size:18px;line-height:1.5}
  .intervention-text{font-size:12px;line-height:1.75}
  .summary-hero{padding:16px 14px}
  .summary-grid{grid-template-columns:1fr;gap:8px}
  .summary-card{padding:12px}
  .summary-value{font-size:24px}
  .family-box{padding:15px}
  .family-item{align-items:flex-start;flex-direction:column;gap:6px}
  .family-item strong{justify-content:flex-start;text-align:right}
  .dashboard-workspace{gap:14px}
  .children-area{gap:10px}
  .children-grid{gap:12px}
  .children-grid .card{width:100%}
  .card{padding:14px}
  .card-layout{grid-template-columns:1fr;gap:12px}
  .card-top{grid-template-columns:auto minmax(0,1fr);align-items:flex-start}
  .card-pin{grid-column:2;justify-self:start;margin-top:2px}
  .student-code{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .student-code strong{justify-self:end}
  .card-note{min-height:auto}
  .mini-metrics{grid-template-columns:1fr;gap:7px}
  .card-actions{grid-template-columns:1fr 1fr;align-items:stretch}
  .card-actions .mon-btn{grid-column:1/-1}
  .state-box{padding:36px 16px}
  .mon-overlay{padding:0}
  .mon-panel{max-width:none;max-height:92svh;border-radius:26px 26px 0 0}
  .mon-hdr{padding:16px 14px 14px}
  .mon-body{padding:14px;gap:18px}
  .detail-grid,
  .stats3,
  .monitor-actions,
  .code-form,
  .frow,
  .session-settings-grid{grid-template-columns:1fr}
  .week-row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
  .day{width:100%;height:34px;border-radius:12px}
  .ri-score{width:82px}
  .pin-overlay,
  .form-overlay{padding:12px}
  .pin-modal,
  .form-modal{border-radius:24px}
  .pin-top,
  .form-hdr{padding:16px 16px 14px}
  .pin-boxes{gap:8px}
  .pbox{width:46px;height:54px;font-size:24px}
}

@media(max-width:479px){
  .mob-hdr{padding:10px 12px}
  .mob-hdr{align-items:flex-start}
  .mob-hdr-brand{align-items:center}
  .mob-hdr-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}
  .mob-hdr-link,.mob-hdr-btn{min-height:36px;padding-inline:10px;font-size:11px}
  .content{padding:12px 12px 22px}
  .summary-hero,
  .family-box,
  .card{border-radius:20px}
  .card-top{grid-template-columns:minmax(0,1fr);gap:8px}
  .avatar{width:48px;height:48px}
  .card-head-meta{order:2}
  .card-pin{order:3;grid-column:auto;justify-self:start;margin-top:0}
  .student-code{grid-template-columns:1fr;gap:6px}
  .student-code strong{justify-self:start}
  .task-row{gap:8px;align-items:flex-start;flex-direction:column}
  .card-actions{grid-template-columns:1fr}
  .ico-btn{width:100%;height:40px;border-radius:12px}
  .monitor-context,
  .monitor-code{padding:12px}
  .pin-boxes{gap:7px}
  .pbox{width:42px;height:50px;font-size:22px;border-radius:14px}
}
