@import "https://fonts.googleapis.com/css2?family=Sora:wght@500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";:root{--ink:#0e1b3d;--blue-900:#0b215c;--blue-700:#1d3fa0;--blue-600:#2954d6;--blue-500:#3d6bef;--blue-100:#e8eefc;--blue-50:#f4f7fe;--orange-600:#e85d0a;--orange-500:#ff7a1a;--orange-100:#ffe9d6;--white:#fff;--line:#dfe6f5;--muted:#5b6b93;--success:#1c9a6c;--danger:#d8432f;--font-display:"Sora", "Inter", system-ui, sans-serif;--font-body:"Inter", system-ui, -apple-system, sans-serif;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--shadow-card:0 1px 2px #0e1b3d0f, 0 8px 24px -12px #0e1b3d2e;--ease:cubic-bezier(.22, 1, .36, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--white);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4{font-family:var(--font-display);color:var(--blue-900);letter-spacing:-.01em;margin:0}p{margin:0}a{color:inherit}button{font-family:inherit}img{max-width:100%;display:block}::selection{background:var(--orange-100);color:var(--blue-900)}:focus-visible{outline:2px solid var(--orange-500);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--blue-100);border-radius:20px}::-webkit-scrollbar-track{background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes ringDraw{0%{stroke-dashoffset:var(--ring-circumference)}to{stroke-dashoffset:var(--ring-offset)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.qd-card{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--line);box-shadow:var(--shadow-card);width:100%;max-width:380px;padding:26px;position:relative;overflow:hidden}.qd-card:before{content:"";background:linear-gradient(90deg, var(--blue-600), var(--orange-500));height:5px;position:absolute;top:0;left:0;right:0}.qd-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.qd-badge{color:var(--blue-700);background:var(--blue-100);border-radius:999px;padding:5px 10px;font-size:12px;font-weight:600}.qd-streak{color:var(--orange-600);font-size:13px;font-weight:600}.qd-question{font-family:var(--font-display);color:var(--blue-900);min-height:56px;animation:fadeUp .4s var(--ease);margin-bottom:20px;font-size:21px;font-weight:700}.qd-options{gap:10px;margin-bottom:18px;display:grid}.qd-option{border:1.5px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);transition:all .35s var(--ease);padding:12px 14px;font-size:14.5px;font-weight:500}.qd-option-correct{border-color:var(--success);color:var(--success);animation:popIn .35s var(--ease);background:#eafbf3;font-weight:700}.qd-progress{background:var(--blue-50);border-radius:999px;height:4px;overflow:hidden}.qd-progress-fill{background:var(--orange-500);transform-origin:0;width:100%;height:100%;animation:2.2s linear forwards qdShrink}@keyframes qdShrink{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (prefers-reduced-motion:reduce){.qd-progress-fill,.qd-question,.qd-option-correct{animation:none}}.lp{min-height:100vh}.lp-nav{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:30;background:#ffffffeb;justify-content:space-between;align-items:center;padding:18px clamp(20px,5vw,64px);display:flex;position:sticky;top:0}.lp-brand{font-family:var(--font-display);color:var(--blue-900);align-items:center;gap:10px;font-size:18px;font-weight:700;text-decoration:none;display:flex}.lp-logo{background:linear-gradient(135deg, var(--blue-600), var(--blue-900));width:34px;height:34px;color:var(--white);border-radius:10px;place-items:center;font-size:13px;font-weight:800;display:grid}.lp-nav-links{align-items:center;gap:22px;display:flex}.lp-nav-links a{color:var(--muted);font-size:14px;font-weight:500;text-decoration:none}.lp-nav-links a:hover{color:var(--blue-700)}.lp-nav-signin{color:var(--blue-700)!important;font-weight:600!important}.lp-hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;max-width:1160px;margin:0 auto;padding:clamp(40px,8vw,88px) clamp(20px,5vw,64px);display:grid}.lp-eyebrow{color:var(--orange-600);font-size:13px;font-weight:600}.lp-hero h1{margin:14px 0 16px;font-size:clamp(34px,4.6vw,54px);line-height:1.08}.lp-sub{color:var(--muted);max-width:480px;font-size:17px;line-height:1.6}.lp-body{color:var(--muted);margin-top:10px;font-size:14px}.lp-cta-row{flex-wrap:wrap;align-items:center;gap:22px;margin-top:30px;display:flex}.lp-secondary-link{color:var(--blue-700);font-size:14px;font-weight:600;text-decoration:underline}.lp-hero-visual{justify-content:center;display:flex}.lp-browse-link{color:var(--blue-700);margin-top:18px;font-size:13.5px;font-weight:600;text-decoration:none;display:inline-block}.lp-browse-link:hover{text-decoration:underline}.lp-segments{flex-wrap:wrap;justify-content:center;gap:10px;max-width:1160px;margin:0 auto;padding:0 clamp(20px,5vw,64px) 20px;display:flex}.lp-segment-pill{color:var(--blue-700);background:var(--blue-50);border:1px solid var(--blue-100);transition:all .15s var(--ease);border-radius:999px;align-items:center;gap:7px;padding:9px 16px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.lp-segment-pill:hover{background:var(--blue-100);transform:translateY(-1px)}.lp-how{text-align:center;max-width:1160px;margin:0 auto;padding:50px clamp(20px,5vw,64px) 20px}.lp-how h2{margin-bottom:32px;font-size:clamp(24px,3vw,32px)}.lp-how-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:30px;display:grid}.lp-how-step{text-align:left}.lp-how-num{background:var(--orange-500);width:32px;height:32px;color:var(--white);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;margin-bottom:12px;font-size:14px;font-weight:700;display:inline-flex}.lp-how-step h3{margin-bottom:6px;font-size:15.5px}.lp-how-step p{color:var(--muted);font-size:13.5px;line-height:1.6}.lp-trust{color:var(--muted);background:var(--blue-50);border-radius:999px;padding:10px 20px;font-size:13px;display:inline-block}.lp-features{max-width:1160px;margin:0 auto;padding:20px clamp(20px,5vw,64px) 60px}.lp-features h2{max-width:560px;margin-bottom:28px;font-size:clamp(24px,3vw,32px)}.lp-feature-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;display:grid}.lp-feature-grid article{border-left:3px solid var(--blue-500);background:var(--blue-50);border-radius:var(--radius-md);padding:22px}.lp-feature-icon{margin-bottom:10px;font-size:26px}.lp-feature-grid h3{margin-bottom:8px;font-size:16px}.lp-feature-grid p{color:var(--muted);font-size:13.5px;line-height:1.6}.lp-pricing{background:var(--blue-900);color:var(--white);padding:64px clamp(20px,5vw,64px)}.lp-pricing h2{color:var(--white);text-align:center;font-size:clamp(24px,3vw,32px)}.lp-pricing-sub{text-align:center;color:#b9c6ee;margin:10px 0 30px;font-size:14.5px}.lp-plan-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;max-width:1000px;margin:0 auto;display:grid}.lp-plan{border-radius:var(--radius-md);text-align:center;background:#ffffff0f;border:1px solid #ffffff24;flex-direction:column;align-items:center;gap:6px;padding:24px 18px;display:flex}.lp-plan-paid{border-color:var(--orange-500);background:#ff7a1a1a}.lp-plan h3{color:#b9c6ee;font-size:13px;font-weight:600}.lp-plan-price{font-family:var(--font-display);color:var(--white);font-size:28px;font-weight:700}.lp-plan span{color:#b9c6ee;font-size:12px}.lp-cta{text-align:center;padding:72px 24px}.lp-cta h2{margin-bottom:22px;font-size:clamp(24px,3vw,32px)}.lp-footer{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:24px clamp(20px,5vw,64px);font-size:12.5px;display:flex}@media (width<=860px){.lp-hero{text-align:center;grid-template-columns:1fr}.lp-hero-copy{flex-direction:column;align-items:center;display:flex}.lp-cta-row{justify-content:center}.lp-nav-links a:not(.lp-nav-signin){display:none}}.qsets-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.qset-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;animation:fadeUp .35s var(--ease) both;transition:transform .15s var(--ease), box-shadow .15s var(--ease);border-left:4px solid var(--orange-500);padding:18px}.qset-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.qset-badge{color:var(--orange-600);background:var(--orange-100);border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.qset-card h3{margin:10px 0 4px;font-size:15.5px}.books-filter{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.books-filter-btn{border:1px solid var(--line);background:var(--white);color:var(--muted);cursor:pointer;transition:all .15s var(--ease);border-radius:999px;padding:8px 16px;font-size:13px;font-weight:600}.books-filter-active{background:var(--blue-900);border-color:var(--blue-900);color:var(--white)}.books-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.book-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;animation:fadeUp .35s var(--ease) both;transition:transform .15s var(--ease), box-shadow .15s var(--ease);padding:18px}.book-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.book-type{border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.book-type-book{background:var(--orange-100);color:var(--orange-600)}.book-type-note{background:var(--blue-100);color:var(--blue-700)}.book-type-curriculum{color:var(--success);background:#eafbf3}.book-card h3{margin:10px 0 4px;font-size:15px}.book-meta{color:var(--muted);font-size:12.5px}.book-content{white-space:pre-wrap;color:var(--ink);margin-top:8px;font-size:14px;line-height:1.7}.sm-btn{border-radius:var(--radius-sm);font-family:var(--font-display);cursor:pointer;transition:transform .15s var(--ease), box-shadow .15s var(--ease), background .15s var(--ease);white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex}.sm-btn:active{transform:scale(.97)}.sm-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.sm-btn-md{padding:12px 20px;font-size:15px}.sm-btn-sm{padding:8px 14px;font-size:13px}.sm-btn-lg{padding:15px 26px;font-size:16px}.sm-btn-primary{background:var(--orange-500);color:var(--white);box-shadow:0 6px 16px -6px #ff7a1a8c}.sm-btn-primary:hover:not(:disabled){background:var(--orange-600);box-shadow:0 8px 20px -6px #ff7a1a99}.sm-btn-secondary{background:var(--blue-600);color:var(--white);box-shadow:0 6px 16px -6px #2954d673}.sm-btn-secondary:hover:not(:disabled){background:var(--blue-700)}.sm-btn-outline{color:var(--blue-700);border:1.5px solid var(--line);background:0 0}.sm-btn-outline:hover:not(:disabled){border-color:var(--blue-500);background:var(--blue-50)}.sm-btn-ghost{color:var(--blue-700);box-shadow:none;background:0 0;padding-left:4px;padding-right:4px}.sm-btn-ghost:hover:not(:disabled){text-decoration:underline}.sm-field{text-align:left;flex-direction:column;gap:6px;display:flex}.sm-field-label{color:var(--blue-900);font-size:13px;font-weight:600}.sm-input{border:1.5px solid var(--line);border-radius:var(--radius-sm);font-size:15px;font-family:var(--font-body);color:var(--ink);background:var(--white);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);padding:12px 14px}.sm-input:focus{border-color:var(--blue-500);box-shadow:0 0 0 3px var(--blue-100);outline:none}.sm-input-error{border-color:var(--danger)}.sm-field-error{color:var(--danger);font-size:12px}.sm-textarea{resize:vertical;min-height:90px}.auth-page{background:linear-gradient(180deg, var(--blue-50) 0%, var(--white) 340px);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);width:100%;max-width:420px;box-shadow:var(--shadow-card);animation:fadeUp .5s var(--ease);padding:clamp(28px,5vw,40px)}.auth-brand{font-family:var(--font-display);color:var(--blue-900);align-items:center;gap:10px;margin-bottom:22px;font-size:17px;font-weight:700;display:flex}.auth-logo{background:linear-gradient(135deg, var(--blue-600), var(--blue-900));width:32px;height:32px;color:var(--white);border-radius:9px;place-items:center;font-size:12px;font-weight:800;display:grid}.auth-card h1{margin-bottom:6px;font-size:23px}.auth-card>p{color:var(--muted);margin-bottom:22px;font-size:14px}.auth-notice{background:var(--blue-50);border:1px solid var(--blue-100);color:var(--blue-700);border-radius:var(--radius-sm);margin-bottom:18px;padding:10px 12px;font-size:13px}.auth-error{color:var(--danger);border-radius:var(--radius-sm);background:#fdecea;border:1px solid #f5c6c0;margin-bottom:18px;padding:10px 12px;font-size:13px}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.auth-submit{width:100%;margin-top:4px}.auth-switch{text-align:center;color:var(--blue-700);cursor:pointer;background:0 0;border:none;margin-top:20px;font-size:13.5px;font-weight:600;text-decoration:none;display:block}.auth-switch:hover{text-decoration:underline}.auth-attribution{text-align:center;color:var(--muted);margin-top:18px;font-size:11.5px;display:block}@media (width<=460px){.auth-row{grid-template-columns:1fr}}.shell{background:var(--blue-50);min-height:100vh;display:flex}.shell-sidebar{background:var(--blue-900);width:240px;color:var(--white);flex-direction:column;flex:0 0 240px;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.shell-brand{font-family:var(--font-display);align-items:center;gap:10px;padding:6px 10px 26px;font-size:16px;font-weight:700;display:flex}.shell-logo{background:var(--orange-500);width:30px;height:30px;color:var(--white);border-radius:9px;place-items:center;font-size:11px;font-weight:800;display:grid}.shell-nav{flex-direction:column;flex:1;gap:3px;display:flex}.shell-nav-item{border-radius:var(--radius-sm);color:#b9c6ee;transition:background .15s var(--ease), color .15s var(--ease);align-items:center;gap:12px;padding:11px 12px;font-size:14.5px;font-weight:500;text-decoration:none;display:flex;position:relative}.shell-nav-item:hover{color:var(--white);background:#ffffff0f}.shell-nav-active{color:var(--white);background:#ff7a1a24;font-weight:600}.shell-nav-active:before{content:"";background:var(--orange-500);border-radius:0 4px 4px 0;width:3px;position:absolute;top:8px;bottom:8px;left:-16px}.shell-nav-icon{text-align:center;width:20px;font-size:16px}.shell-nav-admin{border-top:1px solid #ffffff1a;margin-top:10px;padding-top:16px}.shell-user{border-top:1px solid #ffffff1a;align-items:center;gap:8px;padding-top:14px;display:flex}.shell-user-link{color:var(--white);flex:1;align-items:center;gap:10px;min-width:0;text-decoration:none;display:flex}.shell-avatar{background:var(--blue-600);border-radius:50%;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:grid}.shell-user-name{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600;overflow:hidden}.shell-logout{color:#b9c6ee;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px;font-size:16px}.shell-logout:hover{color:var(--white);background:#ffffff14}.shell-attribution{color:#b9c6ee99;text-align:center;margin-top:14px;font-size:10.5px}.shell-main{flex:1;min-width:0;padding:clamp(18px,3vw,36px) clamp(18px,3vw,36px) 90px}.shell-tabbar{display:none}@media (width<=880px){.shell-sidebar{display:none}.shell-main{padding:16px 16px 84px}.shell-tabbar{background:var(--white);border-top:1px solid var(--line);padding:8px 4px calc(8px + env(safe-area-inset-bottom,0px));z-index:40;display:flex;position:fixed;bottom:0;left:0;right:0}.shell-tab{color:var(--muted);border-radius:10px;flex-direction:column;flex:1;align-items:center;gap:3px;padding:4px 0;font-size:10.5px;font-weight:600;text-decoration:none;display:flex}.shell-tab-icon{transition:transform .2s var(--ease);font-size:19px}.shell-tab-active{color:var(--orange-600)}.shell-tab-active .shell-tab-icon{transform:translateY(-2px)scale(1.08)}}.fade-in{animation:fadeUp .4s var(--ease)}.home-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:26px;display:flex}.home-eyebrow{color:var(--muted);font-size:12.5px;font-weight:600}.home-header h1{margin-top:4px;font-size:clamp(22px,3vw,28px)}.home-plan-pill{color:var(--blue-700);background:var(--white);border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:700}.home-plan-paid{color:var(--orange-600);border-color:var(--orange-100);background:var(--orange-100)}.home-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:22px;display:grid}.home-card{color:inherit;background:var(--white);border:1px solid var(--line);border-left:4px solid var(--blue-500);border-radius:var(--radius-md);transition:transform .18s var(--ease), box-shadow .18s var(--ease);padding:20px;text-decoration:none;display:block}.home-card:hover{box-shadow:var(--shadow-card);transform:translateY(-3px)}.home-card-accent{border-left-color:var(--blue-700);background:var(--blue-50)}.home-card-orange{border-left-color:var(--orange-500)}.home-card-icon{font-size:22px}.home-card h3{margin:10px 0 6px;font-size:15.5px}.home-card p{color:var(--muted);font-size:13px;line-height:1.5}.home-upsell{background:var(--blue-900);color:var(--white);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:24px 26px;display:flex}.home-upsell h3{color:var(--white);margin-bottom:6px;font-size:17px}.home-upsell p{color:#b9c6ee;font-size:13.5px}.home-upsell+.home-upsell-secondary{margin-top:12px}.home-upsell-secondary{background:var(--white);border:1px solid var(--line)}.home-upsell-secondary h3{color:var(--blue-900)}.home-upsell-secondary p{color:var(--muted)}.sm-modal-backdrop{z-index:100;animation:fadeUp .2s var(--ease);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0b215c73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.sm-modal{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);width:100%;max-width:440px;max-height:88vh;animation:popIn .22s var(--ease);overflow-y:auto}.sm-modal-wide{max-width:640px}.sm-modal-header{border-bottom:1px solid var(--line);background:var(--white);justify-content:space-between;align-items:center;padding:18px 22px;display:flex;position:sticky;top:0}.sm-modal-header h3{font-size:17px}.sm-modal-close{background:var(--blue-50);cursor:pointer;width:30px;height:30px;color:var(--muted);border:none;border-radius:8px;font-size:14px}.sm-modal-close:hover{background:var(--blue-100);color:var(--blue-900)}.sm-modal-body{flex-direction:column;gap:14px;padding:22px;display:flex}.notes-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.notes-header h1{margin-bottom:6px;font-size:22px}.notes-header p{color:var(--muted);font-size:13.5px}.notes-empty{color:var(--muted);font-size:14px}.notes-empty-state{text-align:center;background:var(--blue-50);border-radius:var(--radius-lg);flex-direction:column;align-items:center;gap:8px;padding:60px 20px;display:flex}.notes-empty-icon{font-size:34px}.notes-empty-state h3{font-size:16px}.notes-empty-state p{color:var(--muted);max-width:320px;margin-bottom:10px;font-size:13.5px}.notes-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.note-card{background:var(--white);border:1px solid var(--line);border-left:4px solid var(--blue-500);border-radius:var(--radius-md);cursor:pointer;transition:transform .15s var(--ease), box-shadow .15s var(--ease);animation:fadeUp .35s var(--ease) both;flex-direction:column;gap:8px;min-height:130px;padding:18px;display:flex}.note-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.note-subject{color:var(--blue-700);background:var(--blue-100);border-radius:999px;align-self:flex-start;padding:3px 9px;font-size:11px;font-weight:700}.note-card h3{font-size:15px}.note-card p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.note-footer{color:var(--muted);justify-content:space-between;align-items:center;margin-top:4px;font-size:11.5px;display:flex}.note-delete{cursor:pointer;opacity:.6;background:0 0;border:none;font-size:14px}.note-delete:hover{opacity:1}.reader-modal{max-width:680px}.reader-body{gap:16px}.reader-progress-track{background:var(--blue-100);border-radius:999px;height:5px;overflow:hidden}.reader-progress-fill{background:linear-gradient(90deg, var(--blue-600), var(--orange-500));height:100%;transition:width .3s var(--ease);border-radius:999px}.reader-page{color:var(--ink);white-space:pre-wrap;min-height:220px;animation:fadeUp .25s var(--ease);font-size:15.5px;line-height:1.8}.reader-nav{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-top:14px;display:flex}.reader-page-count{color:var(--muted);font-size:12.5px;font-weight:600}.quiz-loading{text-align:center;color:var(--muted);padding:60px 20px;font-size:14px}.quiz-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.quiz-back{color:var(--blue-700);font-size:13.5px;font-weight:600;text-decoration:none}.quiz-back:hover{text-decoration:underline}.quiz-count{color:var(--muted);font-size:12.5px;font-weight:600}.quiz-progress-track{background:var(--blue-100);border-radius:999px;height:6px;margin-bottom:22px;overflow:hidden}.quiz-progress-fill{background:linear-gradient(90deg, var(--blue-600), var(--orange-500));height:100%;transition:width .35s var(--ease);border-radius:999px}.quiz-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);max-width:640px;animation:fadeUp .3s var(--ease);margin:0 auto;padding:clamp(20px,4vw,30px)}.quiz-question{font-family:var(--font-display);color:var(--blue-900);margin-bottom:22px;font-size:clamp(17px,2.4vw,20px);font-weight:700;line-height:1.4}.quiz-options{gap:10px;display:grid}.quiz-option{text-align:left;border:1.5px solid var(--line);background:var(--white);border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;transition:all .15s var(--ease);padding:13px 16px;font-size:14.5px;font-weight:500}.quiz-option:hover{border-color:var(--blue-500);background:var(--blue-50)}.quiz-option-selected{border-color:var(--blue-600);background:var(--blue-100);color:var(--blue-900);font-weight:700}.quiz-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;max-width:640px;margin:20px auto 0;display:flex}.ad-modal{max-width:380px}.ad-modal-body{text-align:center;align-items:center}.ad-modal-icon{font-size:34px}.ad-progress-track{background:var(--blue-100);border-radius:999px;width:100%;height:8px;margin:6px 0 10px;overflow:hidden}.ad-progress-fill{background:var(--orange-500);height:100%;transition:width 1s linear}.quiz-result{text-align:center;flex-direction:column;align-items:center;gap:10px;max-width:420px;margin:40px auto;display:flex}.quiz-result-ring{--pct:0;background:conic-gradient(var(--orange-500) calc(var(--pct) * 1%), var(--blue-100) 0);width:140px;height:140px;animation:popIn .4s var(--ease);border-radius:50%;place-items:center;margin-bottom:10px;display:grid}.quiz-result-ring span{background:var(--white);width:108px;height:108px;font-family:var(--font-display);color:var(--blue-900);border-radius:50%;place-items:center;font-size:24px;font-weight:800;display:grid}.quiz-result h2{font-size:20px}.quiz-result p{color:var(--muted);font-size:14px}.quiz-result-actions{gap:12px;margin-top:14px;display:flex}.composer{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);gap:12px;margin-bottom:20px;padding:16px;display:flex}.composer-avatar{background:var(--blue-600);width:36px;height:36px;color:var(--white);border-radius:50%;flex-shrink:0;place-items:center;font-size:14px;font-weight:700;display:grid}.composer-body{flex-direction:column;flex:1;gap:8px;display:flex}.composer-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.feed{flex-direction:column;gap:12px;display:flex}.feed-post{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);animation:fadeUp .3s var(--ease) both;gap:12px;padding:16px;display:flex}.feed-avatar{background:var(--blue-700)}.feed-body{flex:1;min-width:0}.feed-meta{align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.feed-meta strong{color:var(--blue-900);font-size:14px}.feed-meta span{color:var(--muted);font-size:12px}.feed-content{color:var(--ink);white-space:pre-wrap;word-break:break-word;font-size:14.5px;line-height:1.6}.feed-actions{align-items:center;gap:14px;margin-top:10px;display:flex}.feed-like{cursor:pointer;color:var(--muted);transition:transform .15s var(--ease);background:0 0;border:none;border-radius:8px;align-items:center;gap:5px;padding:4px 8px;font-size:13px;font-weight:600;display:flex}.feed-like:active .feed-like-icon{transform:scale(1.3)}.feed-like-icon{transition:transform .2s var(--ease);display:inline-block}.feed-like-active{color:var(--orange-600)}.composer-tools{align-items:center;gap:10px;display:flex}.composer-tool-btn{color:var(--blue-700);background:var(--blue-50);border:1px solid var(--blue-100);cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:6px 12px;font-size:12.5px;font-weight:600;display:inline-flex}.composer-tool-btn:hover{background:var(--blue-100)}.composer-tool-disabled{color:var(--muted);background:var(--blue-50);opacity:.7;border-radius:999px;padding:6px 12px;font-size:12.5px;font-weight:600}.composer-image-preview{max-width:220px;display:inline-block;position:relative}.composer-image-preview img{border-radius:var(--radius-sm);object-fit:cover;width:auto;max-height:160px}.composer-image-preview button{color:var(--white);cursor:pointer;background:#0e1b3dbf;border:none;border-radius:999px;padding:4px 9px;font-size:11px;position:absolute;top:6px;right:6px}.composer-image-status{color:var(--blue-700);border-radius:var(--radius-sm);background:#ffffffb3;place-items:center;font-size:12px;font-weight:600;display:grid;position:absolute;inset:0}.score-chip{background:var(--orange-100);color:var(--orange-600);border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:6px 12px;font-size:12.5px;font-weight:700;display:inline-flex}.score-chip button{color:inherit;cursor:pointer;background:0 0;border:none;font-size:11px}.score-picker{background:var(--blue-50);border:1px solid var(--blue-100);border-radius:var(--radius-sm);margin-top:4px;padding:12px}.score-picker-head{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;display:flex}.score-picker-head button{cursor:pointer;color:var(--muted);background:0 0;border:none}.score-picker-item{background:var(--white);border:1px solid var(--line);cursor:pointer;text-align:left;border-radius:8px;justify-content:space-between;width:100%;margin-bottom:6px;padding:9px 12px;font-size:13px;display:flex}.score-picker-item:hover{border-color:var(--blue-500)}.feed-score-badge{background:var(--orange-100);color:var(--orange-600);border-radius:999px;margin-bottom:8px;padding:5px 12px;font-size:12.5px;font-weight:700;display:inline-block}.feed-image{border-radius:var(--radius-md);object-fit:cover;max-width:100%;max-height:340px;margin-top:8px}.groups-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.group-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);cursor:pointer;animation:fadeUp .35s var(--ease) both;transition:transform .15s var(--ease), box-shadow .15s var(--ease);border-left:4px solid var(--blue-700);padding:18px}.group-card:hover{box-shadow:var(--shadow-card);transform:translateY(-2px)}.group-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.group-card-top h3{font-size:15.5px}.group-joined-badge{color:var(--success);background:#eafbf3;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:10.5px;font-weight:700}.group-card-footer{color:var(--muted);justify-content:space-between;align-items:center;margin-top:12px;font-size:12px;display:flex}.chat-page{flex-direction:column;max-width:640px;height:calc(100vh - 100px);margin:0 auto;display:flex}.chat-header{margin-bottom:12px}.chat-window{flex-direction:column;flex:1;gap:10px;padding:4px 2px 12px;display:flex;overflow-y:auto}.chat-row{display:flex}.chat-row-mine{justify-content:flex-end}.chat-bubble{background:var(--white);border:1px solid var(--line);max-width:78%;animation:fadeUp .25s var(--ease);border-radius:14px 14px 14px 4px;padding:10px 14px}.chat-bubble-mine{background:var(--blue-600);color:var(--white);border-color:var(--blue-600);border-radius:14px 14px 4px}.chat-sender{color:var(--blue-700);margin-bottom:3px;font-size:11.5px;font-weight:700;display:block}.chat-bubble p{white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.5}.chat-input-row{border-top:1px solid var(--line);gap:8px;padding-top:10px;display:flex}.chat-input{flex:1}.ref-link-card{background:var(--blue-900);color:var(--white);border-radius:var(--radius-lg);margin-bottom:18px;padding:22px}.ref-link-label{color:#b9c6ee;font-size:12.5px;font-weight:600}.ref-link-row{flex-wrap:wrap;align-items:center;gap:10px;margin:10px 0;display:flex}.ref-link-code{overflow-wrap:anywhere;background:#ffffff1a;border-radius:8px;flex:1;min-width:0;padding:8px 12px;font-size:12.5px}.ref-code-label{color:#b9c6ee;font-size:12.5px}.ref-stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:22px;display:grid}.ref-stat{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);text-align:center;animation:popIn .3s var(--ease);padding:18px}.ref-stat span{font-family:var(--font-display);color:var(--blue-900);font-size:26px;font-weight:800;display:block}.ref-stat small{color:var(--muted);font-size:11.5px}.ref-stat-orange span{color:var(--orange-600)}.ref-bar-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);padding:22px}.ref-bar-card h3{margin-bottom:16px;font-size:14.5px}.ref-bar-item{margin-bottom:16px}.ref-bar-item:last-child{margin-bottom:0}.ref-bar-top{justify-content:space-between;margin-bottom:6px;font-size:13px;font-weight:600;display:flex}.ref-bar-track{background:var(--blue-50);border-radius:999px;height:8px;overflow:hidden}.ref-bar-fill{background:linear-gradient(90deg, var(--blue-600), var(--orange-500));height:100%;transition:width .6s var(--ease);border-radius:999px}.pricing-pending{background:var(--orange-100);border:1px solid var(--orange-500);border-radius:var(--radius-md);flex-direction:column;gap:4px;margin-bottom:16px;padding:14px 18px;display:flex}.pricing-pending span{color:var(--orange-600);font-size:14px;font-weight:600}.pricing-pending small{color:var(--muted);font-size:12.5px}.pricing-account{background:var(--blue-50);border:1px solid var(--blue-100);border-radius:var(--radius-md);margin-bottom:22px;padding:16px 18px}.pricing-account h3{margin-bottom:8px;font-size:14px}.pricing-account p{font-size:13.5px;line-height:1.7}.pricing-account small{color:var(--muted);margin-top:6px;font-size:12px;display:block}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:24px;display:grid}.pricing-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);text-align:center;animation:fadeUp .35s var(--ease) both;flex-direction:column;align-items:center;gap:6px;padding:24px 18px;display:flex}.pricing-label{color:var(--muted);font-size:13px;font-weight:600}.pricing-price{font-family:var(--font-display);color:var(--blue-900);font-size:28px;font-weight:800}.pricing-note{color:var(--muted);margin-bottom:8px;font-size:12px}.pricing-history{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-md);padding:18px}.pricing-history h3{margin-bottom:12px;font-size:14px}.pricing-history-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:8px 0;font-size:13px;display:flex}.pricing-history-row:first-of-type{border-top:none}.pricing-status{text-transform:capitalize;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:700}.pricing-status-pending{background:var(--orange-100);color:var(--orange-600)}.pricing-status-confirmed{color:var(--success);background:#eafbf3}.pricing-status-rejected{color:var(--danger);background:#fdecea}.profile-summary{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:22px;padding:20px;display:flex}.profile-avatar{background:var(--blue-700);width:52px;height:52px;color:var(--white);border-radius:50%;flex-shrink:0;place-items:center;font-size:20px;font-weight:800;display:grid}.profile-summary h2{font-size:17px}.profile-summary p{color:var(--muted);margin-top:2px;font-size:13px}.profile-summary .home-plan-pill{margin-left:auto}.profile-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.profile-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:12px;padding:22px;display:flex}.profile-card h3{font-size:15px}.profile-success{color:var(--success);border-radius:var(--radius-sm);background:#eafbf3;border:1px solid #bfebd8;padding:9px 12px;font-size:13px}.admin-tabs{margin-bottom:22px}.admin-layout{grid-template-columns:minmax(280px,380px) 1fr;align-items:start;gap:20px;display:grid}@media (width<=900px){.admin-layout{grid-template-columns:1fr}}.admin-form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);flex-direction:column;gap:12px;padding:22px;display:flex;position:sticky;top:0}.admin-form-card h3{font-size:15px}.admin-form-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.admin-form-actions{gap:10px;display:flex}.admin-check{color:var(--blue-900);align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.admin-list{flex-direction:column;gap:10px;display:flex}.admin-row{background:var(--white);border:1px solid var(--line);border-radius:var(--radius-sm);animation:fadeUp .25s var(--ease) both;justify-content:space-between;align-items:center;gap:10px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.admin-row-wide{flex-wrap:wrap}.admin-row-wide>div:first-child{flex-direction:column;flex:1;gap:3px;min-width:200px;display:flex}.admin-row-meta{color:var(--muted);font-size:12px;font-weight:500}.admin-import-card{background:var(--blue-50);border:1px solid var(--blue-100);border-radius:var(--radius-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:18px 20px;display:flex}.admin-import-card h3{margin-bottom:6px;font-size:14.5px}.admin-upload-btn{cursor:pointer;white-space:nowrap}.admin-import-result{border-radius:var(--radius-sm);background:#eafbf3;border:1px solid #bfebd8;margin-bottom:16px;padding:12px 16px;font-size:13.5px}.admin-import-warn{background:var(--orange-100);border-color:var(--orange-500)}.admin-import-result ul{color:var(--muted);margin:8px 0 0;padding-left:18px;font-size:12.5px}.admin-perm-editor{background:var(--blue-50);border-radius:var(--radius-sm);flex-direction:column;gap:10px;width:100%;margin-top:10px;padding:14px;display:flex}.admin-perm-check{align-items:flex-start;gap:10px}.admin-perm-check small{color:var(--muted);font-weight:400}.admin-pricing-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.admin-pricing-col{background:var(--blue-50);border-radius:var(--radius-sm);flex-direction:column;gap:10px;padding:14px;display:flex}
