:root{--navy:#142f3e;--gold:#c2a15f;--ink:#223e4d;--cream:#f7f7f2;--line:#dfe6e3;--green:#3e7164}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:14px 'DM Sans',sans-serif}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500}button,input,select,textarea{font:inherit}a{color:inherit}button,a.button{cursor:pointer;border:1px solid var(--line);border-radius:7px;padding:11px 16px;background:#fff;color:var(--ink);text-decoration:none;display:inline-block;transition:.2s}button:hover,a.button:hover{box-shadow:0 4px 14px #122d3c12;transform:translateY(-1px)}button:disabled{opacity:.5;cursor:wait}.primary,a.primary{background:var(--navy);color:white;border-color:var(--navy)}.gold{background:linear-gradient(120deg,#dcc68d,#b89853)!important;color:#182e35!important;border-color:#d0b377!important}input:not([type=checkbox]),textarea,select{padding:10px;border:1px solid #cfdcd6;border-radius:6px;width:100%;background:white;color:var(--ink)}textarea{min-height:90px;resize:vertical}input[type=checkbox]{accent-color:var(--green);width:18px;height:18px}label{font-size:12px;display:block;margin:12px 0 5px}.check{display:flex;align-items:center;gap:8px}.muted{color:#788b8a;font-size:12px;line-height:1.7}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.2px;color:#aa8c4b}.siteheader{background:var(--navy);color:white;padding:20px 34px;display:flex;align-items:center;gap:30px;position:relative;z-index:2}.logo{font:28px Georgia;letter-spacing:2px;text-decoration:none;white-space:nowrap}.logo b{color:#dac48b}.brandtag{font-size:9px;letter-spacing:2px;display:block;margin:6px 0 0 35px;color:#a9bcbc}.nav{display:flex;gap:4px;flex:1;justify-content:center}.nav button{color:#cbd7d8;background:transparent;border:0;font-size:12px;padding:10px}.nav button.active{color:#ecd69c;background:#ffffff0c}.headright{display:flex;gap:9px;align-items:center}.headright a{font-size:12px}.headright .button{background:transparent;border-color:#ffffff25;color:white}.hamburger{display:none;color:white;background:transparent;border-color:#ffffff20}.ticker{background:#eae3cd;color:#5f573d;overflow:hidden;padding:9px;white-space:nowrap;font-size:11px}.ticker a{display:inline-block;animation:ticker 32s linear infinite;text-decoration:none}.ticker:hover a,.ticker:focus-within a{animation-play-state:paused}@keyframes ticker{from{transform:translateX(90vw)}to{transform:translateX(-100%)}}@media(prefers-reduced-motion:reduce){.ticker a{animation:none;transform:none}}.shell{max-width:1550px;margin:auto;display:grid;grid-template-columns:205px minmax(0,1fr) 205px;gap:23px;padding:27px 28px}.side .card{padding:20px;margin-bottom:18px}.card{border:1px solid var(--line);background:white;border-radius:12px;padding:24px}.side h3{font-size:17px;margin:10px 0}.side button,.side .button{width:100%;margin-top:10px;font-size:12px;text-align:center}.sideicon{font-size:25px;color:var(--gold)}.sidelink{border:0;background:transparent;display:block;text-align:left;margin:10px 0;padding:7px 0;color:#617a7d;font-size:12px;cursor:pointer}.content{min-width:0}.hero{position:relative;background:radial-gradient(ellipse at 78% 10%,#4f6d65aa,transparent 55%),linear-gradient(130deg,#122d3b,#244c4b);border-radius:16px;padding:42px 28px 0;color:white;text-align:center;overflow:hidden;border:1px solid #315353;box-shadow:0 10px 40px #142d3b15}.hero:before{content:'';position:absolute;inset:12px;border:1px solid #c8aa6340;border-radius:10px;pointer-events:none}.hero .eyebrow{color:#e2c888}.hero h1{font-size:clamp(30px,3.7vw,52px);line-height:1.16;margin:17px auto;max-width:660px;white-space:pre-line}.hero p{color:#c0d3ce;max-width:510px;line-height:1.8;margin:0 auto 24px;font-size:13px}.herobuttons{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;position:relative}.hero .secondary{background:#ffffff09;border-color:#ffffff30;color:white}.hero .subline{font-size:10px;letter-spacing:.8px;margin:14px 0 24px;color:#9dbab2}.boardpreview{position:relative;margin:0 auto;width:90%;background:#fffdf5;color:#193d4e;border-radius:10px 10px 0 0;padding:14px 24px 22px;text-align:left;box-shadow:0 0 40px #0002;transform:rotate(-1deg);border:1px solid #d6c797}.previewhead{display:flex;align-items:center;font-size:8px;letter-spacing:1px;border-bottom:1px solid #e4e5d7;padding-bottom:9px;gap:4px}.previewdot{width:6px;height:6px;background:#bd9c5e;border-radius:50%}.boardpreview h3{font:29px 'Caveat',cursive;margin:13px 0;color:#326e5f}.previewrow{display:flex;align-items:center;gap:20px;justify-content:space-around}.formula{background:#f6e4a1;padding:12px 20px;border-radius:5px;font:35px 'Caveat';transform:rotate(-3deg)}.previewcircle{width:90px;height:90px;border:2px solid #be9153;border-radius:50%;position:relative}.previewcircle:after{content:'r = 5';position:absolute;left:45%;top:30%;width:50%;border-bottom:1px dashed #be9153;font:18px Caveat;color:#996a35}.boardpreview .answer{font:25px Caveat;color:#244f63}.featurestrip{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0 30px}.featurestrip .card{padding:17px;text-align:center;font-size:11px}.featurestrip strong{display:block;font-size:13px;margin:8px 0 5px}.sectionheading{text-align:center;margin:30px 0 20px}.sectionheading h2{font-size:29px;margin:10px 0}.plans{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.plan{position:relative;padding:24px 16px;display:flex;flex-direction:column;text-align:center}.plan.featured{border-color:var(--gold);background:linear-gradient(#fffdf6,#fff);box-shadow:0 6px 22px #b3974a10}.plan .ribbon{position:absolute;top:-10px;left:50%;transform:translateX(-50%);background:var(--gold);padding:4px 9px;border-radius:4px;white-space:nowrap;font-size:8px;letter-spacing:1px;color:white}.plan h3{font-size:21px;margin:0 0 7px}.price{font:31px Georgia;margin:18px 0 4px}.plan small{font-size:9px;color:#92a09a}.plan ul{list-style:none;text-align:left;padding:12px 0;margin:0;flex:1}.plan li{font-size:10px;line-height:1.7;padding:6px 0;border-bottom:1px solid #edf1ec}.plan li:before{content:'✓ ';color:var(--green)}.plan button{font-size:11px;padding:10px 5px;margin-top:10px}.quote{background:#eeeede;text-align:center;padding:28px;border-radius:12px;margin-top:25px;font:22px Georgia;line-height:1.5}.quote small{display:block;font:9px 'DM Sans';letter-spacing:2px;color:#8e8c6c;margin-top:12px}.sitefooter{text-align:center;padding:25px;background:var(--navy);color:#b6c8c8;font-size:11px}.footerlinks{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;margin:12px}.footerlinks button{border:0;background:transparent;color:#d4dcdc;padding:3px;font-size:11px}.pageheading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:24px}.pageheading h1{font-size:31px;margin-bottom:8px}.pageheading p{margin-bottom:0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.stat{text-align:center;padding:20px 10px}.stat b{display:block;font:25px Georgia;margin-top:8px}.lessonlist{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.lessonitem h3{margin:12px 0 8px}.lessonitem .tag,.tag{font-size:9px;letter-spacing:1px;color:#9e8349;background:#f5eedf;padding:5px 8px;border-radius:4px;display:inline-block}.lessonactions{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.lessonactions button,.lessonactions a{font-size:11px;padding:8px 10px}.tablewrap{overflow:auto}.tablewrap table{border-collapse:collapse;width:100%;font-size:11px;white-space:nowrap}th,td{padding:12px 9px;border-bottom:1px solid var(--line);text-align:left}th{font-size:9px;letter-spacing:1px;color:#819393}.rowactions{display:flex;gap:6px;flex-wrap:wrap}.rowactions button{font-size:10px;padding:5px 7px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.fields .wide{grid-column:1/-1}.settingssection{margin-bottom:20px}.settingssection h2{font-size:23px}.settingssection summary{cursor:pointer;font-family:Georgia;font-size:19px;padding:10px 0}.settingssection .card{margin-top:14px}.notice{padding:14px;border:1px solid #ddcfaa;background:#fff8e8;border-radius:8px;font-size:12px;line-height:1.7;margin:15px 0}.notice.success{background:#edf5ee;border-color:#cadfcd}.empty{text-align:center;padding:40px 20px;color:#81918e}.loading{text-align:center;padding:120px 20px;font:32px Georgia;letter-spacing:3px}.loading span{display:block;font:13px 'DM Sans';letter-spacing:0;color:#7f938d;margin:20px}.toolbarline{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin:15px 0}.toolbarline select{width:auto}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;max-width:90vw;padding:14px 22px;border-radius:9px;box-shadow:0 8px 30px #0003;z-index:1000;font-size:12px}dialog{border:1px solid #d4d9c9;border-radius:14px;padding:28px;width:min(620px,94vw);max-height:90dvh;overflow:auto;color:var(--ink);box-shadow:0 30px 100px #102d3c44}dialog::backdrop{background:#132e3d99;backdrop-filter:blur(3px)}dialog h2{font-size:27px}.dialogactions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px}.receipt{border:1px solid var(--gold);padding:28px;text-align:center;background:#fffef9}.receipt h2{margin-bottom:6px}.receipt table{width:100%;border-collapse:collapse;text-align:left;font-size:11px}.receipt .seal{width:70px;height:70px;border:3px double var(--gold);border-radius:50%;display:grid;place-items:center;margin:25px auto;color:#a0803c;font:12px Georgia}.rightlabel{font-size:9px;letter-spacing:1.5px;color:#a38950}.step{display:flex;gap:10px;margin:14px 0;font-size:11px;line-height:1.6}.step b{border:1px solid #d3bd88;display:grid;place-items:center;min-width:25px;height:25px;border-radius:50%;color:#9b824e}@media(max-width:1200px){.shell{grid-template-columns:165px minmax(0,1fr) 165px;gap:14px;padding:20px 16px}.side .card{padding:15px}.plans{grid-template-columns:repeat(2,1fr)}.siteheader{gap:15px;padding:18px}.nav button{padding:8px}.brandtag{font-size:8px}.headright .username{display:none}}@media(max-width:900px){.shell{grid-template-columns:1fr}.side{display:none}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--navy);padding:14px;flex-wrap:wrap}.nav.open{display:flex}.hamburger{display:inline-block}.siteheader{justify-content:space-between}.headright{margin-left:auto}.featurestrip{gap:8px}.hero{padding-top:30px}.plans{grid-template-columns:repeat(2,1fr)}}@media(max-width:550px){.logo{font-size:23px}.brandtag{font-size:7px;margin-left:26px}.siteheader{padding:15px 12px;gap:8px}.headright{gap:5px}.headright .button{padding:8px}.hero{padding-left:15px;padding-right:15px}.hero h1{font-size:35px}.hero p{font-size:12px}.boardpreview{width:96%;padding:10px 14px}.previewcircle{width:65px;height:65px}.formula{font-size:27px;padding:12px}.boardpreview h3{font-size:23px}.boardpreview .answer{font-size:19px}.featurestrip .card{padding:10px 5px}.featurestrip strong{font-size:11px}.featurestrip .muted{font-size:10px}.plans{gap:9px}.plan{padding:20px 10px}.plan h3{font-size:20px}.plan li{font-size:10px}.grid2,.lessonlist,.fields{grid-template-columns:1fr}.fields .wide{grid-column:auto}.stats{grid-template-columns:1fr 1fr}.pageheading{align-items:flex-start}.pageheading h1{font-size:26px}.card{padding:18px}.receipt{padding:15px}dialog{padding:20px}.hero .subline{font-size:8px}}@media print{body>*:not(dialog[open]){display:none!important}dialog[open]{display:block!important;position:static;max-height:none;width:100%;border:0;box-shadow:none;margin:0;padding:0}.noprint,.dialogactions{display:none!important}.receipt{min-height:95vh}.printledger{display:block!important}.printledger .noprint{display:none!important}@page{size:A4 portrait;margin:12mm}}
.generator-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.generator-card{display:flex;align-items:center;flex-direction:column;text-align:center;padding:22px 12px;gap:12px;border:1px solid #d7dfd8;background:linear-gradient(145deg,#fff,#f4f5ec)}.generator-card strong{font-family:Georgia;font-size:18px;font-weight:400}.generator-symbol{font:33px Georgia;color:#a28240;background:#eee8d6;width:58px;height:58px;display:grid;place-items:center;border:1px solid #ded1ae;border-radius:50%}.generator-card .muted{font-size:11px;max-width:180px}.wide-dialog{width:min(1050px,96vw)}.teaching-output{min-height:0}.teaching-output table td{white-space:normal;line-height:1.7}.teaching-output.worksheet .answer{color:transparent!important;position:relative}.teaching-output.worksheet td.answer:after{content:'________________';color:#8c9992;position:absolute;left:8px;top:12px;font-size:10px}.teaching-output.worksheet th.answer{color:inherit!important}.nav button{padding:9px 7px;font-size:11px}@media(max-width:600px){.generator-grid{grid-template-columns:1fr 1fr}.generator-card{padding:18px 8px}.generator-card strong{font-size:16px}}@media print{dialog[open] h2:first-child{display:none}.teaching-output{border:1px solid #c2a15f;padding:15px}.teaching-output h2{display:block!important}#manualRowEditor{display:none!important}.teaching-output table{break-inside:auto}.teaching-output tr{break-inside:avoid}.teaching-output thead{display:table-header-group}}
.certificate-dialog{width:min(1150px,97vw);background:#f5f5ef}.entity-certificate{position:relative;background:#fffefa;color:#283d47;border:1px solid #bc9a4d;padding:9px;box-shadow:0 4px 30px #394c3910;margin:12px auto;text-align:center;width:100%;overflow:hidden}.certificate-inner{position:relative;border:1px solid #dcc894;padding:25px 34px 20px;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.certificate-inner:before{content:'✦';position:absolute;inset:15% 0 auto;font-size:350px;line-height:1;color:#cdb66e0b;pointer-events:none}.cert-landscape{aspect-ratio:1.414}.cert-portrait{aspect-ratio:.707;max-width:740px}.cert-portrait .certificate-inner{padding:48px 30px;justify-content:space-around}.cert-brand{font:25px Georgia;letter-spacing:3px;color:#173747;position:relative}.cert-brand span{color:#b49147;padding:0 10px}.cert-register{font-size:8px;letter-spacing:3px;color:#8e825e;margin:8px 0 15px}.cert-heading{font:clamp(25px,3.6vw,43px) 'Playfair Display',Georgia;margin:4px 0 7px;color:#9f7c35}.cert-subtitle{font-size:11px;letter-spacing:2px;text-transform:uppercase;margin-bottom:16px}.cert-intro{font-size:12px;line-height:1.7;margin:8px 0 6px}.cert-entity{font:clamp(23px,3.1vw,37px) 'Playfair Display',Georgia;max-width:94%;overflow-wrap:anywhere;margin:8px 0 14px;color:#183c4b}.cert-owner-label{font-size:8px;letter-spacing:2px;color:#978149;margin:0 0 7px}.cert-owner{font:22px Georgia;margin:0 0 14px;overflow-wrap:anywhere;max-width:90%}.cert-statement{font-size:10px;line-height:1.8;max-width:90%;margin-bottom:17px}.cert-details{display:flex;justify-content:center;gap:35px;width:100%;padding:14px 0;border-top:1px solid #dfd0a5;border-bottom:1px solid #dfd0a5}.cert-details>div{display:flex;flex-direction:column;gap:7px;min-width:0}.cert-details span{font-size:7px;letter-spacing:1.5px;color:#8a7a53}.cert-details strong{font:15px Georgia}.cert-bottom{display:flex;align-items:center;justify-content:center;gap:90px;width:100%;margin:20px 0 14px}.cert-seal{width:90px;height:90px;border:4px double #b59343;border-radius:50%;outline:1px solid #d5bd7a;outline-offset:4px;background:radial-gradient(#faf1cf,#dcc68b55);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#a08034}.cert-seal>span{font-size:23px}.cert-seal b{font-size:8px;letter-spacing:1px}.cert-seal small{font-size:8px;max-width:70px;overflow-wrap:anywhere}.cert-signature{width:260px;display:flex;flex-direction:column;align-items:center;gap:5px}.cert-signature>img{height:60px;max-width:240px;object-fit:contain}.typed-signature{font:35px 'Caveat',cursive;color:#193d50;min-height:50px;overflow-wrap:anywhere;max-width:100%}.cert-sign-line{height:1px;background:#bba25e;width:100%;margin:3px 0 5px}.cert-signature strong{font:13px Georgia}.cert-signature small{font-size:9px}.cert-authenticity{font-size:7px;line-height:1.8;color:#7c806e;overflow-wrap:anywhere;width:100%;margin-top:5px}.cert-state{font-size:9px;letter-spacing:1px;padding:6px 12px;background:#f6e8cf;border:1px solid #dec28b;margin:2px 0}.pending-signature{min-height:50px;display:grid;place-items:center;font:14px Georgia;color:#9a947e}#agentSignatureCanvas{display:block;width:100%;height:150px;background:#fffef8;border:1px dashed #bca360;border-radius:7px;touch-action:none}.certificate-verifier{max-width:720px;margin:60px auto;padding:30px;text-align:center}.verify-status{padding:15px;border-radius:8px;font-size:19px;font-family:Georgia}.verify-issued{background:#e6f1e7;color:#29583c}.verify-revoked{background:#fae7df;color:#8c3831}.verify-draft{background:#fff2d7;color:#8c6c2c}@media(max-width:650px){.certificate-dialog{padding:12px}.entity-certificate{aspect-ratio:auto}.certificate-inner{padding:20px 12px}.cert-brand{font-size:21px}.cert-heading{font-size:28px}.cert-details{gap:15px;flex-wrap:wrap}.cert-bottom{gap:30px}.cert-signature{width:190px}.cert-seal{width:70px;height:70px;flex-shrink:0}.cert-entity{font-size:26px}.cert-owner{font-size:20px}.cert-portrait{aspect-ratio:auto}}@media print{.certificate-dialog{width:100%!important;max-width:none!important;background:white!important}.entity-certificate{width:100%;margin:0;box-shadow:none;break-inside:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}.entity-certificate.cert-landscape{height:187mm;aspect-ratio:auto}.entity-certificate.cert-portrait{height:274mm;max-width:none;aspect-ratio:auto}.certificate-inner{padding:17px 26px;box-sizing:border-box;height:100%;min-height:0;justify-content:space-between}.cert-heading{font-size:36px}.cert-entity{font-size:30px;margin:5px 0}.cert-bottom{margin:12px 0}.cert-register{margin-bottom:8px}.cert-statement{margin-bottom:10px}.cert-intro{font-size:11px}.cert-authenticity{font-size:6.5px}}
@media screen and (min-width:651px){.entity-certificate.cert-landscape{aspect-ratio:auto;min-height:670px}.entity-certificate.cert-landscape .certificate-inner{min-height:648px}}
