:root{--serif: "Newsreader", Georgia, "Times New Roman", serif;--sans: "Noto Sans", "Noto Sans Devanagari", system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--display: "Bricolage Grotesque", system-ui, sans-serif;--paper: #f1efe9;--paper-2: #f7f5f1;--card: #ffffff;--line: #ebe7df;--line-soft: #f3f1ec;--line-strong: #ddd7c9;--ink: #1b1826;--ink-soft: #615b53;--ink-faint: #6f6a62;--accent: #4f46e5;--accent-tint: #eef0fc;--accent-line: #dcddf8;--accent-deep: #3730a3;--success: #146b4e;--success-tint: #e9f3ee;--warning: #b4791a;--warning-tint: #fbf4e6;--danger: #c0392b;--danger-tint: #fbf0ef;--info: #4f6bff;--info-tint: #eef1fe;--cat-indigo: #4f46e5;--cat-purple: #7c5cff;--cat-blue: #4f6bff;--cat-teal: #16b8a6;--cat-gold: #ffc53d;--cat-orange: #ff7a1a;--radius: 12px;--radius-sm: 8px;--radius-pill: 999px;--shadow-1: none;--shadow-2: none;--background: var(--paper);--foreground: var(--ink);--card-foreground: var(--ink);--primary: var(--ink);--primary-light: var(--accent-tint);--primary-foreground: #ffffff;--secondary: var(--paper-2);--secondary-foreground: var(--ink-soft);--muted: var(--paper-2);--muted-foreground: var(--ink-soft);--accent-foreground: var(--accent-deep);--destructive: var(--danger);--border: var(--line);--input: var(--line);--ring: var(--accent);--sidebar: var(--card);--sidebar-foreground: var(--ink);--sidebar-primary: var(--accent);--sidebar-accent: rgba(27,24,38,.04);--sidebar-border: var(--line)}[data-portal=upsc]{--accent:#4f46e5;--accent-tint:#eef0fc;--accent-line:#dcddf8;--accent-deep:#3730a3;--paper:#f1efe9;--paper-2:#f7f5f1;--line:#ebe7df;--sidebar:#f3f2fb;--ink:#1b1826;--ink-soft:#5b5670;--portal-band:linear-gradient(90deg,#4f46e5,#7c5cff);--portal-band-flat:#4f46e5}[data-portal=finance]{--accent:#047857;--accent-tint:#e6f4ee;--accent-line:#c8e6d9;--accent-deep:#065f46;--paper:#edf2f0;--paper-2:#f4f8f6;--line:#dee8e3;--sidebar:#eef5f2;--ink:#14211d;--ink-soft:#4e5f58;--portal-band:linear-gradient(90deg,#047857,#16b8a6);--portal-band-flat:#047857}[data-portal=ras]{--accent:#b14c22;--accent-tint:#fbeee6;--accent-line:#f1d6c4;--accent-deep:#8c3a19;--paper:#f5efe4;--paper-2:#fbf7ef;--line:#eae0cf;--sidebar:#f8f1e4;--ink:#241a12;--ink-soft:#6b5546;--portal-band:linear-gradient(90deg,#b14c22,#e8a33d);--portal-band-flat:#b14c22}html,body,.cm-shell,[class*=sidebar],[class*=rail]{transition:background-color .18s ease,border-color .18s ease}@media (prefers-reduced-motion: reduce){html,body,.cm-shell,[class*=sidebar],[class*=rail]{transition:none}}.portal-band{background:var(--portal-band)}@media print{.portal-band{background:var(--portal-band-flat)!important}}@media (forced-colors: active){.portal-band{background:Highlight}}[data-theme=dark]{--paper: #100d18;--paper-2: #1b1726;--card: #211c2f;--line: rgba(255,255,255,.08);--line-soft: rgba(255,255,255,.05);--line-strong: rgba(255,255,255,.16);--ink: #f6f4f1;--ink-soft: #b0aac0;--ink-faint: #6f6884;--accent: #8b83f0;--accent-tint: rgba(139,131,240,.14);--accent-line: rgba(139,131,240,.3);--accent-deep: #a5b4fc;--success: #4fbf92;--success-tint: rgba(79,191,146,.13);--warning: #e0ae4e;--warning-tint: rgba(224,174,78,.13);--danger: #f4796b;--danger-tint: rgba(244,121,107,.13);--info: #8aa0ff;--info-tint: rgba(138,160,255,.13);--cat-indigo: #8b83f0;--cat-purple: #a08cff;--cat-blue: #8aa0ff;--cat-teal: #3fd3c0;--cat-gold: #f0d071;--cat-orange: #ff9a4d;--primary: #f4f1ec;--primary-foreground: #16131f;--sidebar: #16131f;--sidebar-accent: rgba(255,255,255,.05);--shadow-1: none;--shadow-2: none}[data-theme=dark][data-portal=upsc]{--accent:#8b83f0;--accent-tint:rgba(139,131,240,.18);--accent-line:rgba(139,131,240,.3);--accent-deep:#c3bcff;--portal-band:linear-gradient(90deg,#8b83f0,#a78bfa);--portal-band-flat:#8b83f0}[data-theme=dark][data-portal=finance]{--accent:#34d399;--accent-tint:rgba(52,211,153,.16);--accent-line:rgba(52,211,153,.3);--accent-deep:#6ee7b7;--portal-band:linear-gradient(90deg,#34d399,#5eead4);--portal-band-flat:#34d399}[data-theme=dark][data-portal=ras]{--accent:#e8874f;--accent-tint:rgba(232,135,79,.16);--accent-line:rgba(232,135,79,.3);--accent-deep:#f5b183;--portal-band:linear-gradient(90deg,#e8874f,#f0c05a);--portal-band-flat:#e8874f}:root,[data-theme=dark]{--reader-bg: var(--paper-2);--reader-panel: var(--paper-2);--reader-card: var(--card);--reader-toolbar: var(--card);--reader-text: var(--ink);--reader-head: var(--ink);--reader-muted: var(--ink-soft);--reader-line: var(--line);--reader-chipOn: var(--accent-tint);--reader-chipText: var(--accent-deep);--reader-shadow: var(--shadow-1)}@media (prefers-reduced-motion: reduce){.focus-reader-root{transition:none!important}}[data-paper=white]{--reader-bg:#ffffff;--reader-ink:#1b1826;--reader-rail:#faf9f6;--reader-card:#ffffff;--reader-line:#ebe7df;--reader-chip:#f1efe9;--reader-muted:#8b857a}[data-paper=cream]{--reader-bg:#f6f3ec;--reader-ink:#1f1b16;--reader-rail:#efebe1;--reader-card:#fffdf8;--reader-line:#e2ddd0;--reader-chip:#eae5d9;--reader-muted:#867d6c}[data-paper=sepia]{--reader-bg:#f3e7d3;--reader-ink:#3d3123;--reader-rail:#ecdcc3;--reader-card:#fbf3e3;--reader-line:#dccdb0;--reader-chip:#e7d9bf;--reader-muted:#8a785c}[data-paper=green]{--reader-bg:#dde7db;--reader-ink:#1e2c1c;--reader-rail:#d2e0d0;--reader-card:#e9efe7;--reader-line:#c2d2c0;--reader-chip:#ccdaca;--reader-muted:#657a63}[data-paper=night]{--reader-bg:#16131f;--reader-ink:#eae7f2;--reader-rail:#1b1726;--reader-card:#221d31;--reader-line:rgba(255,255,255,.11);--reader-chip:rgba(255,255,255,.07);--reader-muted:#9a93ab}[data-paper=black]{--reader-bg:#000000;--reader-ink:#d9d6d0;--reader-rail:#0b0b0b;--reader-card:#141414;--reader-line:rgba(255,255,255,.13);--reader-chip:rgba(255,255,255,.08);--reader-muted:#8d8983}[data-paper=white]{--reader-accent:#4f46e5;--reader-accent-tint:rgba(79,70,229,.12);--reader-accent-deep:#3730a3;--reader-on-accent:#ffffff}[data-paper=cream]{--reader-accent:#a9762f;--reader-accent-tint:rgba(169,118,47,.14);--reader-accent-deep:#7a531f;--reader-on-accent:#ffffff}[data-paper=sepia]{--reader-accent:#a34a26;--reader-accent-tint:rgba(163,74,38,.14);--reader-accent-deep:#7a331a;--reader-on-accent:#ffffff}[data-paper=green]{--reader-accent:#2f6b46;--reader-accent-tint:rgba(47,107,70,.14);--reader-accent-deep:#1f4a30;--reader-on-accent:#ffffff}[data-paper=night]{--reader-accent:#8b83f0;--reader-accent-tint:rgba(139,131,240,.18);--reader-accent-deep:#c3bcff;--reader-on-accent:#14111d}[data-paper=black]{--reader-accent:#f0b429;--reader-accent-tint:rgba(240,180,41,.16);--reader-accent-deep:#ffd166;--reader-on-accent:#1a1200}.reader-root mark{color:#1b1826;border-radius:3px;padding:0 1px}.sheet-desk{flex:1;min-height:0;min-width:0;position:relative;background:var(--reader-bg);padding:34px 0;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:contain;display:flex;flex-direction:column;align-items:center;gap:34px}.sheet-desk[data-chrome=false]{scroll-snap-type:none}@media (prefers-reduced-motion: reduce){.sheet-desk{scroll-behavior:auto}}.sheet{position:relative;flex:0 0 auto;scroll-snap-align:center;scroll-snap-stop:always;width:clamp(560px,var(--sheet-w, 920px),2200px);height:max(640px,var(--sheet-h, 900px));background:var(--reader-card);border:1px solid var(--reader-line);border-radius:3px;box-shadow:none;padding:64px 44px 44px;overflow:hidden}.sheet[data-oversized=true]{height:auto;min-height:640px;overflow:visible}.sheet-head{position:absolute;top:26px;left:44px;right:44px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--reader-muted);overflow:hidden}.sheet-head span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheet-folio{position:absolute;bottom:22px;left:0;right:0;text-align:center;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--reader-muted)}.sheet-body{height:100%;overflow:hidden;font-family:var(--serif);font-size:var(--reader-size, 16.5px);line-height:var(--reader-lh, 1.62);color:var(--reader-ink)}.sheet-columns{column-fill:auto;height:100%}.sheet-columns>*:first-child{margin-top:0}.sheet-para{margin:0 0 1.05em;text-align:justify;text-align-last:left;hyphens:auto;-webkit-hyphens:auto;orphans:2;widows:2;text-wrap:pretty;overflow-wrap:break-word}.sheet-body[data-justify=false] .sheet-para{text-align:left;hyphens:none;-webkit-hyphens:none}.sheet-body h1,.sheet-heading[data-level="1"]{font-family:var(--serif);font-size:1em;font-weight:700;line-height:1.15;letter-spacing:-.01em;text-transform:none;color:var(--reader-on-accent);background:var(--reader-accent-deep);padding:11px 16px;margin:0 0 14px;break-after:avoid}.sheet-heading,.sheet-body h2{font-family:Noto Sans,sans-serif;font-size:1em;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--reader-accent);margin:22px 0 10px;break-after:avoid}.sheet-body h3{font-family:var(--serif);font-size:1em;font-style:italic;font-weight:700;color:var(--reader-ink);margin:20px 0 9px;break-after:avoid}.sheet-body ul{margin:0 0 1.1em;padding:0;list-style:none}.sheet-body ol{margin:0 0 1.1em;padding-left:22px}.sheet-body ul>li{position:relative;padding-left:20px;margin-bottom:7px;font-size:15.5px;line-height:1.55}.sheet-body ol>li{padding-left:4px;margin-bottom:7px;font-size:15.5px;line-height:1.55}.sheet-body ul>li:before{content:"";position:absolute;left:0;top:.62em;width:9px;height:1px;background:var(--reader-accent)}.sheet-body li>ul,.sheet-body li>ol{margin:6px 0 0 20px}.sheet-body li>ul>li,.sheet-body li>ol>li{font-size:14.5px}.sheet-body table{width:100%;border-collapse:collapse;margin:0 0 1.1em;font-family:Noto Sans,sans-serif;font-size:12.5px;color:var(--reader-ink)}.sheet-body th{text-align:left;font-family:var(--mono);font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--reader-muted);padding:0 10px 7px 0;border-bottom:1px solid var(--reader-ink)}.sheet-body td{padding:8px 10px 8px 0;border-bottom:1px solid var(--reader-line);line-height:1.45}.sheet-body .sheet-figure,.sheet-body .sheet-table-wrap,.sheet-body figure{break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid}.sheet-body figcaption{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--reader-muted);margin-top:8px}.sheet-body .para-pyq{border:1px solid var(--reader-line);border-radius:var(--radius-sm);background:var(--reader-chip);padding:13px 15px;margin:0 0 1.05em}.sheet-body mark{color:#1b1826;border-radius:3px;padding:0 1px}@media (max-width: 768px){.sheet{width:calc(100vw - 16px);padding:40px 22px 30px}.sheet-head{left:22px;right:22px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;min-height:100%}body{font-family:var(--sans);background:var(--background);color:var(--foreground);min-height:100dvh;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;overscroll-behavior:none;margin:0}h1,h2,h3,h4{font-family:var(--serif);letter-spacing:-.01em;text-wrap:balance}p{text-wrap:pretty}body,#root{min-height:100dvh}#root{width:100%}a{text-decoration:none;color:var(--accent)}a:hover{color:var(--accent-deep)}a.nb-item,a.dash-card-link,a.dash-row-item,a.plain-link{color:inherit}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ink-soft)}@keyframes pageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.page-enter{animation:pageEnter .35s cubic-bezier(.22,1,.36,1) both}.modal-enter{animation:scaleIn .2s cubic-bezier(.22,1,.36,1) both}.pane-enter{animation:slideInRight .25s cubic-bezier(.22,1,.36,1) both}.overlay-fade{animation:fadeIn .18s ease both}.spin{display:inline-block;animation:spin .9s linear infinite}.fadeUp{animation:slideUp .22s cubic-bezier(.22,1,.36,1) both}@keyframes notifSlideIn{0%{opacity:0;transform:translateY(-12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.notif-enter{animation:notifSlideIn .22s cubic-bezier(.22,1,.36,1) both}.card-hover{transition:transform .15s ease,box-shadow .15s ease}.card-hover:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)!important}.btn-press{transition:opacity .14s ease,transform .12s ease}.btn-press:hover{opacity:.88}.btn-press:active{transform:scale(.97)}.chip-hover{transition:background .15s,border-color .15s,color .15s}.chip-hover:hover{background:var(--primary)!important;color:var(--primary-foreground)!important;border-color:var(--primary)!important}.tr-hover{transition:background .12s}.tr-hover:hover{background:var(--secondary)!important}@keyframes dashFadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.dash-section{animation:dashFadeUp .4s ease both}.dash-tile{transition:transform .15s,box-shadow .15s,background .15s;cursor:pointer}.dash-tile:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)}.dash-card-link{transition:transform .15s,box-shadow .15s;cursor:pointer}.dash-card-link:hover{transform:translateY(-2px);box-shadow:var(--shadow-2)!important}.dash-row-item{transition:background .12s;cursor:pointer}.dash-row-item:hover{background:var(--secondary)!important}.dash-btn-primary{transition:opacity .14s,transform .12s;cursor:pointer}.dash-btn-primary:hover{opacity:.88;transform:scale(.98)}.dash-streak-dot{transition:transform .15s}.dash-streak-dot:hover{transform:scale(1.12)}.nb-item{transition:all .15s}.nb-item:hover{background:var(--sidebar-accent)!important;color:var(--foreground)!important}.nb-logout:hover{background:var(--danger-tint)!important}.nb-tab:hover{color:var(--accent)!important}.nb-more-item:hover,.nb-portal-btn:hover{background:var(--paper-2)!important}@keyframes drawerUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.nb-drawer{animation:drawerUp .2s ease}.nb-dropdown{animation:slideUp .16s ease}.safe-area-bottom{padding-bottom:env(safe-area-inset-bottom,0px)}.leaflet-container{background:var(--paper-2)!important}.study-table{width:100%;border-collapse:collapse;font-size:.84rem;margin:.5rem 0}.study-table th{background:var(--primary);color:var(--primary-foreground);text-align:left;padding:.6rem .85rem;font-weight:600;letter-spacing:.03em;border:1px solid var(--primary);white-space:nowrap}.study-table td{padding:.55rem .85rem;border:1px solid var(--border);color:var(--foreground);vertical-align:top;line-height:1.6}.study-table tr:nth-child(2n) td{background:var(--secondary)}.study-table tr:hover td{background:var(--primary-light)}.cm-table{column-span:all;border-collapse:collapse;margin:12px 0;font-size:.86rem;width:100%}.cm-table td{padding:6px 10px;vertical-align:top;text-align:left}.cm-table--simple td{border:1px solid var(--border)}.cm-table--striped tr:nth-child(2n) td{background:var(--secondary)}.cm-table--striped td{border-bottom:1px solid var(--border)}.cm-table--header td{border:1px solid var(--border)}.cm-table--header td[data-head="1"]{background:var(--primary-light);font-weight:700;border-bottom:2px solid var(--primary)}.cm-table--minimal td{border:none;border-bottom:1px solid var(--border)}.cm-img{max-width:100%;border-radius:2px}.cm-img[data-wrap=inline]{float:none;vertical-align:middle;margin:0 4px}.cm-img[data-wrap=left]{float:left;margin:4px 16px 8px 0}.cm-img[data-wrap=right]{float:right;margin:4px 0 8px 16px}.cm-img[data-wrap=block]{float:none;display:block;margin:12px auto;column-span:all}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}img,svg,video,canvas,iframe,picture{max-width:100%}img,video,canvas{height:auto}p,h1,h2,h3,h4,h5,h6,span,a,li,td,th,div,label,button{overflow-wrap:break-word}pre,code{white-space:pre-wrap;overflow-wrap:anywhere}input,textarea,select,table{max-width:100%}@media (max-width: 360px){html{font-size:15px}}.rwd-scroll-x{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
