/* Shared controls: explicit surfaces and typography in both color schemes. */
.app-body .ghost-button,.support-body .ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 16px;box-sizing:border-box;font-family:inherit;font-size:.875rem;font-weight:700;line-height:1.35;text-align:center;white-space:normal;color:#173451;background:#fff;border:1px solid #b8cce0;cursor:pointer}
.app-body .ghost-button:hover,.support-body .ghost-button:hover{background:#eaf4ff;border-color:#6f9cc3;color:#102b49}
html[data-theme="dark"] .ghost-button{background:#1c2d44;color:#f1f6ff;border-color:#607590;box-shadow:none}
html[data-theme="dark"] .ghost-button:hover{background:#29405f;color:#fff;border-color:#8fb9e6}
html[data-theme="dark"] .mobile-menu-toggle,html[data-theme="dark"] .icon-button,html[data-theme="dark"] .view-pill,html[data-theme="dark"] .secondary-button{background:#1c2d44;color:#f1f6ff;border-color:#607590}
html[data-theme="dark"] .view-pill strong{color:#f1f6ff}
.ghost-button:focus-visible,.primary:focus-visible,.danger-button:focus-visible{outline:3px solid #3e9fff;outline-offset:3px}
.app-body .dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.app-body .dashboard-hero h1{max-width:1000px;overflow-wrap:break-word}
.app-body .dashboard-hero .hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:stretch;gap:10px;min-width:0}
.app-body .dashboard-hero .hero-actions form{display:flex;margin:0}
.app-body .dashboard-hero .hero-actions .primary,.app-body .dashboard-hero .hero-actions .ghost-button{min-height:46px;font-family:inherit;font-size:.875rem;line-height:1.35;border-radius:12px;margin:0}
.app-body .dashboard-hero .hero-actions .primary{max-width:100%;white-space:normal;text-align:center}
.account-field{min-width:0}.account-field>label{display:block;font-weight:700;margin-bottom:8px}.account-field input:not([type=checkbox]),.account-field select,.account-field textarea{box-sizing:border-box;width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;font:inherit;background:#fff;color:#102541}.account-field small{display:block;color:var(--muted);margin-top:7px}
.record-form{padding:26px;margin-top:24px;max-width:1000px}.account-field input[type=checkbox]{width:20px;height:20px;padding:0;accent-color:#1479c9}.record-form .form-actions{flex-wrap:wrap}.record-form>p{line-height:1.6;color:var(--muted);font-size:.875rem}.record-form .form-grid label{display:block}
.account-danger{padding:24px;margin-top:24px}.account-danger details{margin-top:16px}.account-danger summary{cursor:pointer;font-weight:700;padding:12px 0}.account-danger p{line-height:1.6}.account-danger form{max-width:620px}.account-danger input[type=password]{display:block;width:100%;box-sizing:border-box;padding:12px;margin:8px 0;font:inherit;border:1px solid var(--line);border-radius:10px}
html[data-theme="dark"] .account-field input:not([type=checkbox]),html[data-theme="dark"] .account-field select,html[data-theme="dark"] .account-field textarea,html[data-theme="dark"] .account-danger input[type=password]{background:#18273b;color:#eef5ff;border-color:#607590}
html[data-theme="dark"] .danger-button{background:#4b202b;color:#ffdfe5;border-color:#b05e6c}
.errorlist{color:#a02035}html[data-theme="dark"] .errorlist{color:#ffb1bd}
@media(max-width:620px){.app-body .dashboard-hero .hero-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%}.app-body .dashboard-hero .hero-actions>*{min-width:0;width:100%}.app-body .dashboard-hero .hero-actions form>button{width:100%}}
