:root{--primary:#4f46e5;--secondary:#dc2626;--soft:#eef2ff;--bg:#eef3f8;--card:#fff;--text:#0f172a;--muted:#64748b;--border:#e2e8f0;--shadow:0 24px 60px rgba(15,23,42,.12)}
*{box-sizing:border-box}html,body{min-height:100%;margin:0;font-family:Inter,"Hind Siliguri",system-ui,sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}button{font:inherit;border:0;background:transparent;cursor:pointer}.jli-shell{min-height:100vh;background:radial-gradient(circle at top left,rgba(79,70,229,.12),transparent 32rem),radial-gradient(circle at top right,rgba(220,38,38,.1),transparent 30rem),var(--bg);--primary:#4f46e5;--secondary:#dc2626;--soft:#eef2ff;--bg:#eef3f8}.jli-shell.dark{--bg:#0f172a;--card:#111c2f;--text:#f8fafc;--muted:#cbd5e1;--border:#334155;background:radial-gradient(circle at top left,rgba(79,70,229,.22),transparent 32rem),#0f172a}.theme-sakura{--primary:#db2777;--secondary:#f97316;--soft:#fdf2f8;--bg:#fff7fb}.theme-ocean{--primary:#0284c7;--secondary:#0d9488;--soft:#e0f2fe;--bg:#eefafe}.theme-emerald{--primary:#059669;--secondary:#65a30d;--soft:#ecfdf5;--bg:#f2fbf7}.theme-royal{--primary:#7c3aed;--secondary:#2563eb;--soft:#f5f3ff;--bg:#f5f6ff}.theme-sunset{--primary:#ea580c;--secondary:#e11d48;--soft:#fff7ed;--bg:#fff7f3}.lang-bn{font-family:"Hind Siliguri",Inter,sans-serif}.lang-ja{font-family:"Noto Sans JP",Inter,sans-serif}
.jli-sidebar{position:fixed;inset:0 auto 0 0;z-index:40;width:17rem;background:rgba(255,255,255,.94);border-right:1px solid var(--border);box-shadow:10px 0 32px rgba(15,23,42,.08);backdrop-filter:blur(18px);transition:.25s ease;display:flex;flex-direction:column}.dark .jli-sidebar{background:rgba(15,23,42,.94)}.jli-sidebar.collapsed{width:5rem}.jli-brand{height:4.7rem;display:flex;align-items:center;gap:.8rem;padding:0 1rem;border-bottom:1px solid var(--border);overflow:hidden}.jli-brand img{width:2.7rem;height:2.7rem;flex:0 0 auto}.brand-text{min-width:0}.brand-text strong{display:block;font-size:1.28rem;font-weight:950;color:var(--text);line-height:1}.brand-text span{display:block;font-size:.68rem;font-weight:900;color:var(--primary);white-space:nowrap}.collapsed .brand-text{display:none}.jli-nav{padding:.75rem;overflow:auto}.nav-group{position:relative;margin-bottom:.3rem}.nav-parent{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;border-radius:1rem;padding:.78rem .85rem;color:#475569;font-weight:900;transition:.2s}.dark .nav-parent{color:#cbd5e1}.nav-parent:hover{background:var(--soft);color:var(--primary);transform:translateY(-1px)}.nav-parent span{display:flex;align-items:center;gap:.82rem;min-width:0}.nav-parent i:first-child{width:1.2rem;text-align:center}.nav-parent b{font-size:.76rem;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chev{font-size:.7rem;transition:.2s}.chev.open{transform:rotate(180deg)}.nav-children{margin:.15rem 0 .5rem 1.45rem;padding-left:.7rem;border-left:1px solid var(--border)}.nav-children a{display:block;border-radius:.75rem;padding:.5rem .7rem;color:var(--muted);font-size:.82rem;font-weight:800}.nav-children a:hover,.nav-children a.active{background:var(--soft);color:var(--primary)}.collapsed .nav-parent{justify-content:center;padding:.85rem}.collapsed .nav-parent b,.collapsed .chev{display:none}.collapsed .nav-children{display:none}.jli-workspace{min-height:100vh;transition:.25s ease}.wide-sidebar{margin-left:17rem}.mini-sidebar{margin-left:5rem}.jli-topbar{position:sticky;top:0;z-index:30;min-height:4.7rem;padding:.65rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--border);background:rgba(255,255,255,.82);backdrop-filter:blur(18px);box-shadow:0 14px 34px rgba(15,23,42,.06)}.dark .jli-topbar{background:rgba(15,23,42,.82)}.topbar-left,.topbar-actions{display:flex;align-items:center;gap:.65rem;min-width:0}.page-title span{display:block;color:var(--primary);font-size:.67rem;font-weight:950;text-transform:uppercase;letter-spacing:.1em}.page-title h1{margin:.08rem 0 0;font-size:1.08rem;line-height:1.1;font-weight:950;color:var(--text);white-space:nowrap}.icon-btn,.pill-btn{height:2.65rem;display:inline-flex;align-items:center;justify-content:center;gap:.42rem;border:1px solid var(--border);border-radius:.95rem;background:rgba(255,255,255,.9);color:#334155;box-shadow:0 10px 22px rgba(148,163,184,.16);font-weight:950}.dark .icon-btn,.dark .pill-btn{background:rgba(2,6,23,.45);color:#e2e8f0;box-shadow:none}.icon-btn{width:2.65rem}.pill-btn{padding:0 .75rem}.icon-btn:hover,.pill-btn:hover{transform:translateY(-1px);border-color:var(--primary);color:var(--primary);background:var(--soft)}.date-chip{height:2.65rem;display:flex;align-items:center;gap:.5rem;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.78);padding:0 .8rem;color:var(--muted);font-weight:900;white-space:nowrap}.dark .date-chip{background:rgba(2,6,23,.45)}.dropdown-wrap{position:relative}.dropdown-panel{position:absolute;right:0;top:calc(100% + .65rem);z-index:70;width:18rem;border:1px solid var(--border);border-radius:1.2rem;background:rgba(255,255,255,.98);box-shadow:var(--shadow);backdrop-filter:blur(18px);padding:.65rem}.dark .dropdown-panel{background:rgba(15,23,42,.98)}.dropdown-panel h3{margin:.2rem .25rem .6rem;color:var(--text);font-size:1rem;font-weight:950}.option-row{width:100%;display:grid;grid-template-columns:2.25rem 1fr;grid-template-areas:"icon title" "icon sub";gap:.05rem .55rem;align-items:center;text-align:left;border-radius:.85rem;padding:.6rem;color:var(--text)}.option-row:hover,.option-row.active{background:var(--soft);color:var(--primary)}.option-row>span{grid-area:icon}.option-row>b{grid-area:title;font-size:.83rem}.option-row>small{grid-area:sub;color:var(--muted);font-size:.72rem}.swatch{width:2rem;height:2rem;border-radius:.75rem;display:block}.swatch.default{background:linear-gradient(135deg,#4f46e5,#dc2626)}.swatch.sakura{background:linear-gradient(135deg,#db2777,#f97316)}.swatch.ocean{background:linear-gradient(135deg,#0284c7,#0d9488)}.swatch.emerald{background:linear-gradient(135deg,#059669,#65a30d)}.swatch.royal{background:linear-gradient(135deg,#7c3aed,#2563eb)}.swatch.sunset{background:linear-gradient(135deg,#ea580c,#e11d48)}.notify-btn{position:relative}.notify-btn em{position:absolute;right:-.25rem;top:-.25rem;min-width:1.18rem;height:1.18rem;border-radius:999px;background:#dc2626;color:#fff;border:2px solid #fff;font-size:.65rem;font-style:normal;font-weight:950;display:grid;place-items:center}.notification-panel{width:min(24rem,calc(100vw - 1.5rem));padding:0;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.9rem;background:linear-gradient(135deg,var(--soft),#fff1f2);border-bottom:1px solid var(--border)}.dark .panel-head{background:rgba(30,41,59,.75)}.panel-head span{color:var(--primary);font-size:.66rem;font-weight:950;letter-spacing:.1em;text-transform:uppercase}.panel-head h3{margin:.1rem 0 0}.panel-head button{border-radius:999px;background:#fff;color:var(--primary);padding:.42rem .65rem;font-size:.72rem;font-weight:900}.notification-item{width:100%;display:grid;grid-template-columns:2.5rem 1fr;gap:.65rem;padding:.7rem;text-align:left}.notification-item:hover,.notification-item.unread{background:var(--soft)}.note-icon{height:2.5rem;width:2.5rem;border-radius:.82rem;display:grid!important;place-items:center;color:#fff}.note-icon.info{background:linear-gradient(135deg,#4f46e5,#2563eb)}.note-icon.danger{background:linear-gradient(135deg,#dc2626,#e11d48)}.note-icon.warning{background:linear-gradient(135deg,#d97706,#f59e0b)}.note-icon.success{background:linear-gradient(135deg,#059669,#22c55e)}.notification-item b,.notification-item small,.notification-item time{display:block}.notification-item b{font-size:.82rem;color:var(--text)}.notification-item small{color:var(--muted);font-size:.76rem;font-weight:700;line-height:1.45}.notification-item time{color:#94a3b8;font-size:.7rem;font-weight:850;margin-top:.15rem}.user-btn{min-width:13.7rem;height:2.9rem;display:flex;align-items:center;gap:.58rem;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.9);box-shadow:0 10px 22px rgba(148,163,184,.16);padding:.25rem .55rem .25rem .25rem}.dark .user-btn{background:rgba(2,6,23,.45);box-shadow:none}.user-btn img{width:2.35rem;height:2.35rem}.user-btn span{min-width:0;text-align:left}.user-btn b,.user-btn small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:8rem}.user-btn b{font-size:.78rem;color:var(--text)}.user-btn small{font-size:.68rem;color:var(--muted);font-weight:850}.user-panel{width:18rem}.user-panel button{width:100%;display:flex;align-items:center;gap:.55rem;border-radius:.8rem;padding:.7rem;color:var(--text);font-weight:850;text-align:left}.user-panel button:hover{background:var(--soft);color:var(--primary)}.user-panel button.danger{color:#dc2626}.user-card{display:flex;align-items:center;gap:.65rem;padding:.8rem;border-radius:1rem;background:linear-gradient(135deg,var(--soft),#fff1f2);margin-bottom:.5rem}.dark .user-card{background:rgba(30,41,59,.75)}.user-card img{width:2.8rem;height:2.8rem}.user-card b,.user-card small{display:block}.user-card small{color:var(--muted);font-size:.72rem;font-weight:800}.jli-content{padding:1.2rem}.dashboard-hero,.profile-hero{display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:center;border-radius:1.6rem;padding:2rem;background:linear-gradient(135deg,#0f172a,var(--primary) 56%,var(--secondary));color:#fff;box-shadow:var(--shadow);overflow:hidden;position:relative}.dashboard-hero:before,.profile-hero:before{content:"";position:absolute;inset:auto -4rem -9rem auto;width:22rem;height:22rem;border-radius:50%;background:rgba(255,255,255,.14)}.hero-badge{display:inline-flex;gap:.5rem;align-items:center;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.14);border-radius:999px;padding:.45rem .8rem;font-weight:950;font-size:.75rem}.dashboard-hero h1{font-size:clamp(2rem,4vw,4rem);line-height:1;margin:.85rem 0;font-weight:950;max-width:850px}.dashboard-hero p{max-width:700px;color:rgba(255,255,255,.82);font-weight:650;line-height:1.7}.hero-actions{display:flex;gap:.75rem;margin-top:1.1rem;flex-wrap:wrap}.hero-actions a{border-radius:999px;background:#fff;color:#111827;padding:.8rem 1rem;font-weight:950}.hero-actions .ghost{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.28)}.hero-panel{position:relative;width:20rem;border:1px solid rgba(255,255,255,.24);border-radius:1.3rem;background:rgba(255,255,255,.12);padding:1rem;backdrop-filter:blur(10px)}.hero-panel strong{font-size:1.05rem}.hero-panel ul{margin:.8rem 0 0;padding:0;list-style:none}.hero-panel li{margin:.6rem 0;color:rgba(255,255,255,.9);font-weight:800}.metric-grid,.profile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-top:1rem}.metric-grid article,.premium-card{border:1px solid var(--border);background:rgba(255,255,255,.86);border-radius:1.3rem;padding:1.1rem;box-shadow:0 16px 32px rgba(15,23,42,.06)}.dark .metric-grid article,.dark .premium-card{background:rgba(17,28,47,.86)}.metric-grid i,.premium-card i{height:3rem;width:3rem;display:grid!important;place-items:center;border-radius:1rem;background:var(--soft);color:var(--primary);font-size:1.2rem}.metric-grid span{display:block;margin-top:.8rem;color:var(--muted);font-weight:900}.metric-grid b{font-size:1.8rem;font-weight:950;color:var(--text)}.profile-hero{grid-template-columns:auto 1fr}.profile-hero img{width:6rem;height:6rem}.profile-hero span{font-weight:950;letter-spacing:.12em;text-transform:uppercase}.profile-hero h1{margin:.2rem 0;font-size:2.4rem}.profile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.premium-card h3{margin:.8rem 0 .3rem}.premium-card p{color:var(--muted);font-weight:700;line-height:1.65}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);background:radial-gradient(circle at top left,rgba(79,70,229,.18),transparent 35rem),#0f172a;color:#fff}.login-visual{padding:clamp(2rem,6vw,5rem);display:flex;flex-direction:column;justify-content:center}.login-logo{display:flex;align-items:center;gap:.8rem;font-weight:950;font-size:1.5rem}.login-logo img{width:3.4rem;height:3.4rem}.login-visual h1{font-size:clamp(2.3rem,5vw,5.2rem);line-height:.96;margin:1.2rem 0;font-weight:950;max-width:760px}.login-visual p{max-width:680px;color:#cbd5e1;font-size:1.05rem;line-height:1.8;font-weight:600}.login-stats{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.4rem}.login-stats span{min-width:9rem;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);border-radius:1.2rem;padding:1rem;color:#cbd5e1;font-weight:800}.login-stats b{display:block;color:#fff;font-size:1.7rem}.login-card{align-self:center;margin:2rem clamp(1rem,4vw,4rem);border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.96);color:#0f172a;border-radius:1.6rem;padding:2rem;box-shadow:0 30px 80px rgba(0,0,0,.35)}.card-kicker{color:var(--primary);font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;font-weight:950}.login-card h2{font-size:2rem;margin:.35rem 0 .3rem}.login-card p{color:#64748b;font-weight:700;line-height:1.6}.login-card label{display:block;margin:.85rem 0 .35rem;font-weight:900}.form-control{width:100%;height:3rem;border:1px solid #cbd5e1;border-radius:.9rem;padding:0 .9rem;font:inherit;font-weight:750}.form-control:focus{outline:3px solid #c7d2fe;border-color:#4f46e5}.login-submit{width:100%;height:3.15rem;margin-top:1rem;border-radius:.95rem;background:linear-gradient(135deg,#4f46e5,#dc2626);color:#fff;font-weight:950;display:flex;align-items:center;justify-content:center;gap:.55rem}.login-error{display:flex;gap:.45rem;align-items:center;border-radius:.85rem;background:#fef2f2;color:#dc2626;padding:.7rem .8rem;font-weight:850}.demo-note{margin-top:1rem;color:#64748b;background:#f8fafc;border-radius:.9rem;padding:.8rem;font-size:.86rem;line-height:1.6}.validation-message{color:#dc2626;font-size:.8rem;font-weight:800;margin-top:.2rem}.mobile-only{display:none!important}#blazor-error-ui{background:#ffffe0;bottom:0;box-shadow:0 -1px 2px rgba(0,0,0,.2);display:none;left:0;padding:.6rem 1.25rem;position:fixed;width:100%;z-index:1000}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem}
@media(max-width:1100px){.date-chip{display:none}.dashboard-hero{grid-template-columns:1fr}.hero-panel{width:100%}.metric-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.desktop-only{display:none!important}.mobile-only{display:inline-flex!important}.jli-sidebar{transform:translateX(-105%);width:17rem!important}.jli-sidebar.mobile-open{transform:translateX(0)}.wide-sidebar,.mini-sidebar{margin-left:0}.mobile-backdrop{position:fixed;inset:0;z-index:35;background:rgba(0,0,0,.48)}.topbar-actions{gap:.4rem}.pill-btn{width:2.65rem;padding:0}.pill-btn:not(.user-btn){font-size:0}.user-btn{min-width:0;width:2.9rem;padding:.25rem}.user-btn span,.user-btn>i{display:none}.page-title h1{font-size:.92rem}.page-title span{display:none}.profile-grid{grid-template-columns:1fr}.login-page{grid-template-columns:1fr}.login-visual{padding:2rem 1.2rem}.login-card{margin:0 1.2rem 2rem}.login-stats span{flex:1}.topbar-actions .dropdown-panel{right:-.5rem}.theme-panel,.compact-panel{width:min(18rem,calc(100vw - 1rem))}}
@media(max-width:560px){.jli-topbar{padding:.55rem}.jli-content{padding:.75rem}.topbar-actions{gap:.3rem}.icon-btn,.pill-btn{width:2.45rem;height:2.45rem}.dashboard-hero,.profile-hero{padding:1.2rem;border-radius:1.2rem}.dashboard-hero h1{font-size:2.05rem}.metric-grid{grid-template-columns:1fr}.hero-actions a{width:100%;text-align:center}.login-visual h1{font-size:2.3rem}}

/* Secure session loading screen */
.jli-auth-loading {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 2rem;
    background: radial-gradient(circle at top left, rgba(79,70,229,.18), transparent 28rem), radial-gradient(circle at bottom right, rgba(220,38,38,.14), transparent 26rem), #f8fafc;
    font-family: Inter, "Hind Siliguri", Arial, sans-serif;
}
.auth-loading-card {
    width: min(26rem, 100%);
    text-align: center;
    border: 1px solid rgba(226,232,240,.95);
    border-radius: 1.5rem;
    background: rgba(255,255,255,.94);
    padding: 2rem;
    box-shadow: 0 24px 70px rgba(15,23,42,.14);
}
.auth-loading-card img {
    width: 4.5rem;
    height: 4.5rem;
    margin: 0 auto 1rem;
    display: block;
}
.auth-loading-card h2 {
    margin: 0;
    color: #0f172a;
    font-size: 1.25rem;
    font-weight: 950;
}
.auth-loading-card p {
    margin: .5rem 0 0;
    color: #64748b;
    font-weight: 700;
}

/* Imported page compatibility */
.validation-message{margin-top:.35rem;display:block;color:#e11d48;font-size:.8rem;font-weight:700}.hidden{display:none!important}
