/* Public pages share the Library's typography without loading account workspace modules. */
.public-page{--teal:var(--theme-primary,#176957);--white:var(--theme-control-bg,#fff);--night:var(--theme-dark-panel,#132b35);--shadow:0 2px 3px var(--theme-shadow-soft,#17313c05);color:var(--ink);background:var(--paper)}
.public-page main{padding-top:38px;max-width:1120px}.public-page .prose{max-width:850px;margin:0 auto}.public-page .panel{background:var(--white,#fff);border:1px solid var(--line);border-radius:12px;padding:26px;margin-bottom:22px}.public-page .prose h1{font-size:clamp(2rem,4vw,3rem);margin:12px 0 24px}.public-page .prose h2{margin:30px 0 14px;font-size:1.3rem}.public-page .prose p{max-width:74ch}.public-page .actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.public-page .prose>.actions{margin:20px 0}.public-page .page-head h1{font-size:clamp(2rem,4vw,3rem);max-width:790px;margin:12px 0 15px}.public-page .page-head{margin-bottom:26px}.public-page .subtle{color:var(--muted);font-size:1.08rem}.public-page .auth-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:22px;margin:0 0 24px}.public-page .auth-intro{padding:28px;border-radius:12px;background:var(--theme-dark-panel,#132b35);color:var(--theme-on-dark,#eef5f0)}.public-page .auth-intro h2{color:inherit;font-size:1.55rem;margin:0 0 20px}.public-page .auth-intro p{color:var(--theme-on-dark,#d5e2dd)}.public-page .auth-intro .hint{font-size:.85rem;margin:20px 0 0}.public-page .auth-intro a{color:var(--theme-on-dark,#fff)}.public-page .auth-intro .button{background:transparent;border:1px solid var(--theme-control-border,#6b8c81)}.public-page .auth-layout>.panel{margin:0}.public-page [data-home-intro]>.panel{max-width:none}.public-page .hint{color:var(--muted);font-size:.85rem}.public-page .section-line{border-top:1px solid var(--line);margin:22px 0}.public-page .library-header .public-dice-button{font:inherit;font-size:.85rem;border:1px solid var(--theme-control-border,#61757c);background:transparent;color:var(--theme-on-dark,#fff);padding:8px 12px;border-radius:6px;white-space:nowrap}.public-page .library-header button:focus-visible{outline:3px solid var(--theme-ring,#e4b95f);outline-offset:3px}.public-page .public-install{max-width:1072px;margin:10px auto;text-align:right}.public-page .public-install button{font-size:.85rem}.public-status{max-width:1072px;margin:18px auto;padding:12px 18px;background:var(--theme-warm-surface,#fff0d0);border:1px solid var(--theme-accent-border,#c8a766);border-radius:8px;font-size:.9rem}.public-status>div{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.public-status[hidden],.public-status [hidden]{display:none}.public-status span{flex:1;min-width:180px}.public-page .form-error:empty{display:none}.public-page #public-account-dialog{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px}.public-page #public-account-dialog .dialog-top{align-items:center;gap:15px}.public-page #public-account-dialog .dialog-top h2{margin:0;font-size:1.3rem}.public-page #public-account-dialog .form-grid{margin-top:22px}.public-page .library-footer{margin-top:35px}
/* The account introduction stays dark in every mode; its primary action uses
   a complete highlight/text pair rather than the page's light-mode labels. */
.public-page .auth-intro .button.primary{background:var(--theme-dark-accent,#bbe3e7);color:var(--theme-dark-ink,#0e1a1b);border-color:var(--theme-dark-accent,#bbe3e7)}
.public-page .auth-intro .button.primary:is(:hover,:active){background:var(--theme-dark-accent-hover,#a1d9e2);color:var(--theme-dark-ink,#0e1a1b)}
@media(max-width:900px){.public-page .library-header{flex-wrap:wrap}.public-page .library-header nav{justify-content:flex-start}.public-page .public-install{margin:12px 24px}.public-page .auth-layout{grid-template-columns:1fr}.public-status{margin:18px 24px}}
@media(max-width:600px){.public-page main{padding-top:25px}.public-page .panel,.public-page .auth-intro{padding:22px}.public-page .library-header nav{gap:8px 16px}.public-page .library-header .open-app{margin-left:0}.public-page .library-header nav a:first-child{max-width:none}.public-page .prose>.actions{gap:12px 20px}.public-page .public-install{margin:12px 20px}.public-status{margin:12px 20px}.public-page #public-account-dialog .form-grid{grid-template-columns:1fr}.public-page #public-account-dialog .form-grid>.full{grid-column:auto}}
@media print{.public-page .actions,.public-install,.public-status{display:none}.public-page .panel{border:0;padding:0}.public-page main{padding-top:0}}

.campaign-account-offer{overflow-wrap:anywhere}.campaign-account-offer h1{font-size:clamp(1.8rem,3.5vw,2.7rem);line-height:1.2;margin:12px 0 18px}.campaign-account-contents{padding-left:20px;line-height:1.65;margin:18px 0}.campaign-account-contents li{margin:6px 0}.public-page .auth-intro h1{color:inherit;font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.2}.public-page .auth-intro .campaign-account-contents{color:inherit}.public-page .auth-intro .campaign-account-offer .hint{color:inherit}.campaign-account-gateway{max-width:760px;margin:0 auto}.campaign-account-gateway>.actions{margin:18px 0}.auth-referral{grid-column:1/-1;border-top:1px solid var(--line);padding-top:12px;margin:12px 0}.auth-referral>summary,.auth-account-options>summary{cursor:pointer;font-weight:600;min-height:44px;display:list-item;align-content:center}.auth-referral .field{margin-top:12px}.auth-account-options{border-top:1px solid var(--line);margin-top:20px;padding-top:10px}.auth-account-options .actions{margin:12px 0}.auth-account-options .hint{line-height:1.6}.campaign-account-gateway :focus-visible,.auth-referral :focus-visible,.auth-account-options :focus-visible{outline:3px solid var(--theme-ring,#84621b);outline-offset:3px}
