/* Shared presentation only: no permissions or persistent application state. */
:root{--bn-paper:#f5f2e9;--bn-ink:#243f3b;--bn-accent:#28675f;--bn-border:#cdd8cf}
body{background:var(--bn-paper)!important;color:var(--bn-ink)!important;font:1rem/1.55 system-ui,sans-serif}
body header{background:var(--bn-paper);border-color:var(--bn-border)}
body h1,body h2,body h3,body .date{color:var(--bn-ink)}
body a{color:var(--bn-accent);text-underline-offset:.2em}
body main{max-width:1150px;margin:24px auto;padding:0 20px}
.bn-private-nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 0;margin-bottom:24px;border-bottom:1px solid var(--bn-border)}
.bn-private-nav a,.bn-private-nav button{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border-radius:12px}
.bn-private-nav [aria-current=page]{background:var(--bn-accent);color:white;text-decoration:none}
.bn-private-nav form{margin:0 0 0 auto}
body button,body input:not([type=checkbox]):not([type=radio]):not([type=hidden]),body select{min-height:44px;font-size:1rem}
body button[type=submit],body .bn-pwa-actions button{background:var(--bn-accent)!important;color:white}
body button:disabled{background:#e6eae6!important;color:#59665e!important;cursor:not-allowed}
body fieldset,.bn-settings-grid section,.bn-advanced{min-width:0;border:1px solid var(--bn-border);border-radius:16px;padding:18px;margin:18px 0;background:#fffdf8}
body legend{font-weight:700;padding:0 6px;font-size:1.1rem}
body summary{cursor:pointer;padding:10px 0;min-height:44px;font-weight:650}
body .help,body .intro{font-size:1rem;color:#435e57}
body :focus-visible{outline:3px solid #9c650d;outline-offset:3px}
.bn-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bn-settings-grid section{margin:0}.bn-settings-grid a{display:inline-block;min-height:44px;padding:8px 0}
[hidden]{display:none!important}
@media(max-width:600px){body main{padding:0 14px}.bn-settings-grid{grid-template-columns:1fr}.bn-private-nav{gap:4px}.bn-private-nav a,.bn-private-nav button{padding:8px 10px}.bn-private-nav form{margin-left:0}body fieldset{padding:12px}body select,body textarea{max-width:100%}.bn-reminder-custom{flex-wrap:wrap}}

/* Final ergonomics pass: retain all native fields and their submitted values. */
body .bn-private-nav>a,body summary,body fieldset,body input,body select,body button,body .bn-settings-grid section{box-sizing:border-box}
body .bn-profile-picker .help,body .bn-profile-picker .choice,
body form[data-bn-family-form] label,body form[data-bn-family-form] .help,
body .bn-short-help{font-size:1rem!important;line-height:1.45;color:#435e57}
body .bn-profile-picker .choice,body .bn-option{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer}
body .bn-profile-picker .choice[hidden]{display:none!important}
.bn-choice-account{display:block;font-size:.875rem;font-weight:400;color:#435e57}
body .bn-sharing-picker{border:0;background:transparent;padding:0;margin:0}
.bn-family-organisation{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start;margin-block:14px}
.bn-family-organisation>.bn-family,.bn-family-organisation>.bn-custody{margin:0;min-width:0}
@media(max-width:600px){
 .bn-family-organisation{grid-template-columns:1fr;gap:0;background:#f0f3eb;border-radius:14px;padding:0 10px}
 .bn-final .bn-family-organisation>.bn-family,.bn-final .bn-family-organisation>.bn-custody{background:transparent;border:0;border-radius:0;padding:8px 0;margin:0}
 .bn-family-organisation>.bn-custody{border-top:1px solid #cdd8cf!important}
 .bn-final .bn-month .month-grid{gap:20px}
 .bn-final .bn-month .month-day{border:0;border-top:2px solid #b7cbc2;border-radius:0;background:transparent;padding-top:12px}
 .bn-final .bn-month .month-day.today{border:0;border-top:3px solid #28675f;padding-top:12px}
 .bn-final .bn-month .month-day header{display:flex;align-items:center;gap:8px;padding:0 0 10px;background:transparent}
 .bn-final .bn-month .month-day header>time{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .bn-final .bn-month .month-day header>.day-label{font-size:1rem;line-height:1.4;font-weight:750;color:#243f3b;text-transform:capitalize;flex:1 1 100%}
 .bn-final .bn-month .month-day header>.today-marker{font-size:.875rem;margin-left:0}
 .bn-final .bn-month .month-day header .bn-custody-band{position:static;inset:auto;width:100%;height:auto;min-height:32px;padding:5px;border-radius:6px;font-size:.875rem}
 .bn-final .bn-month .month-day header .bn-context-tags{margin:2px 0;gap:5px}
 .bn-final .bn-month .month-day .bn-context-tag{font-size:.875rem}
 .bn-sharing-picker .choices{grid-template-columns:1fr}
}
body .bn-profile-picker .choice input,body .bn-option input{width:20px;height:20px;flex-shrink:0;accent-color:#28675f}
body .bn-date-row{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr) minmax(0,1fr);gap:8px!important;max-width:620px}
body .bn-date-row>div{min-width:0!important}
body .bn-date-row select{min-width:0;width:100%;padding:10px 6px!important}
body .bn-time-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;max-width:300px}
body .bn-time-row>label{grid-column:1/-1}
body .bn-time-row select{width:100%!important;min-width:0;margin-top:0!important}
.bn-time-separator{font-weight:600}
body .bn-secondary,body .bn-inline-help{border-top:1px solid var(--bn-border);margin:12px 0;padding-top:4px}
body .bn-secondary>summary,body .bn-inline-help>summary{font-size:1rem;line-height:1.4}
body .bn-secondary fieldset{margin:8px 0}
body .bn-secondary p,body .bn-inline-help p{font-size:1rem;line-height:1.5}
body .bn-save-preferences{width:100%;min-height:48px}
@media(max-width:600px){
 body .bn-private-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin:0 0 16px;padding:8px 0;font-size:1rem}
 body .bn-private-nav>a{justify-content:center;text-align:center;padding:8px 4px;min-height:56px;line-height:1.15;font-size:1rem;overflow-wrap:normal}
 body .bn-admin main,body main{padding-inline:12px}
 body fieldset{margin:12px 0}
 body .bn-reminder-custom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
 body .bn-reminder-custom input,body .bn-reminder-custom select{width:100%;min-width:0}
 body .bn-admin h1{margin-block:16px;font-size:1.6rem}
 body .bn-inline-help p{margin:8px 0}
}
