:root{color:#172b42;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f8f6ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{background:#faf8f2;flex-direction:column;min-height:100vh;display:flex}.topbar{color:#fff;background:#11263c;border-bottom:3px solid #c6a15a;justify-content:space-between;align-items:center;height:76px;padding:0 max(22px,50vw - 550px);display:flex}.brand{color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.brand-mark{color:#d4ad64;place-items:center;width:45px;height:45px;display:grid}.brand-mark svg{width:42px}.brand strong{letter-spacing:.2px;font-family:Georgia,serif;font-size:22px;display:block}.brand small{color:#d6ba84;letter-spacing:2px;margin-top:3px;font-size:9px;display:block}.back-button{color:#fff;background:0 0;border:1px solid #6f7e8e;border-radius:9px;padding:9px 13px}.app-shell main{flex:1;width:100%}.page{max-width:1050px;margin:0 auto;padding:38px 24px 65px}.page h1{color:#172d44;margin:8px 0 10px;font-family:Georgia,serif;font-size:clamp(30px,4vw,42px);line-height:1.18}.page h2{color:#172d44;font-family:Georgia,serif}.eyebrow{letter-spacing:2px;color:#a77b32;margin:0 0 10px;font-size:11px;font-weight:800}.muted{color:#697685;margin:7px 0;line-height:1.6}.small{font-size:12px}.tiny{font-size:10px}.center{text-align:center}.page-heading{margin-bottom:26px}.primary-button,.secondary-button{border-radius:11px;min-height:48px;padding:14px 19px;font-weight:750;transition:transform .15s,background .15s}.primary-button{color:#fff;background:#152e49;border:1px solid #132c46;justify-content:center;align-items:center;gap:10px;display:flex}.primary-button:hover:not(:disabled){background:#224363}.secondary-button{color:#18324d;background:#fff;border:1px solid #c6b99d}.primary-button:active,.secondary-button:active{transform:scale(.99)}.full-button{width:100%;margin-top:20px}.welcome{text-align:center;max-width:740px;padding-top:60px}.welcome-label{color:#8b6b37;letter-spacing:2px;align-items:center;gap:8px;font-size:10px;font-weight:800;display:inline-flex}.label-dot{background:#d5ad65;border-radius:50%;width:7px;height:7px}.hero-icon{color:#e6bc70;background:#152e49;border-radius:26px;place-items:center;width:108px;height:108px;margin:25px auto 16px;display:grid;box-shadow:0 12px 30px #152e4920}.hero-icon svg{width:66px;height:66px}.welcome h1 span{color:#b88b42}.hero-description{color:#657181;max-width:520px;margin:15px auto 25px;font-size:16px;line-height:1.7}.feature-row{grid-template-columns:repeat(3,1fr);gap:12px;max-width:560px;margin:28px auto;display:grid}.feature-row>div{background:#fff;border:1px solid #e9e1d2;border-radius:13px;padding:16px 8px}.feature-row strong,.feature-row span{display:block}.feature-row strong{color:#1b344f;font-size:19px}.feature-row span{color:#7a8591;margin-top:5px;font-size:11px}.welcome-actions{gap:11px;max-width:340px;margin:0 auto;display:grid}.welcome-actions .primary-button{justify-content:space-between}.trust-note{color:#a37d41;margin-top:35px;font-size:12px}.guest-banner{background:#e9eef1;border:1px solid #d3dde3;border-radius:14px;justify-content:space-between;align-items:center;gap:15px;margin:20px 0;padding:17px 19px;display:flex}.guest-banner strong{color:#1b354f}.guest-banner p{color:#607183;margin:5px 0 0;font-size:12px}.guest-banner button{color:#fff;white-space:nowrap;background:#193750;border:0;border-radius:9px;padding:10px 13px;font-size:12px;font-weight:750}.study-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:24px 0 30px;display:grid}.study-nav-item{color:#4f6274;background:#fff;border:1px solid #e2ddcf;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-width:0;padding:12px 8px;font-size:12px;font-weight:700;display:flex}.study-nav-item span{font-size:18px}.study-nav-item.active{color:#fff;background:#17334e;border-color:#17334e}.section-title{justify-content:space-between;align-items:center;gap:12px;margin:25px 0 15px;display:flex}.section-title h2{margin:0;font-size:21px}.section-title>span{color:#84909b;font-size:12px}.chapter-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.chapter-card{text-align:left;background:#fff;border:1px solid #e6dfd2;border-radius:16px;flex-direction:column;align-items:flex-start;gap:13px;min-height:157px;padding:19px;display:flex;position:relative;overflow:hidden;box-shadow:0 3px 10px #152e4908}.chapter-card-top{justify-content:space-between;align-items:center;width:100%;display:flex}.chapter-number{color:#c39b56;font-family:Georgia,serif;font-size:25px}.open-icon{color:#a78a58}.chapter-card strong{color:#1a324b;font-size:15px;line-height:1.35}.chapter-meta{color:#7d8892;margin-top:auto;font-size:11px}.free-tag{color:#42754b;background:#eaf3e9;border-radius:5px;padding:4px 7px;font-size:9px;font-weight:800;position:absolute;bottom:15px;right:15px}.locked-card{background:#f2f1ed}.locked-card strong{color:#6f7880}.locked-overlay{pointer-events:none;background:#ffffff20;position:absolute;inset:0}.content-title{max-width:700px}.progress-card{color:#fff;background:#17334e;border-radius:16px;justify-content:space-between;align-items:center;margin:25px 0;padding:20px 25px;display:flex}.progress-card h2{color:#fff;margin:6px 0;font-size:27px}.progress-card .muted{color:#c6d2db}.progress-circle{color:#e4c184;border:2px solid #c5a160;border-radius:50%;place-items:center;width:66px;height:66px;font-weight:800;display:grid}.set-row{text-align:left;background:#fff;border:1px solid #e6dfd2;border-radius:13px;align-items:center;gap:15px;width:100%;margin:10px 0;padding:15px;display:flex}.set-icon{color:#a78246;background:#f4eedf;border-radius:11px;flex-shrink:0;place-items:center;width:47px;height:47px;font-size:22px;display:grid}.set-details{flex:1;gap:6px;display:grid}.set-details strong{color:#1a324b}.set-details small{color:#84909a}.set-arrow{color:#a78348;font-size:20px}.empty-state{text-align:center;background:#fff;border:1px dashed #d6cdbb;border-radius:16px;margin:22px 0;padding:42px 18px}.empty-state>span{color:#bb9658;font-size:32px}.empty-state h2{font-size:21px}.empty-state p{color:#73808d;font-size:13px}.quiz-page{max-width:780px}.quiz-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.quiz-heading h1{font-size:30px}.question-counter{color:#9d783e;white-space:nowrap;background:#f0e9d9;border-radius:9px;padding:8px 11px;font-size:12px;font-weight:750}.progress-track{background:#e5e3dd;border-radius:20px;height:6px;margin:16px 0 22px;overflow:hidden}.progress-track>div{background:#c49a56;height:100%;transition:width .2s}.question-card{background:#fff;border:1px solid #e5ded2;border-radius:17px;padding:clamp(19px,4vw,32px);box-shadow:0 8px 25px #152e4908}.question-top-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.question-label{color:#a47c3e;letter-spacing:.7px;font-size:11px;font-weight:800}.tag-button{color:#927344;background:#fff;border:1px solid #d8c8ad;border-radius:8px;padding:7px 10px;font-size:12px}.tag-button.tagged{color:#a94754;background:#fff0f1;border-color:#e5b8bd}.mcq-question-text{margin:22px 0;font-size:clamp(19px,3vw,25px);line-height:1.45}.options-list{gap:11px;display:grid}.option{text-align:left;color:#23394d;background:#fcfcfb;border:1.5px solid #e1e4e5;border-radius:11px;align-items:center;gap:13px;width:100%;min-height:60px;padding:14px;line-height:1.45;display:flex}.option-letter{color:#647280;background:#f0f0ec;border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.option>span:nth-child(2){flex:1}.option.selected{background:#fff9ed;border-color:#b28a4c}.option.selected .option-letter{color:#563f1c;background:#e4c996}.option.correct{color:#205d33;background:#edf8ee;border-color:#64b578}.option.correct .option-letter{color:#25693a;background:#ccecd2}.option.incorrect{color:#9a3434;background:#fff0f0;border-color:#e2a0a0}.option.incorrect .option-letter{color:#a33b3b;background:#f8d6d6}.answer-mark{margin-left:auto;font-size:19px;font-weight:900}.tap-explanation-hint{color:#65788a;text-align:center;margin:16px 0 0;font-size:12px}.template-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.compact-template-card{text-align:left;background:#fff;border:1px solid #e4ddcf;border-radius:13px;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;min-height:106px;padding:14px;display:flex}.template-symbol{color:#bd9451;font-size:21px}.compact-template-card strong{color:#203a52;overflow-wrap:anywhere;font-size:13px;line-height:1.35}.compact-template-card small{color:#7e8993;font-size:11px}.favourite-template{background:#f8f0df;border-color:#e5d0a7}.template-detail-page{max-width:720px}.template-detail-card{background:#fff;border:1px solid #e5dece;border-radius:18px;margin:20px 0;padding:clamp(22px,5vw,37px);box-shadow:0 8px 24px #152e490a}.template-detail-top{justify-content:space-between;align-items:center;display:flex}.heart-button{color:#b28c52;background:#fff;border:1px solid #e4d8c4;border-radius:9px;padding:6px 11px;font-size:24px;line-height:1}.heart-button.hearted{color:#cf5162;background:#fff0f2;border-color:#eabec4}.template-detail-card h1{margin:24px 0;font-size:clamp(27px,5vw,37px)}.template-points{border-top:1px solid #e9e3d8;gap:18px;padding-top:17px;display:grid}.template-point{color:#34485a;gap:13px;font-size:15px;line-height:1.65;display:flex}.template-point-arrow{color:#b68d4d;font-size:20px;line-height:1.3}.template-navigation{border-top:1px solid #e9e3d8;justify-content:space-between;align-items:center;margin-top:35px;padding-top:22px;display:flex}.round-arrow{color:#193650;background:#fff;border:1px solid #d9d3c6;border-radius:50%;width:44px;height:44px;font-size:20px}.saved-row{background:#fff;border:1px solid #e5dfd3;border-radius:12px;justify-content:space-between;align-items:center;gap:15px;margin:10px 0;padding:17px;display:flex}.saved-row strong{color:#243b50}.saved-row p,.saved-row small{color:#84909a;font-size:11px}.auth-page,.payment-page{text-align:center;max-width:540px}.auth-icon,.premium-icon{color:#dfb66e;background:#183550;border-radius:18px;place-items:center;width:70px;height:70px;margin:10px auto 25px;font-size:32px;display:grid}.auth-form{text-align:left;gap:10px;max-width:410px;margin:28px auto;display:grid}.auth-form label{font-size:13px;font-weight:700}.auth-form input{background:#fff;border:1px solid #cbd1d4;border-radius:10px;width:100%;padding:14px}.price-card{text-align:left;background:#fff;border:1px solid #dfd4be;border-radius:19px;max-width:440px;margin:26px auto;padding:26px}.premium-pill{color:#906c31;letter-spacing:1px;background:#f5e8cb;border-radius:7px;padding:6px 9px;font-size:10px;font-weight:800;display:inline-block}.price{color:#17334e;margin:18px 0 4px;font-family:Georgia,serif;font-size:44px}.price small{color:#84909a;font-family:inherit;font-size:15px}.benefit{color:#344c60;border-top:1px solid #eee8dc;padding:11px 0;font-size:14px}.text-button{color:#916c34;background:0 0;border:0;padding:12px;font-weight:700}.database-error{color:#a13232;background:#fff0ef;border:1px solid #edc0bc;border-radius:10px;max-width:1000px;margin:16px auto 0;padding:13px 17px;font-size:13px}.explanation-modal-backdrop{z-index:100;background:#0a1c2ab8;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.explanation-modal{background:#fff;border-radius:18px;width:min(100%,490px);max-height:85vh;padding:25px;overflow-y:auto;box-shadow:0 20px 60px #0004}.explanation-modal-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.explanation-status{letter-spacing:.7px;font-size:11px;font-weight:850}.correct-status{color:#277441}.incorrect-status{color:#b54141}.explanation-modal-close{color:#4b5b68;background:#f0f1f1;border:0;border-radius:9px;width:35px;height:35px}.explanation-modal h2{color:#18334e;margin:19px 0 7px;font-family:Georgia,serif;font-size:26px}.explanation-modal-option{color:#526475;font-weight:700;line-height:1.5}.explanation-modal-text{color:#344c5d;background:#f7f6f1;border-left:3px solid #c49b57;border-radius:8px;margin-top:17px;padding:16px;line-height:1.65}.footer{color:#b6c1cb;letter-spacing:1px;background:#11263c;justify-content:space-between;gap:10px;padding:19px 25px;font-size:10px;display:flex}@media (width<=650px){.topbar{height:68px;padding:0 16px}.brand-mark{width:36px;height:36px}.brand-mark svg{width:36px}.brand strong{font-size:18px}.brand small{letter-spacing:1.3px;font-size:8px}.page{padding:26px 16px 48px}.welcome{padding-top:40px}.hero-icon{width:90px;height:90px}.feature-row{gap:7px}.feature-row>div{padding:12px 5px}.feature-row strong{font-size:15px}.feature-row span{font-size:10px}.study-nav{gap:6px;margin:19px 0 24px}.study-nav-item{flex-direction:column;gap:4px;padding:10px 3px;font-size:9px;line-height:1.2}.study-nav-item span{font-size:18px}.chapter-grid{gap:10px}.chapter-card{gap:10px;min-height:151px;padding:13px}.chapter-card strong{font-size:13px}.chapter-number{font-size:22px}.chapter-meta{font-size:10px}.free-tag{bottom:10px;right:10px}.guest-banner{gap:9px;padding:13px}.guest-banner button{padding:10px 9px;font-size:11px}.question-card{padding:18px}.option{gap:10px;padding:12px;font-size:13px}.option-letter{width:29px;height:29px}.compact-template-card{min-height:100px;padding:12px}.compact-template-card strong{font-size:12px}.footer{letter-spacing:.4px;padding:16px;font-size:8px}.quiz-heading h1{font-size:25px}}@media (width<=370px){.study-nav-item{font-size:8px}.brand strong{font-size:16px}.chapter-card{min-height:165px}.footer span:last-child{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
