/* School Master Parent Portal App UI v1 — 2026-09-01
   Visual-only global layer for /parent. Existing parent permissions, data and actions remain unchanged. */

/* LoginLayout is shared with the parent portal. Reset login-page composition only when the parent app is present. */
.sm-login-page:has(.parent-shell),
.sm-login-page:has(.parent-state-shell){
    width:100%!important;
    min-height:100dvh!important;
    padding:0!important;
    margin:0!important;
    display:block!important;
    background:#f4f6fb!important;
    overflow-x:hidden!important;
}
.sm-login-page:has(.parent-shell)>.sm-login-glow,
.sm-login-page:has(.parent-state-shell)>.sm-login-glow{display:none!important}

/* Parent app quick navigation from LoginLayout. */
.sm-login-page:has(.parent-shell)>.parent-layout-quicknav{
    position:fixed;
    top:12px;
    left:50%;
    transform:translateX(-50%);
    z-index:90;
    min-height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    margin:0;
    padding:5px;
    border:1px solid rgba(92,58,180,.14);
    border-radius:15px;
    background:rgba(255,255,255,.94);
    box-shadow:0 10px 28px rgba(35,25,75,.10);
    backdrop-filter:blur(14px);
}
.sm-login-page:has(.parent-shell)>.parent-layout-quicknav a{
    min-height:32px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    padding:0 11px;
    border-radius:10px;
    color:#5f687b;
    text-decoration:none;
    font-size:12px;
    font-weight:850;
    white-space:nowrap;
}
.sm-login-page:has(.parent-shell)>.parent-layout-quicknav a:first-child{
    color:#fff;
    background:linear-gradient(135deg,#5a23cf,#7b32e6);
    box-shadow:0 5px 14px rgba(88,35,205,.22);
}
.sm-login-page:has(.parent-shell)>.parent-layout-quicknav a:hover{background:#f1edff;color:#5424c5}
.sm-login-page:has(.parent-shell)>.parent-layout-quicknav a:first-child:hover{color:#fff;background:linear-gradient(135deg,#4e1bbb,#702bd9)}

.parent-shell{
    --pp-primary:#6026d6;
    --pp-primary-2:#7c36e8;
    --pp-ink:#15213d;
    --pp-muted:#70798d;
    --pp-line:#e5e8f0;
    --pp-surface:#fff;
    --pp-soft:#f7f8fc;
    --pp-gold:#ffad32;
    width:100%!important;
    max-width:none!important;
    min-height:100dvh;
    margin:0!important;
    color:var(--pp-ink);
    background:
      radial-gradient(circle at 5% 4%,rgba(112,63,217,.09),transparent 27%),
      radial-gradient(circle at 96% 88%,rgba(255,174,64,.08),transparent 25%),
      #f4f6fb;
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}

/* Compact app header. */
.parent-topbar{
    position:sticky;
    top:0;
    z-index:80;
    min-height:70px;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
    padding:10px 24px!important;
    border:0!important;
    border-bottom:1px solid rgba(30,39,65,.09)!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:0 5px 20px rgba(39,28,78,.055)!important;
    backdrop-filter:blur(18px);
}
.parent-brand,.parent-user{display:flex!important;align-items:center!important;gap:11px!important;min-width:0}
.parent-brand img{
    width:46px!important;
    height:46px!important;
    max-width:46px!important;
    max-height:46px!important;
    object-fit:contain!important;
    flex:0 0 46px!important;
    filter:drop-shadow(0 5px 9px rgba(83,37,180,.16));
}
.parent-brand>div,.parent-user>div{display:grid!important;gap:1px!important;min-width:0}
.parent-brand strong{font-size:14px!important;line-height:1.15!important;letter-spacing:.055em!important;color:#22164c!important;font-weight:950!important}
.parent-brand span,.parent-user small{font-size:11px!important;line-height:1.25!important;color:#7b8395!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.parent-user>span{
    width:38px;height:38px;display:grid!important;place-items:center!important;
    border-radius:12px;background:linear-gradient(145deg,#f5efff,#e9e0ff);font-size:19px!important;
    box-shadow:inset 0 1px 0 #fff,0 5px 12px rgba(82,38,170,.09);
}
.parent-user strong{font-size:12px!important;color:#242a3c!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.parent-user .btn{
    min-height:38px!important;padding:0 14px!important;border-radius:11px!important;
    border:1px solid #ddd7ea!important;background:#fff!important;color:#55466d!important;
    box-shadow:0 4px 12px rgba(40,27,75,.05)!important;font-weight:850!important;
}
.parent-user .btn:hover{border-color:#a992e3!important;color:#5c27cd!important;transform:translateY(-1px)}

.parent-main{width:min(1220px,calc(100% - 32px))!important;max-width:1220px!important;margin:0 auto!important;padding:24px 0 96px!important}

/* Welcome banner. */
.parent-welcome{
    position:relative;
    overflow:hidden;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:20px!important;
    min-height:150px;
    padding:28px 30px!important;
    border:0!important;
    border-radius:24px!important;
    color:#fff!important;
    background:
      radial-gradient(circle at 82% 22%,rgba(255,190,67,.34),transparent 19%),
      radial-gradient(circle at 93% 72%,rgba(151,92,255,.36),transparent 24%),
      linear-gradient(135deg,#261153 0%,#4b1aa4 50%,#7229d9 100%)!important;
    box-shadow:0 20px 48px rgba(69,34,144,.20)!important;
}
.parent-welcome::after{
    content:"";position:absolute;right:-80px;top:-120px;width:310px;height:310px;border-radius:50%;
    border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 54px rgba(255,255,255,.035),0 0 0 108px rgba(255,255,255,.02);pointer-events:none;
}
.parent-welcome>div{position:relative;z-index:1;max-width:760px}
.parent-welcome small{display:block!important;color:#e7dfff!important;opacity:1!important;font-size:10px!important;letter-spacing:.13em!important;font-weight:900!important}
.parent-welcome h1{margin:6px 0 8px!important;color:#fff!important;font-size:clamp(25px,3vw,37px)!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:950!important}
.parent-welcome p{max-width:700px!important;margin:0!important;color:#e7e0f6!important;font-size:13px!important;line-height:1.55!important}
.parent-readonly{
    position:relative;z-index:1;min-height:36px;display:inline-flex!important;align-items:center!important;
    padding:0 13px!important;border:1px solid rgba(255,218,139,.55)!important;border-radius:999px!important;
    color:#ffe3a0!important;background:rgba(255,196,75,.09)!important;font-size:10px!important;letter-spacing:.055em!important;font-weight:950!important;white-space:nowrap;
}

/* Linked children switcher. */
.parent-child-switcher,.parent-card{
    margin-top:18px!important;
    padding:20px!important;
    border:1px solid rgba(40,49,77,.09)!important;
    border-radius:20px!important;
    background:#fff!important;
    box-shadow:0 10px 30px rgba(32,29,57,.055)!important;
}
.parent-section-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin-bottom:14px!important}
.parent-section-head>div{min-width:0}
.parent-section-head small,.parent-student-title small{font-size:9px!important;letter-spacing:.12em!important;color:#7855bf!important;font-weight:950!important;opacity:1!important}
.parent-section-head h2{margin:3px 0 0!important;font-size:17px!important;line-height:1.2!important;color:#18223a!important;font-weight:900!important}
.parent-section-head>span{padding:5px 9px;border-radius:999px;background:#f4f0ff;color:#6d3bd1!important;font-size:10px!important;font-weight:850!important}
.parent-section-head button{min-height:32px;padding:0 10px;border:1px solid #e1d9f3!important;border-radius:9px!important;background:#fff!important;color:#6026d6!important;font-size:11px;font-weight:850;cursor:pointer}
.parent-child-list{display:flex!important;gap:12px!important;overflow-x:auto!important;padding:2px 2px 6px!important;scrollbar-width:thin}
.parent-child-card{
    min-width:270px!important;max-width:340px;display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:11px!important;
    padding:12px 13px!important;border:1px solid #e4e5ec!important;border-radius:15px!important;background:linear-gradient(145deg,#fff,#fbfbfe)!important;color:#202840!important;
    box-shadow:0 6px 14px rgba(27,31,49,.04)!important;text-align:left!important;cursor:pointer;transition:.18s ease;
}
.parent-child-card:hover{transform:translateY(-2px);border-color:#bca9e8!important;box-shadow:0 10px 22px rgba(80,43,157,.10)!important}
.parent-child-card.active{border-color:#6d32df!important;background:linear-gradient(145deg,#fff,#f6f1ff)!important;box-shadow:0 0 0 3px rgba(104,48,218,.08),0 12px 25px rgba(91,46,176,.13)!important}
.parent-child-card>span:nth-child(2){display:grid!important;gap:2px!important;min-width:0}
.parent-child-card>span:nth-child(2) strong{font-size:12px!important;color:#20263a!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.parent-child-card small{font-size:10px!important;color:#7a8190!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.parent-child-card em{font-size:9px!important;font-style:normal!important;color:#6d31dc!important;font-weight:900!important}
.parent-child-avatar,.parent-photo span{
    display:grid!important;place-items:center!important;width:44px!important;height:44px!important;border-radius:14px!important;
    background:linear-gradient(145deg,#f2eaff,#dfd2ff)!important;color:#5a24cd!important;font-size:12px!important;font-weight:950!important;
    box-shadow:inset 0 1px 0 #fff,0 6px 12px rgba(82,40,165,.09)!important;
}

/* Student profile strip. */
.parent-student-hero{
    display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:18px!important;
    margin-top:18px!important;padding:18px 20px!important;border:1px solid rgba(52,58,82,.09)!important;border-radius:20px!important;
    background:linear-gradient(120deg,#fff 0%,#fdfcff 66%,#f7f1ff 100%)!important;box-shadow:0 10px 26px rgba(31,28,55,.045)!important;
}
.parent-photo{width:70px!important;height:70px!important;border-radius:18px!important;overflow:hidden!important;background:#eee7ff!important;display:grid!important;place-items:center!important;box-shadow:0 8px 18px rgba(82,40,165,.10)!important}
.parent-photo img{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important}
.parent-photo span{width:100%!important;height:100%!important;border-radius:18px!important;font-size:18px!important}
.parent-student-title h2{margin:3px 0 4px!important;font-size:22px!important;color:#17213a!important;font-weight:950!important}
.parent-student-title p{margin:0!important;color:#777f90!important;font-size:11px!important}
.parent-mini-facts{display:flex!important;align-items:stretch!important;justify-content:flex-end!important;gap:8px!important;flex-wrap:wrap!important}
.parent-mini-facts div{min-width:108px!important;display:grid!important;gap:2px!important;padding:10px 11px!important;border:1px solid #ebe8f2!important;border-radius:12px!important;background:rgba(255,255,255,.78)!important}
.parent-mini-facts small{font-size:8px!important;color:#8a90a0!important;text-transform:uppercase;letter-spacing:.04em}
.parent-mini-facts strong{font-size:10px!important;color:#30364a!important}

/* App service launcher: the existing inline grid is retained, buttons become premium 3D cards. */
.parent-card[aria-label="Parent portal quick actions"]{padding:20px!important}
.parent-card[aria-label="Parent portal quick actions"]>div[style]{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:13px!important;margin-top:12px!important}
.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn{
    position:relative!important;overflow:hidden!important;min-height:118px!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-end!important;gap:6px!important;
    padding:18px 16px 16px!important;border:1px solid #e3def0!important;border-radius:18px!important;background:linear-gradient(150deg,#fff 0%,#faf8ff 100%)!important;color:#1b2238!important;
    box-shadow:0 10px 20px rgba(40,30,80,.07),inset 0 1px 0 rgba(255,255,255,.95)!important;text-align:left!important;white-space:normal!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease!important;
}
.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn::before{
    content:"";position:absolute;top:-32px;right:-30px;width:92px;height:92px;border-radius:28px;background:linear-gradient(145deg,rgba(100,42,218,.16),rgba(100,42,218,.035));transform:rotate(18deg);pointer-events:none;
}
.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn:nth-child(2)::before{background:linear-gradient(145deg,rgba(0,151,167,.18),rgba(0,151,167,.035))}
.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn:nth-child(3)::before{background:linear-gradient(145deg,rgba(236,142,20,.20),rgba(236,142,20,.035))}
.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn:nth-child(4)::before{background:linear-gradient(145deg,rgba(220,64,115,.18),rgba(220,64,115,.035))}
.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn:hover{transform:translateY(-5px)!important;border-color:#bba8e7!important;box-shadow:0 18px 32px rgba(76,43,146,.14),inset 0 1px 0 #fff!important}
.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn strong{position:relative;z-index:1;font-size:13px!important;line-height:1.25!important;color:#1f263a!important;font-weight:950!important}
.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn small{position:relative;z-index:1;display:block!important;max-width:220px;font-size:10px!important;line-height:1.4!important;color:#737b8d!important;font-weight:650!important}

/* App tabs. On phone these become the fixed bottom navigation. */
.parent-tabs{
    position:sticky;top:82px;z-index:55;display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important;
    margin-top:18px!important;padding:7px!important;border:1px solid rgba(65,53,101,.08)!important;border-radius:17px!important;background:rgba(236,238,245,.94)!important;box-shadow:0 8px 20px rgba(35,32,54,.045)!important;backdrop-filter:blur(12px);
}
.parent-tabs button{
    min-height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;
    padding:0 12px!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#667083!important;font-size:11px!important;font-weight:850!important;white-space:nowrap!important;cursor:pointer;
}
.parent-tabs button:hover{color:#5c27cf!important;background:rgba(255,255,255,.58)!important}
.parent-tabs button.active{background:#fff!important;color:#5c25cf!important;box-shadow:0 6px 14px rgba(54,38,91,.10)!important}
.parent-tabs span{margin:0!important;font-size:14px!important}

/* KPI cards. */
.parent-kpi-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:13px!important;margin-top:18px!important}
.parent-kpi-grid article{
    position:relative;overflow:hidden;min-height:102px;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:12px!important;
    padding:16px!important;border:1px solid rgba(45,54,79,.08)!important;border-radius:18px!important;background:#fff!important;
    box-shadow:0 9px 24px rgba(29,31,47,.055)!important;
}
.parent-kpi-grid article::after{content:"";position:absolute;right:-24px;bottom:-28px;width:80px;height:80px;border-radius:50%;background:rgba(97,38,214,.045)}
.parent-kpi-grid article:nth-child(2)::after{background:rgba(235,153,25,.07)}
.parent-kpi-grid article:nth-child(3)::after{background:rgba(0,146,160,.06)}
.parent-kpi-grid article:nth-child(4)::after{background:rgba(216,62,120,.055)}
.parent-kpi-grid article>span{width:46px!important;height:46px!important;display:grid!important;place-items:center!important;border-radius:14px!important;background:linear-gradient(145deg,#efe7ff,#ddd0ff)!important;color:#5b24ce!important;font-size:18px!important;font-weight:950!important;box-shadow:inset 0 1px 0 #fff,0 7px 15px rgba(86,42,172,.11)!important}
.parent-kpi-grid article:nth-child(2)>span{background:linear-gradient(145deg,#fff1d7,#ffe0a6)!important;color:#a66500!important}
.parent-kpi-grid article:nth-child(3)>span{background:linear-gradient(145deg,#dff8f8,#c7eeee)!important;color:#087f89!important}
.parent-kpi-grid article:nth-child(4)>span{background:linear-gradient(145deg,#ffe5ee,#ffd0e1)!important;color:#b82f64!important}
.parent-kpi-grid article>div{position:relative;z-index:1;display:grid!important;gap:1px!important;min-width:0}
.parent-kpi-grid small{font-size:9px!important;color:#858c9c!important;font-weight:800!important;text-transform:uppercase;letter-spacing:.04em}
.parent-kpi-grid strong{font-size:20px!important;line-height:1.12!important;color:#172038!important;font-weight:950!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.parent-kpi-grid em{font-size:9px!important;font-style:normal!important;color:#8a91a0!important}
.parent-fee-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}

.parent-two-col{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:16px!important}
.parent-list{display:grid!important}
.parent-list>div{display:grid!important;grid-template-columns:auto 115px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;padding:11px 0!important;border-top:1px solid #eef0f4!important}
.parent-list>div:first-child{border-top:0!important}
.parent-list strong{font-size:11px!important;color:#2c3345!important}.parent-list small{font-size:10px!important;color:#7c8494!important}
.parent-status{min-width:68px;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:5px 8px!important;border-radius:999px!important;background:#eef0f4!important;color:#4b5563!important;font-size:9px!important;font-weight:900!important}
.parent-status.present{background:#e7f7ed!important;color:#147744!important}.parent-status.absent{background:#fde9ed!important;color:#b72e43!important}.parent-status.leave{background:#fff2d7!important;color:#9f6107!important}
.parent-message-feature{padding:16px!important;border:1px solid #ece9f4!important;border-radius:14px!important;background:linear-gradient(145deg,#faf9ff,#f7f8fc)!important}
.parent-message-feature>span,.parent-message-list article div>span{display:inline-block!important;padding:4px 8px!important;border-radius:999px!important;background:#efe8ff!important;color:#5b26ca!important;font-size:9px!important;font-weight:900!important}
.parent-message-feature p{margin:10px 0!important;color:#424a5f!important;font-size:11px!important;line-height:1.55!important}.parent-message-feature small{font-size:9px!important;color:#7b8392!important}
.parent-muted{margin:0!important;padding:18px!important;border:1px dashed #dedbe8!important;border-radius:13px!important;background:#fafafe!important;color:#798191!important;font-size:11px!important;line-height:1.5!important}

/* Tables/results/messages. */
.parent-table-wrap{width:100%;overflow-x:auto!important;border:1px solid #eceef3;border-radius:13px}
.parent-table-wrap table{width:100%!important;border-collapse:collapse!important;background:#fff}
.parent-table-wrap th,.parent-table-wrap td{padding:11px 12px!important;border-top:1px solid #edf0f4!important;text-align:left!important;font-size:10px!important;white-space:nowrap}
.parent-table-wrap thead th{border-top:0!important;background:#f8f9fc!important;color:#697386!important;font-size:9px!important;letter-spacing:.045em!important;text-transform:uppercase}
.parent-exam-card{margin-top:14px!important;border:1px solid #e5e8f0!important;border-radius:15px!important;overflow:hidden!important;background:#fff}
.parent-exam-head{display:flex!important;align-items:center!important;justify-content:space-between!important;padding:14px 16px!important;background:#f8f7fc!important}
.parent-exam-head h3{margin:2px 0 0!important;font-size:14px!important}.parent-exam-head strong{font-size:18px!important;color:#5b25cf!important}
.parent-progress-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.parent-progress-grid article{display:grid!important;gap:5px!important;padding:14px!important;border:1px solid #e7e9f0!important;border-radius:13px!important;background:#fff!important}.parent-progress-grid article strong{font-size:12px!important}.parent-progress-grid span{font-size:9px!important;color:#70798b!important}.parent-progress-grid p{margin:4px 0 0!important;font-size:10px!important;line-height:1.5!important}
.parent-message-list{display:grid!important;gap:10px!important}.parent-message-list article{padding:14px!important;border:1px solid #e7e9f0!important;border-radius:13px!important;background:#fff!important}.parent-message-list article div{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}.parent-message-list small,.parent-message-list time{font-size:9px!important;color:#7b8292!important}.parent-message-list p{font-size:11px!important;line-height:1.55!important;color:#40485c!important}

.parent-footer{padding:22px 20px 30px!important;text-align:center!important;color:#8a91a0!important;font-size:9px!important}
.parent-empty,.parent-state-shell{display:grid!important;place-items:center!important;text-align:center!important}.parent-empty{margin-top:18px!important;padding:36px!important;border:1px dashed #d8dce6!important;border-radius:18px!important;background:#fff!important}.parent-empty.compact{margin-top:0!important}.parent-empty>div,.parent-state-icon{font-size:28px!important}.parent-empty h2,.parent-empty h3,.parent-state-card h2{color:#222a3e!important}.parent-empty p,.parent-state-card p{max-width:600px!important;color:#757d8d!important;font-size:11px!important;line-height:1.55!important}
.parent-state-shell{min-height:100dvh!important;padding:24px!important;background:#f5f6fa!important}.parent-state-card{max-width:560px!important;padding:36px!important;border:1px solid #e7e9f0!important;border-radius:20px!important;background:#fff!important;box-shadow:0 18px 50px rgba(17,24,39,.08)!important}

/* Tablet. */
@media(max-width:980px){
    .parent-main{width:min(100% - 24px,1220px)!important;padding-top:16px!important}
    .parent-topbar{padding:9px 14px!important}.parent-user>div{display:none!important}
    .sm-login-page:has(.parent-shell)>.parent-layout-quicknav{top:auto;bottom:14px;left:50%;z-index:96}
    .parent-welcome{min-height:0!important;padding:22px!important;align-items:flex-start!important;flex-direction:column!important}.parent-welcome h1{font-size:27px!important}
    .parent-student-hero{grid-template-columns:auto minmax(0,1fr)!important}.parent-mini-facts{grid-column:1/-1!important;justify-content:flex-start!important}
    .parent-card[aria-label="Parent portal quick actions"]>div[style]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .parent-kpi-grid,.parent-fee-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
    .parent-two-col,.parent-progress-grid{grid-template-columns:1fr!important}
}

/* Phone: real app feel with fixed bottom tab bar. */
@media(max-width:620px){
    .sm-login-page:has(.parent-shell)>.parent-layout-quicknav{display:none!important}
    .parent-shell{padding-bottom:76px!important}
    .parent-topbar{min-height:62px!important;padding:8px 11px!important}.parent-brand img{width:40px!important;height:40px!important;max-width:40px!important;max-height:40px!important;flex-basis:40px!important}.parent-brand strong{font-size:12px!important}.parent-brand span{font-size:9px!important;max-width:150px}.parent-user>span,.parent-user>div{display:none!important}.parent-user .btn{min-height:35px!important;padding:0 10px!important;font-size:10px!important}
    .parent-main{width:calc(100% - 18px)!important;padding:10px 0 28px!important}
    .parent-welcome{border-radius:19px!important;padding:19px 17px!important}.parent-welcome h1{font-size:23px!important}.parent-welcome p{font-size:11px!important}.parent-readonly{min-height:31px!important;font-size:8px!important}
    .parent-child-switcher,.parent-card{margin-top:12px!important;padding:14px!important;border-radius:17px!important}.parent-section-head h2{font-size:15px!important}.parent-child-card{min-width:235px!important;padding:10px!important}.parent-child-avatar{width:40px!important;height:40px!important}
    .parent-student-hero{margin-top:12px!important;padding:14px!important;border-radius:17px!important;gap:12px!important}.parent-photo{width:58px!important;height:58px!important}.parent-student-title h2{font-size:18px!important}.parent-mini-facts{gap:7px!important}.parent-mini-facts div{min-width:calc(50% - 4px)!important;flex:1!important}
    .parent-card[aria-label="Parent portal quick actions"]>div[style]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn{min-height:105px!important;padding:14px 12px!important}.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn strong{font-size:11px!important}.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn small{font-size:9px!important}
    .parent-tabs{position:fixed!important;top:auto!important;left:8px!important;right:8px!important;bottom:8px!important;z-index:95!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;margin:0!important;padding:6px!important;border-radius:17px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 14px 35px rgba(31,25,59,.20)!important}.parent-tabs button{min-height:48px!important;flex-direction:column!important;gap:1px!important;padding:4px 2px!important;font-size:8px!important}.parent-tabs button.active{background:#f1ebff!important;box-shadow:none!important}.parent-tabs span{font-size:15px!important}
    .parent-kpi-grid,.parent-fee-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin-top:12px!important}.parent-kpi-grid article{min-height:91px!important;padding:12px!important;gap:9px!important}.parent-kpi-grid article>span{width:39px!important;height:39px!important;border-radius:12px!important;font-size:15px!important}.parent-kpi-grid strong{font-size:16px!important}.parent-kpi-grid small,.parent-kpi-grid em{font-size:8px!important}
    .parent-list>div{grid-template-columns:1fr!important;gap:6px!important}.parent-footer{padding-bottom:18px!important}
}

@media(max-width:390px){
    .parent-card[aria-label="Parent portal quick actions"]>div[style]{grid-template-columns:1fr!important}.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn{min-height:92px!important}
    .parent-kpi-grid,.parent-fee-kpis{grid-template-columns:1fr!important}.parent-mini-facts div{min-width:100%!important}
}

@media(prefers-reduced-motion:reduce){
    .parent-child-card,.parent-user .btn,.parent-card[aria-label="Parent portal quick actions"]>div[style]>.btn{transition:none!important}
}
