main:has(>.paaf-auth-page),main:has(>.dashboard-bar){max-width:none;padding:0 0 60px}
.paaf-auth-page{padding:64px 22px 24px;max-width:600px;margin:auto}
.paaf-auth-brand{display:block;width:285px;max-width:90%;height:92px;object-fit:contain;margin:0 auto 28px}
.paaf-auth-page .join.register{display:block;margin:0;padding:34px 38px;background:#fff;border:1px solid #d8dfe9;border-radius:18px;box-shadow:0 9px 20px rgba(22,43,77,.08)}
.paaf-auth-page .auth-form{width:100%;max-width:none;margin:0}
.auth-gold-rule{display:block;width:52px;height:3px;background:#c8a441;margin-bottom:24px}
.paaf-auth-page h1{font:700 34px/1.2 Georgia,serif;color:#1b315c;margin:0 0 12px}
.paaf-auth-page .auth-form>p{color:#5b6f8a;margin-bottom:26px;font-size:15px}
.paaf-auth-page label{display:block;color:#1b315c;font-size:15px;font-weight:700;margin:20px 0 8px}
.paaf-auth-page input:not([type=checkbox]){display:block;width:100%;padding:14px 16px;border:1px solid #b7c5d7;border-radius:10px;min-height:52px;background:#fff;color:#142e40;box-sizing:border-box}
.paaf-auth-page .auth-button{display:flex;min-height:52px;width:100%;background:#1c315d;border-radius:10px;color:#fff;margin-top:26px}
.paaf-auth-page .auth-alternative{text-align:center;margin:18px 0 0!important}
.paaf-auth-page .auth-alternative a{color:#856313;text-decoration:underline;text-underline-offset:3px}
.paaf-auth-page .legal-agreement{display:flex;align-items:flex-start;gap:10px;font-weight:400}
.paaf-auth-page .legal-agreement input{width:20px;flex:none;margin:3px 0}
.auth-back{text-align:center;margin:28px 0;color:#526675}
.password-control{display:flex;align-items:center;gap:8px}.password-control input{min-width:0;flex:1}.password-control button{border:1px solid #b7c5d7;background:#f4f6fa;border-radius:7px;padding:8px;color:#1b315c;font-size:12px;min-height:44px}
.dashboard-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px max(24px,calc((100% - 1170px)/2));background:#1c315d;color:#fff}
.dashboard-bar>strong{display:flex;align-items:center;gap:14px;font:700 23px Georgia,serif}.dashboard-bar svg{width:25px;height:25px;flex:none}.dashboard-bar>div{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.dashboard-bar form{margin:0}.dashboard-bar a,.dashboard-bar button{padding:8px 14px;border:1px solid #c6a441;border-radius:8px;color:#ecd077;background:#ffffff12;font:inherit}
.dashboard-content{max-width:1250px;margin:auto;padding:58px 40px 0}.dashboard-content h1{font-size:clamp(30px,4vw,46px);margin:0 0 10px;color:#1c315d;line-height:1.25}.dashboard-content .dashboard-intro{margin:0 0 42px;color:#5b6f8a}
.dashboard-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.dashboard-card{display:flex;align-items:center;gap:20px;min-height:126px;padding:26px;background:#fff;border:1px solid #d2dce8;border-radius:16px}.dashboard-card:hover{background:#f0f4f9;border-color:#aabbd0}.dashboard-card>span:last-child{min-width:0}.dashboard-card strong{display:block;color:#1c315d;margin-bottom:7px}.dashboard-card span span{display:block;color:#5b6f8a;font-size:14px}.dashboard-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:13px;background:#edf0f5;flex:none}.dashboard-icon svg{width:29px;height:29px;color:#1c315d}.dashboard-back{text-align:center;margin:48px 0 0;color:#526675}
@media(max-width:700px){.paaf-auth-page{padding:32px 16px 20px}.paaf-auth-page .join.register{padding:26px 22px}.dashboard-bar{flex-direction:column;align-items:flex-start;padding:20px}.dashboard-content{padding:36px 20px 0}.dashboard-cards{grid-template-columns:1fr;gap:16px}.dashboard-card{padding:22px;gap:15px}.dashboard-bar>div>span{overflow-wrap:anywhere}.paaf-auth-brand{height:75px;margin-bottom:20px}}

/* Compact sign-in and registration forms. Keep controls comfortably tappable. */
.paaf-auth-page{padding-top:24px;padding-bottom:12px}
.paaf-auth-brand{height:64px;width:250px;margin-bottom:14px}
.paaf-auth-page .join.register{padding:24px 30px}
.paaf-auth-page .auth-gold-rule{margin-bottom:14px}
.paaf-auth-page h1{font-size:30px;margin-bottom:8px}
.paaf-auth-page .auth-form>p{font-size:14px;margin-bottom:14px}
.paaf-auth-page label{margin:12px 0 6px;font-size:14px}
.paaf-auth-page input:not([type=checkbox]){min-height:44px;padding:10px 13px}
.paaf-auth-page .auth-button{min-height:44px;padding:10px 18px;margin-top:18px;font-size:15px}
.paaf-auth-page .auth-alternative{margin-top:12px!important;font-size:14px}
.paaf-auth-page .auth-back{font-size:12px;margin:16px 0 0;line-height:1.4}
.paaf-auth-page .auth-back a{font-size:inherit}
.paaf-auth-page .legal-registration-note{font-size:12px!important;line-height:1.5}
.paaf-auth-page .password-control button{min-height:44px;padding:6px 9px}
@media(max-width:700px){.paaf-auth-page{padding-top:18px}.paaf-auth-page .join.register{padding:22px 20px}.paaf-auth-brand{height:54px;margin-bottom:12px}}


/* Balanced two-column welcome dashboard, with footer at viewport bottom. */
body:has(.dashboard-bar){min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
body:has(.dashboard-bar)>header,body:has(.dashboard-bar)>footer{flex-shrink:0}
main:has(>.dashboard-bar){width:100%;flex:1;padding-bottom:30px}
.dashboard-bar{padding-top:14px;padding-bottom:14px}
.dashboard-bar>strong{font-size:21px}
.dashboard-bar a,.dashboard-bar button{padding:7px 13px}
.dashboard-content{max-width:1190px;padding-top:36px}
.dashboard-content .auth-gold-rule{margin-bottom:18px;width:44px}
.dashboard-content h1{font-size:clamp(28px,3.2vw,38px);margin-bottom:10px}
.dashboard-content .dashboard-intro{margin-bottom:30px;font-size:15px}
.dashboard-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.dashboard-card{min-height:96px;padding:20px 24px;gap:18px;border-radius:14px}
.dashboard-icon{width:50px;height:50px;border-radius:11px}
.dashboard-icon svg{width:26px;height:26px}
.dashboard-card strong{font-size:16px;line-height:1.4;margin-bottom:6px}
.dashboard-card span span{font-size:14px;line-height:1.5}
.dashboard-back{margin-top:32px;font-size:13px}
@media(max-width:700px){.dashboard-bar{padding:14px 20px;gap:10px}.dashboard-content{padding-top:26px}.dashboard-cards{grid-template-columns:1fr;gap:14px}.dashboard-card{min-height:90px;padding:18px;gap:14px}}
