body:not(.signed-out) {font-family:'Nunito','Trebuchet MS',sans-serif;background:#faf8f2;color:#38291e;padding:20px 24px 40px;}
body:not(.signed-out) button,body:not(.signed-out) input,body:not(.signed-out) select,body:not(.signed-out) textarea {font-family:inherit;}
body:not(.signed-out) button {color:#38291e;-webkit-text-fill-color:currentColor;-webkit-appearance:none;appearance:none;}
body:not(.signed-out) button .action-label {color:inherit;-webkit-text-fill-color:currentColor;}
/* Explicit text colors also cover iOS standalone app controls. */
body:not(.signed-out) #signOut,
#appShell .action-grid > button,
#appShell .action-grid .action-label,
#appShell .home-quick-actions button,
#appShell .panel-back,
#appShell button.bird-result {color:#38291e;-webkit-text-fill-color:#38291e;}
body:not(.signed-out) .auth-bar {max-width:1120px;margin:0 auto 12px;justify-content:flex-end;}
body:not(.signed-out) .signin-content {width:100%;justify-content:flex-end;font-size:14px;}
body:not(.signed-out) #authMessage {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%;color:#756859;}
body:not(.signed-out) #signOut {border:1px solid #ded8ca;padding:8px 12px;min-height:40px;background:transparent;box-shadow:none;}
#appShell {max-width:1120px;margin:auto;}
.app-heading {display:flex;align-items:center;gap:12px;margin:0 0 24px;}
.app-heading img {width:56px;height:56px;border-radius:50%;border:1px solid #ead4ab;background:white;}
.app-heading h1 {text-align:left;font-size:26px;line-height:1.15;margin:0;font-weight:800;}
.app-heading p {margin:4px 0 0;color:#80715e;font-size:14px;}
#appShell .top-tabs {display:flex;max-width:none;gap:6px;margin:0 0 24px;padding:5px;border:1px solid #e8e0d1;border-radius:18px;background:#f1ece1;}
#appShell .tab-button {min-height:48px;border:0;border-radius:13px;background:transparent;color:#76634d;padding:10px 20px;font-size:16px;display:flex;gap:8px;align-items:center;justify-content:center;}
#appShell .tab-button.active {background:#fff;color:#63370e;box-shadow:0 2px 5px #38291e12;}
.page-intro {margin:0 0 20px;}
.page-intro h2 {font-size:26px;line-height:1.2;margin:0 0 6px;}
.page-intro p {font-size:16px;margin:0;color:#796b59;}
#appShell .grid {max-width:none;margin:0;}
.home-content {display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:start;}
#appShell #dashboard {gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));}
#appShell .card {padding:16px;border:1px solid #e8dfcf;border-radius:18px;background:#fff;font-size:16px;text-align:left;}
.stat-label {color:#77634d;font-size:14px;display:flex;gap:6px;align-items:center;}
.stat-value {display:block;font-size:28px;line-height:1.15;margin-top:10px;font-weight:800;font-variant-numeric:tabular-nums;}
#appShell .dashboard-total {grid-column:1/-1;background:#f7e8c7;border:0;padding:22px;display:flex;align-items:center;justify-content:space-between;}
.dashboard-total .stat-value {font-size:46px;margin:0;}
.flock-mascot {grid-column:1/-1;padding:12px 16px;border-radius:14px;background:#f0eedf;color:#726038;font-size:14px;}
#appShell .command-panel {max-width:none;background:white;border:1px solid #e8dfcf;border-radius:20px;padding:22px;margin:0;}
#appShell .command-panel h2 {font-size:19px;margin:0 0 16px;}
.home-quick-actions {display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px;}
#appShell .home-quick-actions button {font-size:15px;min-height:46px;padding:10px 16px;border:1px solid #d8c5a2;border-radius:12px;background:white;}
#appShell .action-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
#appShell .action-grid button {display:flex;align-items:center;gap:14px;text-align:left;padding:20px;background:white;border:1px solid #e8dfcf;border-radius:18px;min-height:100px;font-size:17px;}
.action-icon {display:grid;place-items:center;background:#faf1df;border-radius:14px;flex:0 0 48px;width:48px;height:48px;font-size:26px;}
.action-label {line-height:1.3;}
#appShell button:hover {background:#fff4dc;border-color:#caa765;}
#appShell button:focus-visible {outline:3px solid #a77835;outline-offset:3px;}
#appShell .panel {max-width:720px;padding:28px;margin:0 auto;background:white;border:1px solid #e8dfcf;border-radius:22px;box-sizing:border-box;}
#appShell .panel h2 {margin:0 0 22px;font-size:24px;line-height:1.3;}
#appShell .panel h3 {font-size:19px;}
#appShell .panel label {margin-top:20px;font-size:14px;color:#62503e;}
#appShell input,#appShell select,#appShell textarea {min-height:48px;margin-top:6px;padding:12px;border:1px solid #dcd3c3;border-radius:12px;font-size:16px;line-height:1.4;background:#fffefa;color:#38291e;}
#appShell input:focus,#appShell select:focus,#appShell textarea:focus {outline:2px solid #b58a4a;outline-offset:1px;}
#appShell a,#appShell a:visited {color:#855023;text-decoration-color:#c6a16c;text-underline-offset:3px;}
#appShell a:hover {color:#573416;text-decoration-color:currentColor;}
#appShell a:focus-visible {outline:3px solid #a77835;outline-offset:3px;}
#appShell input[type="date"],#appShell input[type="month"] {display:block;width:100%;max-width:240px;min-width:0;box-sizing:border-box;}
#appShell input[type="date"]::-webkit-date-and-time-value,#appShell input[type="month"]::-webkit-date-and-time-value {text-align:left;min-width:0;}
#appShell .report-controls > div {min-width:0;}
#appShell textarea {min-height:108px;resize:vertical;}
#appShell .panel button {min-height:48px;font-size:16px;padding:12px 18px;border-radius:12px;border-width:1px;}
#appShell .panel .action-button,#saveCost {width:100%;background:#855023;color:white;border-color:#855023;margin-top:24px;}
#appShell .profile-row {line-height:1.6;padding:12px 0;border-color:#ece5d9;}
#appShell .bird-result {min-height:48px;line-height:1.5;padding:16px;border-color:#e8dfcf;background:#fffaf0;cursor:pointer;}
#appShell button.bird-result {display:block;width:100%;text-align:left;margin:0 0 10px;}
#appShell .bird-result strong,#appShell .bird-result small {display:block;}
#appShell .bird-result small {font-size:13px;font-weight:400;color:#796b59;margin-top:5px;}
#birdList {margin-top:16px;}
#birdProfile {scroll-margin-top:16px;}
.access-person {display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;}
.access-person > div {min-width:0;overflow-wrap:anywhere;flex:1 1 180px;}
.access-person small {color:#796b59;}
.panel-back {display:block;margin:0 auto 14px;max-width:720px;width:100%;text-align:left;background:transparent;border:0;padding:10px 0;font-size:15px;min-height:44px;color:#7c562e;}
.tab-section.panel-open > .action-grid,.tab-section.panel-open > .page-intro {display:none;}
#appShell .panel .panel {padding:18px;border-radius:16px;}
@media(max-width:760px) {
  body:not(.signed-out) {padding:12px 16px calc(98px + env(safe-area-inset-bottom));}
  body:not(.signed-out) .auth-bar {margin-bottom:14px;}
  .app-heading {margin-bottom:24px;gap:10px;}
  .app-heading img {width:44px;height:44px;}
  .app-heading h1 {font-size:21px;}
  .app-heading p {font-size:13px;}
  #appShell .top-tabs {position:fixed;bottom:0;left:0;right:0;z-index:30;margin:0;max-width:none;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border:0;border-top:1px solid #e6ddcc;border-radius:0;background:#fffefbf5;backdrop-filter:blur(12px);gap:6px;}
  #appShell .tab-button {flex:1;min-height:58px;flex-direction:column;gap:3px;padding:6px;font-size:12px;line-height:1.3;}
  #appShell .tab-button.active {background:#f8edda;box-shadow:none;}
  .nav-icon {font-size:22px;}
  .page-intro h2 {font-size:25px;}
  .page-intro p {font-size:15px;}
  .home-content {grid-template-columns:1fr;gap:24px;}
  #appShell #dashboard {gap:10px;}
  #appShell .card {padding:14px;}
  #appShell .dashboard-total {padding:18px;}
  .stat-value {font-size:27px;margin-top:6px;}
  .home-quick-actions {display:grid;grid-template-columns:1fr 1fr;gap:10px;}
  #appShell .home-quick-actions button {font-size:14px;padding:10px 8px;}
  #appShell .action-grid {grid-template-columns:1fr 1fr;gap:10px;}
  #appShell .action-grid button {flex-direction:column;align-items:flex-start;gap:12px;padding:16px;min-height:128px;font-size:16px;}
  .action-icon {width:42px;height:42px;flex-basis:42px;font-size:23px;}
  #appShell .panel {padding:20px 16px;border-radius:18px;}
  #appShell .panel h2 {font-size:22px;margin-bottom:18px;}
  #appShell .panel .panel {padding:14px;}
  #appShell .profile-photo {max-height:360px;object-fit:contain;display:block;margin:0 auto 18px;}
  .report-controls {gap:10px;}
  .report-controls button {flex:1 1 140px;}
  #appShell .report-totals {grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .report-totals div {padding:12px;}
  .report-totals dt {font-size:13px;}
  .report-totals dd {font-size:22px;}
}
@media print {
 body:not(.signed-out) {padding:0;background:white;}
 body.printing-report #appShell .top-tabs,body.printing-report .app-heading {display:none!important;}
 body.printing-report #appShell #monthlyReportsPanel {padding:0;border:0;max-width:none;}
}
