.site-header,.site-footer{font-family:'DM Sans',Arial,sans-serif;line-height:1.6;letter-spacing:normal;box-sizing:border-box}
.site-header{background:#fff;border-bottom:1px solid #dbe4f0;color:#172554}
.site-header-inner{max-width:1540px;padding:22px 32px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}
.site-brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none!important;color:#172554;font-family:'Manrope',Arial,sans-serif;font-size:22px;font-weight:800;line-height:1.25;white-space:nowrap}
.site-brand small{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:10px;font-weight:600;letter-spacing:3px;color:#1d4ed8;margin-top:4px}
.site-brand-icon{width:42px;height:42px;border-radius:12px 12px 12px 3px;background:#dbeafe;color:#1d4ed8;display:grid;place-items:center;flex-shrink:0}
.site-brand-icon .icon{width:25px;height:25px}
.site-navigation{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap}
.site-navigation a{color:#475569;font-size:14px;font-weight:600;min-height:42px;display:flex;align-items:center;border-bottom:2px solid transparent;text-decoration:none}
.site-navigation a:hover,.site-navigation a[aria-current=page]{color:#1d4ed8;border-bottom-color:#2455ed}
.site-header-action{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:44px;padding:10px 18px;border-radius:8px;background:linear-gradient(110deg,#2455ed,#0284c7);color:white;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
.site-header-action:hover{filter:brightness(.95)}
.site-footer{display:block!important;background:#fff;border-top:1px solid #dbe4f0;margin:0;padding:44px 32px 20px;color:#475569;font-size:14px}
.site-footer-grid{max-width:1476px;margin:auto;display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:36px}
.site-footer p{font-size:14px!important;line-height:1.8;color:#475569;margin:18px 0 12px}
.site-footer h2{font-family:'Manrope',Arial,sans-serif;color:#172554;font-weight:750;font-size:15px;letter-spacing:0;margin:0 0 15px;line-height:1.6}
.site-footer nav>a{display:block;min-height:36px;padding:5px 0;color:#475569;text-decoration:none;font-size:13px}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px;color:#1d4ed8}
.site-footer .site-parent-link,.site-footer-contact>a{color:#1d4ed8;font-weight:600;font-size:13px;overflow-wrap:anywhere}
.site-footer .site-support-link{display:flex;width:fit-content;align-items:center;gap:20px;margin-top:16px;padding:8px 14px;border:1px solid #bfdbfe;border-radius:8px;min-height:40px;background:#eff6ff;text-decoration:none}
.site-footer-bottom{max-width:1476px;margin:30px auto 0;padding-top:20px;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:#64748b;font-size:12px}
.site-footer-bottom a{color:#1d4ed8}
.skip-content{position:fixed;left:16px;top:-100px;background:#172554;color:#fff;padding:12px 20px;z-index:1000;border-radius:8px}.skip-content:focus{top:12px}
.finance-auth .auth-shell{min-height:0;padding:32px 24px;align-items:stretch}
.finance-auth .story-content{margin:36px auto}
.finance-auth .login-panel{padding-top:14px;padding-bottom:14px}
.finance-auth .story{justify-content:center}
.finance-auth .story-footer{margin-top:auto;padding-top:20px}
.public-site .public-main{padding-top:54px;padding-bottom:64px}
.information-body details{border:1px solid #dbe4f0;border-radius:10px;padding:0 18px;margin-top:12px;background:#f8faff}
.information-body summary{padding:16px 0;cursor:pointer;font-size:15px;font-weight:600;color:#172554;line-height:1.6}
.information-body details p{margin-top:0}
.workspace-site-footer{margin-top:30px}
main>.site-footer{padding:32px 0 22px;background:transparent}
main>.site-footer .site-footer-grid{gap:28px}
main>.site-footer .site-footer-bottom{font-size:12px}
@media(max-width:1100px){.site-header-inner{flex-wrap:wrap;gap:14px 24px;padding:18px 24px}.site-navigation{order:3;width:100%;gap:25px}.site-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.site-header-action{margin-left:auto}}
@media(max-width:600px){.site-header-inner{padding:16px 18px;gap:12px}.site-brand{font-size:18px}.site-brand-icon{width:36px;height:36px}.site-brand small{font-size:9px}.site-header-action{padding:10px 12px;font-size:12px;gap:7px}.site-navigation{justify-content:flex-start;gap:2px 18px}.site-navigation a{font-size:13px;min-height:36px}.site-footer{padding:30px 22px 22px}.site-footer-grid{gap:28px 20px}.site-footer-intro,.site-footer-contact{grid-column:1/-1}.site-footer h2{font-size:14px}.site-footer nav>a{font-size:13px;min-height:40px}.site-footer-bottom{flex-direction:column;gap:8px;margin-top:24px}.finance-auth .auth-shell{padding:14px 12px 24px}.finance-auth .story-content{margin:0}.finance-auth .story-footer{display:none}.finance-auth .login-panel{padding:24px 0 0}.public-site .public-main{padding:28px 18px 40px}.site-footer .site-brand{font-size:21px}main>.site-footer .site-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}}
@media(prefers-reduced-motion:reduce){.site-header-action{transition:none}}

/* Desktop sign-in uses the available height without clipping content. */
@media(min-width:1101px) {
    .auth-login { min-height:100svh; display:flex; flex-direction:column; }
    .auth-login .site-header-inner { padding-top:12px; padding-bottom:12px; }
    .auth-login .auth-shell { width:100%; max-width:1540px; flex:1; padding:20px 32px; gap:40px; }
    .auth-login .story { padding:28px 40px; }
    .auth-login .story-content { margin:0 auto; }
    .auth-login h1 { font-size:46px; margin:16px 0; }
    .auth-login .story-description { font-size:15px; line-height:1.7; }
    .auth-login .preview { margin-top:22px; padding:18px; }
    .auth-login .preview-summary { margin-top:14px; }
    .auth-login .chart { height:80px; margin-top:14px; }
    .auth-login .goal-preview { margin-top:14px; padding-top:12px; }
    .auth-login .story-features { margin-top:18px; }
    .auth-login .story-footer { margin-top:22px; padding-top:0; }
    .auth-login .login-panel { padding:0; }
    .auth-login .form-container { max-width:520px; padding:26px 30px; }
    .auth-login .welcome-symbol { display:none; }
    .auth-login .form-eyebrow { margin-bottom:8px; }
    .auth-login h2 { font-size:32px; }
    .auth-login .form-description { font-size:15px; line-height:1.6; margin-top:10px; }
    .auth-login form { margin-top:22px; }
    .auth-login .input-wrap { margin-bottom:16px; }
    .auth-login input:not([type='checkbox']) { height:48px; }
    .auth-login .remember { margin:0 0 14px; }
    .auth-login .submit-button { min-height:48px; }
    .auth-login .auth-switch { margin-top:12px; }
    .auth-login .divider { margin:14px 0 10px; }
    .auth-login .download-link { padding:12px 14px; }
    .auth-login .privacy-note { margin-top:14px; }
    .auth-login .site-footer { padding:24px 32px 14px; }
    .auth-login .site-footer-grid { gap:28px; }
    .auth-login .site-footer h2 { margin-bottom:8px; }
    .auth-login .site-footer nav>a { min-height:29px; padding:3px 0; }
    .auth-login .site-footer p { margin:10px 0; font-size:13px!important; line-height:1.6; }
    .auth-login .site-support-link { margin-top:10px; min-height:32px; padding:4px 12px; }
    .auth-login .site-footer-bottom { margin-top:16px; padding-top:12px; }
}
@media(min-width:1101px) and (max-height:900px) {
    .auth-login .auth-shell { padding-top:14px; padding-bottom:14px; }
    .auth-login .story { padding:22px 32px; }
    .auth-login h1 { font-size:38px; line-height:1.1; margin:12px 0; }
    .auth-login .story-description { font-size:14px; }
    .auth-login .preview { margin-top:16px; padding:14px 18px; }
    .auth-login .preview-summary strong { font-size:20px; }
    .auth-login .chart { height:58px; margin-top:10px; }
    .auth-login .story-footer { display:none; }
    .auth-login .form-container { padding:20px 28px; }
    .auth-login h2 { font-size:29px; }
    .auth-login .form-description { font-size:14px; margin-top:8px; }
    .auth-login form { margin-top:16px; }
    .auth-login .field { margin-bottom:6px; font-size:14px; }
    .auth-login .field-heading > a { min-height:24px; }
    .auth-login .input-wrap { margin-bottom:12px; }
    .auth-login input:not([type='checkbox']) { height:44px; }
    .auth-login .remember { min-height:26px; margin-bottom:10px; }
    .auth-login .submit-button { min-height:44px; padding:10px 16px; }
    .auth-login .auth-switch { margin-top:6px; }
    .auth-login .divider { margin:8px 0; }
    .auth-login .download-link { padding:8px 12px; }
    .auth-login .privacy-note { margin-top:10px; font-size:11px; }
    .auth-login .site-footer { padding-top:14px; padding-bottom:12px; }
    .auth-login .site-footer-grid { grid-template-columns:1fr 1.3fr 1fr 1.1fr; gap:24px; }
    .auth-login .site-footer-intro p,.auth-login .site-footer-contact p { display:none; }
    .auth-login .site-footer .site-parent-link { display:inline-block; margin-top:10px; }
    .auth-login .site-footer nav { display:grid; grid-template-columns:1fr 1fr; column-gap:16px; align-content:start; }
    .auth-login .site-footer nav h2 { grid-column:1/-1; }
    .auth-login .site-footer nav>a { font-size:12px; min-height:26px; }
    .auth-login .site-footer-bottom { margin-top:12px; padding-top:10px; }
}
@media(min-width:1101px) {
    .auth-login .app-download { display:none; }
    .auth-login .story-footer { display:none; }
    .auth-login .goal-preview { display:none; }
}
@media(min-width:1101px) and (max-height:900px) {
    .auth-login .site-header-inner { padding-top:8px; padding-bottom:8px; }
    .auth-login .form-container { padding-top:16px; padding-bottom:16px; }
    .auth-login .chart { height:40px; }
    .auth-login .preview-caption { display:none; }
    .auth-login .site-footer-grid { grid-template-columns:1.2fr 1fr 1.1fr; }
    .auth-login .site-footer-intro { display:none; }
    .auth-login .site-footer h2 { font-size:14px; }
    .auth-login .site-footer { padding-top:12px; padding-bottom:10px; }
}
@media(min-width:1101px) and (max-height:780px) {
    .auth-login .story { padding-top:10px; padding-bottom:10px; }
    .auth-login .form-container { padding-top:8px; padding-bottom:8px; }
    .auth-login .auth-shell { padding-top:10px; padding-bottom:10px; }
}

.site-brand .original-brand-logo { display:block; width:200px; height:44px; object-fit:cover; object-position:center; }
.sidebar .brand { display:flex; justify-content:center; background:#fff; padding:8px 10px; border-radius:10px; margin-bottom:16px; }
.sidebar .workspace-brand-logo { display:block; width:190px; max-width:100%; height:44px; object-fit:cover; object-position:center; }
@media(max-width:600px) { .site-header .original-brand-logo{width:158px;height:36px}.site-footer .original-brand-logo{width:200px;height:44px} }
@media(max-width:760px) { .sidebar .brand{margin-right:38px;padding:8px}.sidebar .workspace-brand-logo{width:185px;height:42px} }

/* Square surfaces throughout the website, including mobile dialogs. */
.story,
.preview,
.form-container,
.auth-form,
.visual-card,
.panel,
.stat-card,
.account-card,
.detail-card,
.memo-card,
.purchase-product,
.receipt-product,
.receipt-product .cash-summary,
.information-body,
.information-card,
.recovery-card,
.information-body details,
.sidebar-tip,
.gentle-banner,
.info-banner,
.mini-note,
.apk-promo,
.download-link,
.upload-box,
.account-logo-picker,
.given-preview,
.given-context,
.notice,
.status-notice,
dialog {
    border-radius:0 !important;
}

/* Final visual refinement: crisp surfaces, restrained accents, clear controls. */
.site-header { border-bottom-color:#e2e8f0; box-shadow:0 1px 0 #ffffff; }
.site-navigation a { transition:color .16s ease,border-color .16s ease; }
.site-header-action,.site-footer .site-support-link { border-radius:3px; }
.site-header-action { box-shadow:0 3px 8px #1d4ed812; }
.site-footer { background:#fcfdff; }
.site-footer nav>a { transition:color .16s ease; }
.site-footer h2 { letter-spacing:.01em; }
.site-footer-bottom { border-top-color:#e2e8f0; }
.finance-auth { background:#f6f8fc; }
.finance-auth .story { background:linear-gradient(145deg,#172554 0%,#193777 100%); box-shadow:inset 0 0 0 1px #ffffff14; }
.finance-auth .story::before { opacity:.35; }
.finance-auth .story::after { background:radial-gradient(ellipse at 0 0,#2563eb26,transparent 70%); }
.finance-auth .eyebrow { color:#c7ddff; font-weight:600; }
.finance-auth h1 { font-weight:500; }
.finance-auth h1 em { color:#67e8f9; }
.finance-auth .preview { background:#ffffff07; border-color:#ffffff26; box-shadow:none; }
.finance-auth .preview-label { background:#ffffff08; border-color:#ffffff26; border-radius:2px; }
.finance-auth .chart-bars { gap:14px; }
.finance-auth .chart-bars i { border-radius:2px 2px 0 0; }
.finance-auth .form-container { position:relative; border-color:#dbe3f0; box-shadow:0 8px 28px #17255406; }
.finance-auth .form-container::before { content:''; position:absolute; height:3px; top:-1px; left:-1px; right:-1px; background:linear-gradient(90deg,#2455ed,#06b6d4); }
.finance-auth .form-description { color:#53647a; }
.finance-auth .field { font-weight:600; }
.finance-auth input:not([type='checkbox']) { border-radius:3px; border-color:#c4d0e1; background:#fff; box-shadow:0 1px 2px #17255403; }
.finance-auth input:not([type='checkbox']):hover { border-color:#8ea7c7; }
.finance-auth input:not([type='checkbox']):focus { border-color:#2455ed; box-shadow:0 0 0 3px #2455ed14; }
.finance-auth .input-wrap > .icon,.finance-auth .email-icon { color:#7185a0; }
.finance-auth .password-toggle { border-radius:2px; }
.finance-auth .submit-button { border-radius:3px; border-color:transparent; background:linear-gradient(110deg,#2455ed,#087fcb); box-shadow:0 3px 8px #2455ed18; }
.finance-auth .submit-button:hover { background:linear-gradient(110deg,#1d4ed8,#0369a1); transform:none; }
.finance-auth .auth-switch a { gap:4px; }
.finance-auth .privacy-note { color:#52647b; }
.finance-auth .privacy-note .icon { color:#3d6395; }
.public-site .information-body,.public-site .recovery-card { border-color:#dbe3f0; box-shadow:0 6px 24px #17255404; }
.public-site .information-card { background:#f8faff; border-color:#dbe4f2; }
.public-site .information-heading > p:last-child { color:#52647b; }
.public-site .information-body summary:hover { color:#1d4ed8; }
.public-site .information-body a:focus-visible,.site-header a:focus-visible,.site-footer a:focus-visible,.finance-auth a:focus-visible,.finance-auth button:focus-visible { outline:3px solid #60a5fa; outline-offset:4px; }
body[data-page] .panel,body[data-page] .stat-card,body[data-page] .account-card { box-shadow:0 3px 14px #17255404; border-color:#dbe3f0; }
body[data-page] .featured { border-color:#263e7c; }
@media(prefers-reduced-motion:reduce) { .site-navigation a,.site-footer nav>a{transition:none} }

/* Phone and tablet browser compatibility. */
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
html[data-device-platform="ios"] .apk-promo,
html[data-device-platform="ios"] .app-download,
html[data-device-platform="ios"] .android-app-section,
html[data-device-platform="ios"] a[download][href$=".apk"] { display:none!important; }
body[data-page] .stat-card.featured { background:linear-gradient(125deg,#172554,#1e40af); border-color:#263e7c; }
@media(max-width:760px) {
    body[data-page] .app-shell { width:100%; min-width:0; }
    body[data-page] .topbar { position:sticky; top:0; min-height:60px; height:auto; padding:12px max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left)); padding-top:max(12px,env(safe-area-inset-top)); z-index:20; }
    body[data-page] main { padding:20px max(16px,env(safe-area-inset-right)) calc(90px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left)); }
    body[data-page] .page-heading { gap:14px; margin-bottom:20px; }
    body[data-page] .page-heading h1 { font-size:clamp(25px,6.4vw,30px); line-height:1.22; letter-spacing:-.8px; }
    body[data-page] .page-heading p { font-size:14px; line-height:1.65; }
    body[data-page] .heading-actions { gap:10px; }
    body[data-page] .heading-actions .button { padding:10px 12px; min-height:46px; font-size:14px; border-radius:3px; }
    body[data-page] .period-row { margin-bottom:16px; row-gap:12px; }
    body[data-page] .app-shell .month-picker { width:100%; max-width:100%; min-width:0; padding:4px 10px; border-radius:3px; }
    body[data-page] .app-shell .month-picker input[type="month"] { flex:1 1 0; width:0; min-width:0; max-width:100%; font-size:16px; min-height:44px; padding:6px 0; -webkit-appearance:none; appearance:none; }
    body[data-page] .month-picker .text-button { flex:0 0 auto; min-height:44px; padding:0 12px; font-size:14px; }
    body[data-page] .apk-dashboard { flex-direction:column; flex-wrap:nowrap; height:auto; min-height:0; padding:14px; gap:12px; margin-bottom:18px; }
    body[data-page] .apk-dashboard>div { flex:0 1 auto; min-height:0; }
    body[data-page] .apk-dashboard strong { display:block; font-size:14px; line-height:1.5; color:#172554; }
    body[data-page] .apk-dashboard p { font-size:13px; line-height:1.6; margin-top:5px; }
    body[data-page] .apk-dashboard .apk-download { width:100%; min-height:44px; padding:10px 12px; font-size:13px; gap:8px; border-radius:3px; }
    body[data-page] .stats-grid { gap:12px; }
    body[data-page] .stat-card { padding:18px; min-width:0; }
    body[data-page] .stat-card.featured { min-height:0; padding:20px; }
    body[data-page] .stat-card h2 { white-space:normal; overflow-wrap:anywhere; line-height:1.25; font-size:clamp(22px,6vw,28px); font-variant-numeric:tabular-nums; }
    body[data-page] .stat-card.featured h2 { font-size:clamp(26px,7.5vw,34px); letter-spacing:-.7px; margin:14px 0; }
    body[data-page] .stat-label { gap:10px; font-size:13px; }
    body[data-page] .stat-note { font-size:12px; line-height:1.65; }
    body[data-page] .account-row { flex-wrap:wrap; gap:10px; }
    body[data-page] .account-row>div { min-width:0; flex:1; overflow-wrap:anywhere; }
    body[data-page] .account-amount { max-width:100%; overflow-wrap:anywhere; margin-left:auto; }
    body[data-page] .mobile-bottom-nav { padding:6px max(6px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left)); background:#fff; }
    body[data-page] .mobile-bottom-nav a,body[data-page] .mobile-bottom-nav button { min-height:50px; border-radius:3px; font-size:11px; gap:4px; }
    body[data-page] .mobile-bottom-nav .active { color:#1d4ed8; background:#eff6ff; }
    body[data-page] dialog { max-height:calc(100svh - 24px); max-height:calc(100dvh - 24px); }
    body[data-page] .site-footer { margin-top:24px; padding-top:24px; }
    body[data-page] .site-footer-intro { display:none; }
    body[data-page] .site-footer-contact p { display:none; }
    body[data-page] .site-footer-bottom { font-size:11px; }
    body[data-page] .site-footer-bottom>span:nth-child(2) { display:none; }
    .public-site input:not([type="checkbox"]),.finance-auth input:not([type="checkbox"]) { font-size:16px; }
}
@media(max-width:480px) {
    body[data-page] .stats-grid { grid-template-columns:minmax(0,1fr); }
    body[data-page] .stat-card:nth-child(4) { display:block; }
    body[data-page] .stat-card:nth-child(4) h2 { text-align:left; margin:14px 0; }
}

.bcn-android .site-header,
.bcn-android .android-app-section,
.bcn-android a[download][href$=".apk"] { display:none!important; }
.bcn-android body[data-page] main { padding-bottom:max(24px,env(safe-area-inset-bottom)); }

/* Keep page content near the header, with primary cards before promotion. */
.finance-auth .auth-shell { margin-top:0; padding-top:16px; align-items:start; }
.finance-auth .login-panel { justify-content:flex-start; padding-top:0; }
.finance-auth .form-container { margin-top:0; }
.public-site .public-main { padding-top:20px; }
body[data-page] main { padding-top:16px; }
body[data-page] .page-heading { margin-bottom:16px; gap:12px; }
body[data-page] .page-heading .eyebrow { display:none; }
body[data-page] .page-heading h1 { font-size:28px; line-height:1.25; margin:0; }
body[data-page] .page-heading p { margin:6px 0 0; }
body[data-page] .period-row { margin-bottom:16px; }
@media(max-width:760px) {
    .finance-auth .auth-shell { display:flex; flex-direction:column; gap:20px; padding-top:12px; }
    .finance-auth .login-panel { order:-1; width:100%; padding:0; }
    .finance-auth .story { width:100%; }
    .public-site .public-main { padding-top:16px; }
    body[data-page] main { padding-top:12px; }
    body[data-page] .page-heading h1 { font-size:22px; }
    body[data-page] .page-heading p { display:none; }
    body[data-page] .page-heading { margin-bottom:12px; gap:10px; }
    body[data-page] .period-row { margin-bottom:12px; gap:8px; }
}

/* Workspace cards follow the header; actions stay in the header. */
.workspace-page-title { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
body[data-page] .topbar { gap:12px; flex-wrap:wrap; height:auto; min-height:64px; padding-top:10px; padding-bottom:10px; }
body[data-page] .topbar .heading-actions { margin-left:auto; width:auto; flex-wrap:wrap; }
body[data-page] .topbar:has(.heading-actions) .topbar-right { display:none; }
body[data-page] main>.info-banner, body[data-page] main>.gentle-banner { margin-top:20px; }
.bcn-android body[data-page] .topbar:has(.heading-actions) { display:flex!important; position:static; }
.bcn-android body[data-page] .topbar:has(.heading-actions) .breadcrumb { display:none; }
@media(max-width:760px) {
    body[data-page] .topbar .heading-actions { gap:6px; }
    body[data-page] .topbar .heading-actions .button { min-height:40px; padding:8px 10px; font-size:12px; }
    body[data-page] .topbar .heading-actions .icon { width:16px; height:16px; }
}

/* Shared footer sections align across public and workspace pages. */
.site-footer .site-footer-grid { width:100%; align-items:start; }
.site-footer .site-footer-grid>* { min-width:0; }
.site-footer .site-footer-bottom { width:100%; align-items:center; }
main>.site-footer { margin-top:32px; }
@media(min-width:1201px) {
    main>.site-footer .site-footer-grid { grid-template-columns:1.2fr 1fr 1fr 1.2fr; gap:28px; }
}
@media(min-width:601px) and (max-width:1200px) {
    main>.site-footer .site-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; }
}
@media(max-width:600px) {
    .site-footer .site-footer-grid, main>.site-footer .site-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 16px; }
    .site-footer .site-footer-intro, .site-footer .site-footer-contact { grid-column:1/-1; }
    body[data-page] .site-footer-intro { display:block; }
    body[data-page] .site-footer-contact p { display:block; }
    .site-footer .site-footer-bottom { align-items:flex-start; }
    .site-footer .site-footer-bottom>span { max-width:100%; }
}
@media(max-width:360px) {
    .site-footer .site-footer-grid, main>.site-footer .site-footer-grid { grid-template-columns:minmax(0,1fr); }
}
@media(min-width:1201px) {
    .auth-login .site-footer .site-footer-grid { grid-template-columns:1.2fr 1fr 1fr 1.2fr; }
    .auth-login .site-footer .site-footer-intro { display:block; }
}

/* Compact application footer, aligned to the workspace content. */
body[data-page] .workspace-footer { display:block; margin:28px 0 0; padding:22px 0 16px; border-top:1px solid #dbe4f0; background:transparent; color:#64748b; font-size:12px; line-height:1.6; }
.workspace-footer-main { display:flex; align-items:center; gap:24px; flex-wrap:wrap; }
.workspace-footer-brand { display:block; flex:0 0 auto; }
.workspace-footer-brand img { display:block; width:144px; height:48px; object-fit:contain; }
.workspace-footer-main nav { display:flex; align-items:center; flex-wrap:wrap; gap:8px 24px; margin-left:auto; }
.workspace-footer a { text-decoration:none; color:#475569; }
.workspace-footer-main nav a { display:inline-flex; align-items:center; min-height:40px; font-size:13px; }
.workspace-footer a:hover { color:#1d4ed8; text-decoration:underline; text-underline-offset:4px; }
.workspace-footer .workspace-footer-email { font-size:13px; color:#1d4ed8; overflow-wrap:anywhere; }
.workspace-footer-meta { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:14px; font-size:11px; }
body[data-page] .apk-dashboard { display:flex; flex-direction:row; align-items:center; gap:20px; padding:18px 20px; margin:20px 0 0; background:#fff; border:1px solid #dbe4f0; }
body[data-page] .apk-dashboard>div { flex:1 1 auto; min-width:0; }
body[data-page] .apk-dashboard .apk-download { flex:0 0 auto; width:auto; min-height:42px; padding:10px 16px; color:#1d4ed8; background:#eff6ff; border:1px solid #bfdbfe; box-shadow:none; border-radius:0; font-size:13px; }
@media(max-width:760px) {
    .workspace-footer-main { gap:12px; }
    .workspace-footer-main nav { width:100%; margin-left:0; gap:4px 20px; }
    .workspace-footer-brand img { width:126px; height:42px; }
    .workspace-footer-meta { flex-wrap:wrap; }
    body[data-page] .apk-dashboard { align-items:flex-start; flex-direction:column; padding:16px; gap:12px; }
    body[data-page] .apk-dashboard>div { flex:0 1 auto; }
    body[data-page] .apk-dashboard .apk-download { width:auto; max-width:100%; }
}
