/* Compact journal text; editable fields stay at 16px to avoid iOS focus zoom. */
.journal-screen,.journal-screen *,.journal-employee-picker,.journal-employee-picker *{
  font-family:'Inter',sans-serif!important;
  font-size:14px!important;
}
.journal-screen input,.journal-screen select,.journal-screen textarea,
.journal-employee-picker input,.journal-employee-picker select,.journal-employee-picker textarea{font-size:16px!important;}
.journal-screen .journal-person-unassigned{display:block;margin-top:3px;font-size:11px!important;line-height:1.35;font-weight:400;color:#8a6400;}
#screen:has(.journal-screen)>.session-bar{font-family:'Inter',sans-serif;font-size:14px;}
.journal-screen{line-height:1.45;}
.journal-screen .section-head{margin-bottom:16px;}
.journal-screen h1,.journal-screen .section-head p{line-height:1.45;}
.journal-screen #journalMonth{font:inherit;appearance:none;-webkit-appearance:none;padding:9px 11px;border:1px solid #dcd8cd;border-radius:10px;background:#fcfbf8;color:var(--green-deep);text-align:left;}
.journal-screen #journalMonth::-webkit-date-and-time-value{min-height:1.45em;text-align:left;}
.journal-screen .journal-add{min-height:44px;box-shadow:none;}
.journal-screen .journal-day{margin:0 0 16px;border-color:#deded3;border-radius:14px;box-shadow:0 2px 5px #0335260a;}
.journal-screen .journal-draft{padding:0;overflow:hidden;}
.journal-draft-body{padding:0 14px 14px;}
.journal-screen .journal-draft input,.journal-screen .journal-draft select{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:44px;padding:9px 11px;border:1px solid #dcd8cd;border-radius:10px;background:#fcfbf8;color:var(--green-deep);font:inherit;}
.journal-draft input[type=date]{appearance:none;}
.journal-draft-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;}
.journal-cancel-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 10px;border:1px solid #b6c1b7;border-radius:10px;background:transparent;color:var(--green-deep);font-weight:600;cursor:pointer;}
.journal-draft button:disabled{opacity:.6;cursor:default;}
.journal-screen .journal-day>summary{display:block;padding:0;cursor:pointer;list-style:none;}
.journal-screen .journal-day>summary::-webkit-details-marker{display:none;}
.journal-card-heading{display:block;padding:13px 14px;background:var(--green-deep);color:var(--white);font-weight:700;overflow-wrap:anywhere;}
.journal-screen .journal-date,.journal-screen .journal-object{color:inherit;font-weight:700;}
.journal-screen .journal-counts{display:block;margin:13px 14px 8px;color:#59675f;}
.journal-screen .journal-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;margin:0 14px;padding:0 0 12px;}
.journal-screen .journal-metrics>span:last-child:not(:first-child){text-align:right;}
.journal-screen .journal-metrics small{margin:0 0 3px;color:#59675f;line-height:1.45;}
.journal-screen .journal-metrics b{font-weight:700;line-height:1.45;overflow-wrap:anywhere;}
.journal-more{display:flex;justify-content:flex-end;padding:0 14px 13px;}
.journal-screen .journal-day[open]>summary .journal-more{display:none;}
.journal-gold-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 18px;border:1px solid var(--gold);border-radius:10px;background:var(--gold);color:var(--green-deep);font-weight:700;line-height:1.4;cursor:pointer;}
.journal-screen .journal-content{border-top:1px solid #deded3;padding:0;}
.journal-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #deded3;}
.journal-tabs [role=tab]{min-height:48px;padding:10px 3px;border:0;border-bottom:3px solid transparent;background:transparent;color:#536259;font-weight:600;line-height:1.4;cursor:pointer;overflow-wrap:anywhere;}
.journal-tabs [role=tab][aria-selected=true]{color:#82600d;border-bottom-color:var(--gold);font-weight:700;}
.journal-panel{padding:8px 12px 12px;}
.journal-panel[hidden]{display:none!important;}
.journal-person{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,.8fr) minmax(88px,.85fr);align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid #e7e4dc;}
.journal-person-name{font-weight:700;overflow-wrap:anywhere;}
.journal-person-role{color:#59675f;overflow-wrap:anywhere;}
.journal-wage{display:flex;align-items:center;gap:4px;border:1px solid #dcd8cd;border-radius:10px;padding:0 7px;background:#fcfbf8;color:var(--green-deep);}
.journal-screen .journal-wage .pay-amount{flex:1;width:0;max-width:none;min-width:0;height:44px;padding:8px 0;border:0;border-radius:0;background:transparent;text-align:right;font-weight:600;appearance:textfield;}
.journal-wage .pay-amount::-webkit-inner-spin-button,.journal-wage .pay-amount::-webkit-outer-spin-button{-webkit-appearance:none;margin:0;}
.journal-wage:focus-within{outline:2px solid var(--green);outline-offset:2px;}
.journal-wage .pay-amount:focus-visible{outline:none;}
.journal-wage-value,.journal-wage-hidden{text-align:right;overflow-wrap:anywhere;}
.journal-wage-hidden{color:#738076;}
.journal-add-person{display:block;width:100%;min-height:44px;padding:10px 8px;margin:12px 0;border:1px solid var(--gold);border-radius:10px;background:transparent;color:var(--green-deep);font-weight:700;line-height:1.45;cursor:pointer;}
.journal-footer{display:flex;justify-content:flex-end;margin:12px 0;}
.journal-screen .compact-section{padding:0;border:0;border-top:1px solid #deded3;border-radius:0;margin:16px 0 0;}
.journal-screen .compact-section>summary,.journal-day-actions>summary{min-height:44px;padding:10px 0;cursor:pointer;color:var(--green-deep);font-weight:600;}
.journal-day-actions{border-top:1px solid #deded3;padding:0 12px;}
.journal-screen .journal-empty{margin:12px 0;color:#65716a;}
.journal-screen .helper{line-height:1.45;overflow-wrap:anywhere;color:#65716a;}
.journal-screen .journal-result{border-top:1px solid #deded3;margin:12px 0 0;padding:12px 0 0;}
.journal-screen .rating-summary{align-items:flex-start;flex-wrap:wrap;}
.journal-screen .rating-badge{white-space:normal;overflow-wrap:anywhere;flex-shrink:1;}
.journal-screen .dr-head{flex-wrap:wrap;}
.journal-screen .dr-body{padding:10px;}
.journal-screen .dr-sum{white-space:normal;}
.journal-screen .expense-row{overflow-wrap:anywhere;}
.journal-screen button:focus-visible,.journal-screen summary:focus-visible,.journal-employee-picker button:focus-visible{outline:2px solid var(--green);outline-offset:2px;}
.journal-employee-picker{line-height:1.45;}
.journal-employee-picker .employee-picker-option{min-height:54px;overflow-wrap:anywhere;}
.journal-employee-picker .employee-picker-option strong,.journal-employee-picker .employee-picker-option span{line-height:1.45;}
.journal-employee-picker .employee-picker-list{margin:12px 0;}
.journal-employee-picker .helper{color:#65716a;line-height:1.45;}
@media(max-width:360px){
  .journal-card-heading{padding:12px;}
  .journal-screen .journal-counts{margin-left:12px;margin-right:12px;}
  .journal-screen .journal-metrics{margin-left:12px;margin-right:12px;}
  .journal-panel{padding-left:6px;padding-right:6px;}
  .journal-person{grid-template-columns:minmax(0,1fr) 110px 82px;gap:4px;}
  .journal-wage{padding-left:5px;padding-right:5px;gap:3px;}
  .journal-gold-button{padding-left:14px;padding-right:14px;}
}
.journal-employee-picker .btn-secondary{min-height:44px;color:var(--green-deep);}
.journal-employee-picker #employeePickerCreate{border:1px solid var(--gold);border-radius:10px;font-weight:700;}
.journal-employee-picker .modal-close{width:44px;height:44px;min-width:44px;}
.journal-person-with-remove{grid-template-columns:minmax(0,1fr) 106px 82px 44px;gap:4px;}
.journal-remove-person{display:flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:10px;background:transparent;color:var(--danger);font-weight:700;cursor:pointer;}
.journal-remove-person:hover{background:#f6e6df;}
@media(max-width:430px){
  .journal-person-with-remove{grid-template-columns:minmax(0,1fr) 82px 44px;column-gap:4px;row-gap:2px;}
  .journal-person-with-remove .journal-person-name{grid-column:1;grid-row:1;}
  .journal-person-with-remove .journal-person-role{grid-column:1;grid-row:2;}
  .journal-person-with-remove .journal-wage,.journal-person-with-remove .journal-wage-value,.journal-person-with-remove .journal-wage-hidden{grid-column:2;grid-row:1 / span 2;}
  .journal-person-with-remove .journal-remove-person{grid-column:3;grid-row:1 / span 2;}
}
.journal-filters{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:12px;}
.journal-filters>div{min-width:0;}
.journal-filters label.field{margin:0 0 6px;}
.journal-filters input,.journal-filters select{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:48px;min-height:48px;}
@media(min-width:600px){.journal-filters{grid-template-columns:repeat(2,minmax(0,1fr));}}

/* One native picker works with iOS and Android; every control is touch-sized. */
.journal-day-scope{padding:14px 12px;background:#f7f7f0;border-bottom:1px solid #deded3;}
.journal-day-scope .field{margin:0 0 6px;}
.journal-scope-controls{display:flex;gap:8px;align-items:center;min-width:0;}
.journal-screen .journal-scope-controls select{display:block;box-sizing:border-box;flex:1;width:0;min-width:0;max-width:100%;min-height:48px;border:1px solid #b6c1b7;border-radius:10px;background:#fffdf8;color:var(--green-deep);padding:10px 8px;text-overflow:ellipsis;}
.journal-scope-reset{flex:none;min-height:48px;padding:8px;border:1px solid #b6c1b7;border-radius:10px;background:#fffdf8;color:var(--green-deep);cursor:pointer;}
.journal-day-totals{margin-top:12px;padding:12px;background:#fffdf8;border:1px solid #dcded2;border-radius:12px;}
.journal-total-heading{display:flex;flex-wrap:wrap;gap:4px 12px;justify-content:space-between;margin-bottom:12px;overflow-wrap:anywhere;}
.journal-total-heading>strong{color:var(--green-deep);}
.journal-total-heading>span,.journal-scope-note,.journal-total-detail{color:#536259;}
.journal-total-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 8px;}
.journal-total-grid>div{min-width:0;}
.journal-total-grid>div>span,.journal-total-grid>div>strong{display:block;overflow-wrap:anywhere;}
.journal-screen .journal-total-grid strong{font-size:17px!important;line-height:1.5;font-variant-numeric:tabular-nums;color:var(--green-deep);}
.journal-total-grid .journal-total-profit{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px;border-top:1px solid #e5e6dc;padding-top:9px;}
.journal-total-detail{margin:8px 0 0;overflow-wrap:anywhere;}
.journal-scope-note{margin:9px 0 0;line-height:1.45;}
.journal-scope-controls :focus-visible{outline:3px solid #b58b23;outline-offset:2px;}
@media(min-width:600px){.journal-day-scope{padding:16px;}.journal-total-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.journal-total-grid .journal-total-profit{grid-column:auto;display:block;border-top:0;padding-top:0;}}

.journal-person-analysis{grid-column:1 / -1;min-width:0;}
.journal-people-method>summary{min-height:44px;padding:10px 0;box-sizing:border-box;cursor:pointer;color:#536259;}
.journal-screen .journal-people-explanation,.journal-screen .journal-person-cost-note{font-size:12px!important;color:#59675f;line-height:1.5;margin:8px 0;}
.journal-person-finances{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;padding:12px;border-radius:10px;background:#f0f3eb;}
.journal-person-finances>div{min-width:0;}
.journal-person-finances span,.journal-person-finances strong{display:block;overflow-wrap:anywhere;}
.journal-person-finances span{color:#59675f;}
.journal-person-finances strong{font-variant-numeric:tabular-nums;color:var(--green-deep);}
.journal-person-profit{grid-column:1 / -1;display:flex;align-items:baseline;justify-content:space-between;gap:8px;border-top:1px solid #dce3d5;padding-top:8px;}
.journal-person-profit.is-negative strong{color:#a13c25;}
.journal-person-work>summary{padding:10px 0;min-height:44px;box-sizing:border-box;color:var(--green-deep);font-weight:600;cursor:pointer;}
.journal-person-sites{list-style:none;margin:0;padding:0;}
.journal-person-sites>li{margin:0 0 10px;padding:12px;border:1px solid #deded3;border-radius:10px;background:#fffdf8;}
.journal-person-site-heading{display:flex;justify-content:space-between;gap:8px;}
.journal-person-site-heading strong{overflow-wrap:anywhere;}
.journal-person-site-heading>span{white-space:nowrap;}
.journal-person-site-money,.journal-person-responsibility{margin:6px 0;color:#536259;overflow-wrap:anywhere;}
.journal-person-job{display:grid;gap:3px;padding:8px 0;border-top:1px solid #ece9df;overflow-wrap:anywhere;}
.journal-screen .journal-person-job small,.journal-screen .journal-person-warning{font-size:12px!important;line-height:1.45;}
.journal-person-warning{color:#8a5800;margin:6px 0;}
.journal-person-job small{color:#65716a;}
.journal-person-job .journal-person-warning{color:#8a5800;}

/* Director overview: one row per person; the existing controls live inside. */
.journal-screen .journal-people-sort-note{font-size:12px!important;color:#65716a;margin:8px 0;}
.journal-people-columns,.journal-person-summary{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center;}
.journal-people-columns{padding:8px 0;border-bottom:1px solid #dcded2;color:#59675f;}
.journal-people-columns>span:not(:first-child){text-align:right;}
.journal-person.journal-person-compact{display:block;padding:0;}
.journal-person-card{min-width:0;}
.journal-person-summary{min-height:48px;padding:8px 0;box-sizing:border-box;list-style:none;cursor:pointer;}
.journal-person-summary::-webkit-details-marker{display:none;}
.journal-person-summary .journal-person-name{display:flex;align-items:center;gap:5px;min-width:0;}
.journal-person-summary .journal-person-name>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.journal-person-chevron{flex:none;color:#7d896c;transition:transform .15s;}
.journal-person-card[open]>.journal-person-summary .journal-person-chevron{transform:rotate(90deg);}
.journal-person-number{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.journal-person-income{font-weight:700;color:var(--green-deep);}
.journal-person-expanded{padding:4px 0 14px;}
.journal-person-controls{display:grid;grid-template-columns:minmax(0,1fr) 104px 44px;gap:8px;align-items:center;margin:4px 0 12px;}
.journal-person-controls>div{min-width:0;}
.journal-person-controls strong{overflow-wrap:anywhere;}
.journal-person-controls .journal-person-role{display:block;}
.journal-screen .journal-person-salary>span{display:block;font-size:11px!important;color:#59675f;margin-bottom:3px;}
@media(max-width:430px){.journal-screen .journal-person-number,.journal-screen .journal-people-columns>span{font-size:12px!important;}}
@media(max-width:360px){.journal-people-columns,.journal-person-summary{gap:5px;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr);}.journal-person-controls{grid-template-columns:minmax(0,1fr) 96px 44px;gap:4px;}}
