:root{color:#14233b;font-synthesis:none;text-rendering:optimizelegibility;background:#f4f6fb;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.app{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:10;background:#fff;border-bottom:1px solid #e7ebf3;justify-content:space-between;align-items:center;height:70px;padding:0 clamp(16px,4vw,48px);display:flex;position:sticky;top:0}.brand{text-align:left;color:#14233b;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.brand-icon{color:#fff;background:#2d6bea;border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.brand b{font-family:Manrope,sans-serif;font-size:16px;display:block}.brand em{color:#2d6bea;font-style:normal}.brand small{letter-spacing:1.5px;color:#74829a;margin-top:2px;font-size:8px;display:block}.menu-button{color:#2d6bea;background:#f0f4ff;border:0;border-radius:11px;place-items:center;width:40px;height:40px;display:grid}.menu-pop{background:#fff;border:1px solid #e4e9f2;border-radius:14px;min-width:210px;padding:8px;display:grid;position:absolute;top:60px;right:16px;box-shadow:0 14px 38px #12234520}.menu-pop button,.menu-pop a{color:#263954;text-align:left;background:#fff;border:0;border-radius:8px;padding:12px;font-size:14px;text-decoration:none}.menu-pop button:hover,.menu-pop a:hover{background:#f3f6ff}.hero{color:#fff;background:linear-gradient(115deg,#174aab,#2e6fec 68%,#4381f6);padding:40px clamp(16px,7vw,90px) 36px}.hero-inner{max-width:1100px;margin:auto}.kicker{letter-spacing:1.5px;opacity:.9;align-items:center;gap:7px;font-size:10px;font-weight:700;display:flex}.hero h1{letter-spacing:-1.7px;margin:18px 0 12px;font-family:Manrope,sans-serif;font-size:clamp(34px,5vw,58px);font-weight:800;line-height:1.12}.hero h1 span{color:#cfe0ff}.hero p{color:#e2ebff;margin:0 0 22px;font-size:15px}.searchbox{color:#66758e;background:#fff;border-radius:12px;align-items:center;gap:12px;max-width:760px;height:54px;padding:0 15px;display:flex;box-shadow:0 5px 20px #0c2d6b25}.searchbox input{color:#172b49;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:14px}.searchbox button{color:#8492a8;background:0 0;border:0;place-items:center;min-width:20px;display:grid}.hero-note{color:#e0eaff;align-items:center;gap:6px;margin-top:14px;font-size:10px;display:flex}.content{flex:1;width:100%;max-width:1300px;margin:0 auto;padding:28px clamp(14px,3vw,36px) 44px}.section-heading{justify-content:space-between;align-items:flex-end;gap:14px;margin-bottom:18px;display:flex}.section-heading>div>span{color:#2d6bea;letter-spacing:1.5px;font-size:10px;font-weight:800}.section-heading h2{letter-spacing:-.6px;color:#15233b;margin:4px 0;font-family:Manrope,sans-serif;font-size:24px}.section-heading p{color:#71809a;margin:5px 0 0;font-size:13px}.total{color:#64738c;background:#e9efff;border-radius:99px;padding:8px 12px;font-size:12px}.category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.category-card{text-align:left;color:#263954;background:#fff;border:1px solid #e6eaf2;border-radius:12px;align-items:center;gap:11px;min-height:62px;padding:14px 12px;transition:all .15s;display:flex}.category-card:hover,.term-card:hover{border-color:#a9c2ff;transform:translateY(-1px);box-shadow:0 5px 18px #183e8010}.cat-number{color:#2d6bea;background:#eef3ff;border-radius:6px;flex-shrink:0;padding:6px;font-size:10px;font-weight:800}.cat-name{flex:1;font-size:12px;font-weight:600}.cat-name small{color:#8b97aa;margin-top:3px;font-size:10px;font-weight:400;display:block}.category-card>svg{color:#98a4b7}.term-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.term-card{text-align:left;color:#182b47;background:#fff;border:1px solid #e4e9f2;border-radius:13px;flex-direction:column;min-width:0;min-height:190px;padding:15px;transition:all .15s;display:flex}.term-card-top{color:#74839b;justify-content:space-between;gap:8px;margin-bottom:10px;font-size:9px;display:flex}.term-card-top span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.term-card-top span:last-child{color:#3e6cc5;flex-shrink:0;font-weight:700}.term-card>b{font-family:Manrope,sans-serif;font-size:16px;line-height:1.35}.term-short{color:#2d6bea;margin-top:4px;font-size:11px}.term-card p{color:#65748c;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:9px 0 12px;font-size:12px;line-height:1.55;display:-webkit-box;overflow:hidden}.term-card-bottom{color:#8a97aa;border-top:1px solid #eff2f7;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:10px;font-size:10px;display:flex}.term-card-bottom span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.back{color:#356bd1;background:0 0;border:0;align-items:center;gap:7px;margin:0 0 18px;padding:0;font-size:13px;font-weight:600;display:inline-flex}.detail-wrap{flex:1;width:100%;max-width:950px;margin:0 auto;padding:26px 18px 44px}.detail-card{background:#fff;border:1px solid #e4e9f2;border-radius:18px;padding:clamp(20px,4vw,38px);box-shadow:0 8px 28px #19355b08}.eyebrow{color:#2d6bea;letter-spacing:.4px;font-size:11px;font-weight:700}.detail-title-row{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.detail-title-row h1{letter-spacing:-.8px;margin:10px 0 14px;font-family:Manrope,sans-serif;font-size:clamp(27px,4vw,38px);line-height:1.2}.save{color:#687d9c;background:#f7f9ff;border:1px solid #e0e7f5;border-radius:10px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.save.active{color:#2d6bea;background:#eaf1ff}.shortname{color:#66758d;background:#f5f7fc;border-radius:9px;padding:11px 13px;font-size:13px;display:inline-block}.shortname b{color:#20395f}.detail-card h2{color:#243956;margin:26px 0 9px;font-size:14px}.detail-card p{color:#52637d;margin:0;font-size:15px;line-height:1.8}.detail-card .meaning{color:#293d5b;font-size:17px;line-height:1.85}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{color:#2859a9;background:#f4f7ff;border:1px solid #dce6fb;border-radius:99px;align-items:center;gap:4px;padding:8px 11px;font-size:12px;display:inline-flex}.record-id{color:#9aa5b6;border-top:1px solid #edf0f6;margin-top:28px;padding-top:14px;font-size:11px}.quick-actions{flex-wrap:wrap;gap:10px;margin-top:26px;display:flex}.quick-actions button,.quick-actions a{color:#2a4f91;background:#fff;border:1px solid #dfe7f6;border-radius:10px;align-items:center;gap:9px;padding:12px 15px;font-size:13px;text-decoration:none;display:flex}.quick-actions span{background:#eaf0ff;border-radius:99px;padding:2px 7px}.text-button{color:#2d6bea;background:0 0;border:0;padding:10px 0;font-size:12px;font-weight:700}.empty{text-align:center;color:#8190a6;background:#fff;border:1px dashed #d7dfed;border-radius:14px;justify-items:center;gap:10px;padding:45px 15px;display:grid}.empty b{color:#2b3c57}.empty p{margin:0;font-size:13px}footer{color:#d7e2f5;background:#10294d;padding:27px clamp(16px,4vw,48px) 24px;font-size:12px}.footer-brand{align-items:center;gap:8px;display:flex}.footer-brand svg{color:#9bbcff}.footer-brand b{font-family:Manrope,sans-serif}.footer-brand+p{color:#aabbd6;margin:9px 0 14px;font-size:11px}.footer-links{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.footer-links a{color:#d7e2f5;text-decoration:none}.footer-links a:hover{text-decoration:underline}footer>small{color:#8fa4c4;margin-top:16px;font-size:10px;display:block}@media (width<=800px){.category-grid,.term-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding-top:32px}.hero h1{letter-spacing:-1px}.content{padding-top:24px}}@media (width<=520px){.category-grid,.term-grid{grid-template-columns:1fr}.category-card{min-height:58px}.term-card{min-height:160px}.hero{padding:28px 16px 25px}.hero h1{font-size:36px}.hero p{font-size:13px;line-height:1.5}.searchbox{height:50px}.section-heading h2{font-size:21px}.term-card p{-webkit-line-clamp:2}.content{padding-left:13px;padding-right:13px}.detail-wrap{padding:18px 12px 32px}}:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{padding-bottom:76px}.family-label{color:#75839a;letter-spacing:.5px;font-size:10px}.welcome-card{background:linear-gradient(120deg,#fff,#edf3ff);border:1px solid #dfe8fb;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding:23px;display:flex}.welcome-card>div:first-child{max-width:620px}.welcome-card span{letter-spacing:1.4px;color:#2d6bea;font-size:10px;font-weight:800}.welcome-card h2{color:#172d4e;margin:8px 0;font-size:clamp(20px,3vw,27px);line-height:1.25}.welcome-card p,.about-card p,.learn-card p{color:#687991;margin:0;font-size:13px;line-height:1.8}.welcome-icon,.learn-icon{color:#fff;background:#2d6bea;border-radius:18px;flex-shrink:0;place-items:center;width:64px;height:64px;display:grid}.recent-heading{margin-top:30px}.bottom-nav{z-index:20;padding:7px 5px calc(7px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff7;border-top:1px solid #e3e8f1;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -5px 18px #17325a0b}.bottom-nav button{color:#7a879b;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:4px 1px;font-size:10px;font-weight:600;display:flex;position:relative}.bottom-nav button.active{color:#2d6bea}.bottom-nav button.active:before{content:"";background:#2d6bea;border-radius:0 0 4px 4px;width:25px;height:3px;position:absolute;top:-7px}.bottom-nav i{color:#2d6bea;background:#e5edff;border-radius:20px;min-width:15px;padding:0 3px;font-size:8px;font-style:normal;line-height:15px;position:absolute;top:0;right:calc(50% - 25px)}.primary-button{color:#fff;background:#2d6bea;border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:15px;padding:12px 16px;font-size:13px;font-weight:700;display:inline-flex}.learn-card,.quiz-card,.about-card{background:#fff;border:1px solid #e2e8f2;border-radius:16px;padding:clamp(18px,4vw,30px)}.learn-card{max-width:760px}.learn-card .learn-icon{margin-bottom:18px}.learn-card h3,.quiz-card h3,.about-card h3{color:#1c3150;margin:8px 0 10px;font-family:Manrope,system-ui,sans-serif;font-size:21px}.quiz-card{max-width:800px}.quiz-progress>span{letter-spacing:1px;color:#2d6bea;font-size:10px;font-weight:800}.quiz-progress>div{background:#edf1f8;border-radius:8px;height:5px;margin-top:9px;overflow:hidden}.quiz-progress i{background:#2d6bea;border-radius:8px;height:100%;display:block}.quiz-card h3{margin-top:24px;line-height:1.45}.quiz-card h3 b{color:#2d6bea}.quiz-category{color:#8390a4;font-size:11px}.quiz-options{gap:9px;margin-top:20px;display:grid}.quiz-options button{text-align:left;color:#263b5a;background:#fff;border:1px solid #dfe6f2;border-radius:11px;align-items:flex-start;gap:12px;padding:14px;font-size:13px;line-height:1.65;display:flex}.quiz-options button:active{background:#edf3ff;border-color:#2d6bea}.quiz-options button:first-letter{font-weight:800}.quiz-options button>span{flex:1}.quiz-review{gap:7px;margin:20px 0;display:grid}.quiz-review button{text-align:left;color:#293e5d;background:#fff;border:1px solid #e5eaf3;border-radius:9px;grid-template-columns:20px 1fr;gap:5px 8px;padding:10px;display:grid}.quiz-review button>span{color:#2d6bea;grid-row:span 2}.quiz-review button b{font-size:12px}.quiz-review button small{color:#7a879b;font-size:11px;line-height:1.5}.about-card{max-width:900px}.about-card h3{margin-top:24px;font-size:16px}.about-card h3:first-child{margin-top:0}.legal-draft-note{color:#7b5c1b;background:#fff8e8;border:1px solid #f1dfb5;border-radius:10px;margin-top:24px;padding:13px;font-size:12px;line-height:1.65}.hint{color:#8491a5;font-size:12px;line-height:1.6}.footer-links button{color:#d7e2f5;background:0 0;border:0;padding:0;font-size:12px}.footer-links button:hover{text-decoration:underline}.section-heading .text-button{align-items:center;gap:3px;display:inline-flex}.empty .primary-button{margin-top:4px}@media (width<=520px){.family-label{display:none}.welcome-card{gap:10px;padding:17px}.welcome-icon{border-radius:14px;width:48px;height:48px}.welcome-icon svg{width:27px}.bottom-nav button{font-size:9px}.learn-card h3,.quiz-card h3{font-size:19px}.about-card{padding:18px}.quiz-options button{padding:12px}.content{padding-bottom:28px}}
