/* Diary visual refinement. Screen-only and module-scoped: no print/data changes. */
@media screen {
  #diaryView { --diary-line:#d9e3e8; --diary-muted:#526975; }
  #diaryView > .view-heading { align-items:flex-end; gap:20px; margin-bottom:22px; }
  #diaryView > .view-heading h1 { font-size:clamp(24px,2.1vw,30px); line-height:1.2; letter-spacing:-.025em; }
  #diaryView > .view-heading p:not(.kicker) { font-size:var(--bs-text-15); line-height:1.5; color:var(--diary-muted); }
  #diaryView .diary-heading-actions { gap:8px; flex-wrap:wrap; }
  #diaryView .diary-heading-actions .secondary-btn { min-height:42px; padding:10px 13px; font-size:var(--bs-text-14); font-weight:500; border-color:#cbd8df; box-shadow:none; }
  #diaryView .save-state { font-size:var(--bs-text-14); font-weight:500; }
  #diaryView .diary-layout { grid-template-columns:248px minmax(0,1fr); gap:18px; align-items:start; }
  #diaryView .day-list-card, #diaryView .diary-editor { border-color:var(--diary-line); border-radius:9px; box-shadow:0 3px 14px #142c3a06; }
  #diaryView .day-list-card > .section-head { padding:16px 14px; background:#fff; }
  #diaryView .day-list-card > .section-head h3 { font-size:var(--bs-text-17); }
  #diaryView .day-list-card > .section-head p { font-size:var(--bs-text-14); }
  #diaryView .diary-new-day { height:42px; font-size:var(--bs-text-15); font-weight:500; }
  #diaryView .diary-search { padding:13px 14px 16px; }
  #diaryView .diary-search > span:first-child { font-size:var(--bs-text-14); }
  #diaryView .diary-search-control input { height:44px; font-size:var(--bs-text-15); }
  #diaryView .day-list { gap:9px; padding:12px; background:#fff; }
  #diaryView .diary-month-summary { padding:11px 10px; }
  #diaryView .diary-month-summary strong { font-size:var(--bs-text-15); }
  #diaryView .diary-month-summary small, #diaryView .diary-month-summary em { font-size:var(--bs-text-13); color:var(--diary-muted); }
  #diaryView .diary-month-summary em { white-space:nowrap; }
  #diaryView .diary-month-group[open] > .diary-month-summary { background:#f8fafc; }
  #diaryView .diary-month-days { gap:2px; padding:5px; }
  #diaryView .diary-month-days .day-item { min-height:44px; padding:10px; }
  #diaryView .diary-month-days .day-item strong { font-size:var(--bs-text-14); font-weight:500; line-height:1.5; white-space:normal; }
  #diaryView .diary-month-days .day-item.active { padding-left:13px; color:var(--navy); background:#fff0ef; box-shadow:inset 3px 0 var(--red); }
  #diaryView .diary-load-more, #diaryView .diary-search-empty { font-size:var(--bs-text-14); }
  #diaryView .diary-context-bar { padding:14px 16px; background:#fff; border-bottom:0; }
  #diaryView .diary-date-picker { width:min(100%,650px); min-height:76px; padding:11px 14px; background:#f5f9fc; border-color:#dbe6ed; }
  #diaryView .diary-date-label { font-size:var(--bs-text-13); font-weight:600; letter-spacing:.045em; }
  #diaryView .diary-date-copy strong { font-size:var(--bs-text-20); font-weight:600; line-height:1.35; white-space:normal; }
  #diaryView .diary-date-copy small { font-size:var(--bs-text-13); font-weight:400; color:var(--diary-muted); white-space:normal; }
  #diaryView .diary-date-picker > svg { width:23px; height:23px; }
  #diaryView .diary-grid { grid-template-columns:minmax(0,1fr) 300px; gap:18px; padding:0 16px 16px; }
  #diaryView .section-editors { gap:0; border:1px solid var(--diary-line); border-radius:7px; background:#fff; }
  #diaryView .section-editors:empty { border:0; }
  #diaryView .diary-section { grid-template-columns:160px minmax(0,1fr); border:0; border-bottom:1px solid var(--diary-line); border-radius:0; overflow:visible; }
  #diaryView .diary-section:last-child { border-bottom:0; }
  #diaryView .diary-section:first-child, #diaryView .diary-section:first-child > label { border-top-left-radius:7px; }
  #diaryView .diary-section:last-child, #diaryView .diary-section:last-child > label { border-bottom-left-radius:7px; }
  #diaryView .diary-section > label { padding:13px 12px; border-right:1px solid var(--diary-line); background:#f3f6f9; font-size:var(--bs-text-15); font-weight:600; line-height:1.45; overflow-wrap:anywhere; }
  #diaryView .diary-section .diary-rich-editor { min-height:64px; padding:13px 15px 10px!important; color:#233c49; font-size:var(--bs-text-16); line-height:1.6; overflow-wrap:anywhere; }
  #diaryView .diary-section .diary-field-meta { min-height:0; padding:2px 15px 7px; color:var(--diary-muted); font-size:11px; font-weight:400; line-height:1.4; overflow-wrap:anywhere; }
  #diaryView .diary-section .diary-field-meta:empty { display:none; }
  #diaryView .diary-section.is-empty:not(:focus-within) .diary-rich-editor { min-height:46px; padding:11px 15px!important; }
  #diaryView .diary-section.is-empty:not(:focus-within) .diary-rich-editor:before { color:#627985; }
  #diaryView .diary-section.is-empty:not(:focus-within) > label { padding-top:11px; padding-bottom:11px; }
  #diaryView .diary-section.is-empty:focus-within .diary-rich-editor { min-height:86px; padding:13px 15px!important; }
  #diaryView .diary-section:focus-within { position:relative; z-index:1; box-shadow:inset 3px 0 var(--red),0 0 0 2px #e53b361c; }
  #diaryView .diary-field-presence { position:static; align-self:flex-end; max-width:calc(100% - 24px); margin:6px 12px 0; white-space:normal; font-size:var(--bs-text-13); overflow-wrap:anywhere; }
  #diaryView .diary-rich-editor.locked-by-other { background:#f2f5f6; color:#627581; }
  #diaryView .diary-rich-editor.locked-by-other:after { font-size:var(--bs-text-13); }
  #diaryView .diary-grid .staffing-box { border-color:var(--diary-line); border-radius:8px; box-shadow:none; }
  #diaryView .diary-grid .staffing-head { padding:14px 12px; gap:8px; flex-wrap:wrap; background:#f5f8fb; }
  #diaryView .diary-grid .staffing-head h3 { font-size:var(--bs-text-18); font-weight:600; }
  #diaryView .diary-grid .staffing-head p { font-size:var(--bs-text-14); color:var(--diary-muted); }
  #diaryView .diary-add-company { height:40px; padding:0 9px; font-size:var(--bs-text-14); font-weight:500; }
  #diaryView .diary-staff-columns { display:grid; grid-template-columns:minmax(0,1fr) 58px 34px; gap:7px; padding:12px 13px 0; color:var(--diary-muted); font-size:var(--bs-text-14); }
  #diaryView .diary-staff-columns > span:nth-child(2) { text-align:center; }
  #diaryView .diary-grid #staffingRows:not(:empty) { gap:8px; padding:8px 13px 14px; }
  #diaryView .diary-grid .staff-row input { height:42px; font-size:var(--bs-text-16); }
  #diaryView .diary-grid .staff-row input[type=number] { padding:0 3px; text-align:center; }
  #diaryView .diary-grid .staff-row button { height:42px; font-size:var(--bs-text-18); }
  #diaryView .diary-grid .staffing-total { padding:14px; background:#f5f8fb; font-size:var(--bs-text-15); }
  #diaryView .diary-grid .staffing-total strong { font-size:var(--bs-text-17); }
  #diaryView .diary-photos { padding:20px 16px; background:#fbfcfe; }
  #diaryView .diary-photos h3 { font-size:var(--bs-text-18); font-weight:600; }
  #diaryView .diary-photos .section-head p { font-size:var(--bs-text-14); line-height:1.5; color:var(--diary-muted); }
  #diaryView .diary-photos .count { font-size:var(--bs-text-13); }
  #diaryView .diary-photos .upload-btn { min-height:42px; padding:10px 13px; font-size:var(--bs-text-15); font-weight:500; }
  #diaryView .diary-photo-list { gap:12px; }
  #diaryView .diary-photo-card img { object-fit:contain; image-orientation:from-image; background:#edf2f5; }
  #diaryView .diary-photo-card > button > span { padding:9px; font-size:var(--bs-text-13); font-weight:500; }
  #diaryView .diary-photo-remove { position:absolute; top:8px; right:8px; display:flex; align-items:center; justify-content:center; width:28px; height:28px; min-width:0; min-height:0; margin:0; padding:0; border:1px solid #ffffff60; border-radius:50%; background:#142d46ed; color:#fff; box-shadow:0 1px 4px #0003; }
  #diaryView .diary-photo-remove::after { content:""; position:absolute; inset:-8px; border-radius:50%; }
  #diaryView .diary-photo-remove svg { flex:none; width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  #diaryView .diary-photo-remove:hover { background:#234964; }
  #diaryView .editor-footer { gap:16px; padding:14px 16px; font-size:var(--bs-text-13); color:var(--diary-muted); }
  #diaryView .editor-footer button { min-height:36px; font-size:var(--bs-text-14); font-weight:500; }
  #diaryView :is(button,summary,[role=button]):focus-visible { outline:2px solid #ce3832; outline-offset:3px; }
}
@media screen and (max-width:1150px) {
  #diaryView > .view-heading { align-items:flex-start; flex-direction:column; gap:12px; }
  #diaryView .diary-layout { grid-template-columns:236px minmax(0,1fr); gap:14px; }
  #diaryView .diary-grid { grid-template-columns:minmax(0,1fr); }
  #diaryView .diary-grid .staffing-box { grid-column:1/-1; width:100%; }
  #diaryView .diary-grid .staffing-head { justify-content:space-between; }
}
@media screen and (max-width:767px) {
  #diaryView .diary-layout { grid-template-columns:minmax(0,1fr); }
  #diaryView .diary-heading-actions { width:100%; }
  #diaryView .diary-heading-actions .secondary-btn { font-size:var(--bs-text-15); }
  #diaryView .diary-context-bar { padding:12px; }
  #diaryView .diary-date-picker { width:100%; }
  #diaryView .diary-grid { padding:0 12px 12px; gap:16px; }
  #diaryView .diary-section { grid-template-columns:minmax(0,1fr); }
  #diaryView .diary-section > label, #diaryView .diary-section.is-empty:not(:focus-within) > label { padding:11px 12px; border-right:0; border-bottom:1px solid var(--diary-line); font-size:var(--bs-text-16); }
  #diaryView .diary-photos { padding:16px 12px; }
  #diaryView .diary-photos .section-head { align-items:flex-start; }
  #diaryView .diary-grid .staff-row button { min-height:44px; }
  #diaryView .editor-footer { align-items:flex-start; flex-wrap:wrap; }
}


/* Compact month navigation: one readable line per day. */
@media screen {
  #diaryView .diary-utility-actions { display:flex; align-items:center; justify-content:flex-end; gap:10px; flex-wrap:wrap; margin:0; }
  #diaryView .diary-utility-actions .secondary-btn { min-height:36px; font-size:13px; }
  #diaryView .day-list-card > .section-head { padding:16px 16px 12px; border-bottom:0; }
  #diaryView .diary-search { padding:0 14px 12px; }
  #diaryView .diary-search > span:first-child { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
  #diaryView .day-list { padding:0 12px 12px; gap:0; }
  #diaryView .diary-month-group { border:0; border-bottom:1px solid var(--diary-line); border-radius:0; background:#fff; box-shadow:none; }
  #diaryView .diary-month-group:last-child { border-bottom:0; }
  #diaryView .diary-month-summary { display:flex; align-items:center; gap:12px; min-height:46px; padding:10px 4px; }
  #diaryView .diary-month-summary > span { display:flex; align-items:center; gap:8px; flex:1; min-width:0; flex-wrap:nowrap; }
  #diaryView .diary-month-summary strong { font-weight:600; white-space:nowrap; }
  #diaryView .diary-month-summary small { margin-left:auto; }
  #diaryView .diary-month-summary > svg { width:16px; height:16px; flex:none; fill:none; stroke:currentColor; stroke-width:1.5; }
  #diaryView .diary-month-group[open] > .diary-month-summary { background:#fff; }
  #diaryView .diary-month-group[open] > .diary-month-summary > svg { transform:rotate(90deg); }
  #diaryView .diary-month-days { padding:0 0 8px; gap:0; }
  #diaryView .diary-month-days .day-item { display:block; width:100%; min-height:36px; padding:8px 10px; border:0; border-radius:5px; background:#fff; color:#203848; }
  #diaryView .diary-day-line { display:grid; grid-template-columns:80px minmax(0,1fr) 14px; align-items:center; gap:8px; font-size:15px; font-weight:400; line-height:20px; text-align:left; }
  #diaryView .diary-day-date { font-variant-numeric:tabular-nums; }
  #diaryView .diary-day-line svg { width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:1.5; opacity:0; }
  #diaryView .diary-month-days .day-item:hover { background:#f1f5f6; }
  #diaryView .diary-month-days .day-item.active { padding-left:10px; color:#173f36; background:#eaf5f0; box-shadow:inset 3px 0 #399777; }
  #diaryView .day-item.active .diary-day-line { font-weight:600; }
  #diaryView .day-item.active .diary-day-line svg { opacity:1; }
  #diaryView .day-match { margin-top:5px; }
  #diaryView .diary-load-more { display:flex; align-items:center; justify-content:center; gap:8px; width:calc(100% - 16px); min-height:38px; margin:5px 8px 4px; padding:7px 10px; border:1px solid #c7d9d4; border-radius:6px; background:#f3f7f7; color:#285849; font-family:var(--bs-font-family); font-size:var(--bs-text-14); font-weight:600; line-height:22px; }
  #diaryView .diary-load-more::before, #diaryView .diary-load-more::after { content:""; flex:none; width:16px; height:16px; background:currentColor; mask-position:center; mask-repeat:no-repeat; mask-size:contain; }
  #diaryView .diary-load-more::before { mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11a9 9 0 1 1 2.6 7M3 4v7h7M12 7v5l3 2'/%3E%3C/svg%3E"); }
  #diaryView .diary-load-more::after { width:13px; height:13px; margin-left:auto; mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 6 5 5 5-5m-10 7 5 5 5-5'/%3E%3C/svg%3E"); }
  #diaryView .diary-load-more:hover:not(:disabled) { background:#e8f4ef; border-color:#3b987c; }
  #diaryView .diary-load-more:disabled { cursor:wait; opacity:.65; }
}
@media screen and (pointer:coarse) { #diaryView .diary-month-days .day-item { min-height:44px; } }

@media screen {
  #diaryView .diary-context-bar { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
  #diaryView .diary-context-bar .diary-date-picker { flex:1; max-width:650px; }
  #diaryView .diary-utility-actions { flex:none; flex-wrap:nowrap; gap:8px; padding-top:2px; }
  #diaryView .diary-options { position:relative; }
  #diaryView .diary-options:not(:has(button:not(.hidden))) { display:none; }
  #diaryView .diary-options > summary { display:flex; align-items:center; justify-content:center; width:36px; height:36px; border:1px solid #d9e3e8; border-radius:7px; background:#fff; color:#526975; cursor:pointer; list-style:none; }
  #diaryView .diary-options > summary::-webkit-details-marker { display:none; }
  #diaryView .diary-options > summary svg { width:21px; height:21px; fill:currentColor; }
  #diaryView .diary-options > summary:hover, #diaryView .diary-options[open] > summary { background:#f2f5f6; color:#203848; }
  #diaryView .diary-options-panel { position:absolute; z-index:20; top:calc(100% + 7px); right:0; width:min(312px,calc(100vw - 32px)); padding:8px; background:#fff; border:1px solid #d9e3e8; border-radius:10px; box-shadow:0 12px 32px #20384820; }
  #diaryView .diary-options-panel button { display:flex; align-items:center; gap:10px; width:100%; min-height:44px; padding:10px; border:0; border-radius:6px; background:#fff; color:#203848; text-align:left; font-family:var(--bs-font-family); font-size:var(--bs-text-16); font-weight:400; cursor:pointer; }
  #diaryView .diary-options-panel button:hover { background:#f0f5f3; }
  #diaryView .diary-options-panel button svg { flex:none; width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
}
@media screen and (max-width:767px) {
  #diaryView .diary-context-bar { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
  #diaryView .diary-utility-actions { padding:0; justify-self:end; }
  #diaryView .diary-options > summary { width:44px; height:44px; }
}


@media screen {
  #diaryView .diary-edit-actions { display:none; }
  #diaryView .is-editing .diary-edit-actions { display:flex; align-items:center; justify-content:flex-end; gap:12px; padding:8px 15px 12px; }
  #diaryView .diary-edit-hint { color:var(--diary-muted); font-size:var(--bs-text-13); line-height:1.4; }
  #diaryView .diary-edit-done { flex-shrink:0; min-height:40px; padding:8px 16px; background:var(--navy); color:#fff; border:0; border-radius:6px; font:inherit; font-size:var(--bs-text-14); cursor:pointer; }
  #diaryView .diary-edit-done:disabled { opacity:.65; cursor:wait; }
  #diaryView .diary-section.is-editing { box-shadow:inset 3px 0 #365b7a; }
}

@media screen {
  #diaryView .diary-edit-hint:empty { display:none; }
}

/* Alternative B: retain every row, with quiet empty writing surfaces. */
@media screen {
  #diaryView .diary-rich-editor::before { content:none!important; }
  #diaryView .diary-section { border-bottom-color:#e5ebef; }
  #diaryView .diary-edit-done:focus-visible { outline:2px solid #365b7a; outline-offset:2px; }
}


@media screen {
  #diaryView .diary-options-panel{font-family:var(--bs-font-family)}
  #diaryView .diary-options-group:not(:has(button:not(.hidden))){display:none}
  #diaryView .diary-options-group+.diary-options-group{border-top:1px solid #e1e8eb;margin-top:6px;padding-top:6px}
  #diaryView .diary-options-group:first-child:not(:has(button:not(.hidden)))+.diary-options-group{border:0;margin-top:0;padding-top:0}
  #diaryView .diary-options-heading{margin:6px 10px;color:#667a85;font-size:var(--bs-text-14);font-weight:600;line-height:1.4}
  #diaryView .diary-options-panel button{align-items:flex-start;line-height:1.5}
  #diaryView .diary-options-panel button svg{margin-top:3px}
  #diaryView .diary-options-panel button span{display:grid;gap:2px;font-size:var(--bs-text-16);line-height:1.5}
  #diaryView .diary-options-panel button small{display:block;font-size:var(--bs-text-16);line-height:1.5;color:#667a85;font-weight:400}
  #diaryView .diary-options-panel button:focus-visible{outline:2px solid #285b49;outline-offset:-2px}
}

/* Bemanning: enkel tabellrytme og total direkte under Antall-kolonnen. */
@media screen {
  #diaryView .diary-staff-columns{
    display:grid;
    grid-template-columns:minmax(0,1fr) 58px 34px;
    gap:7px;
    margin:0;
    padding:12px 13px 0;
    color:#607580;
    font-size:var(--bs-text-12);
    font-weight:500;
  }
  #diaryView .diary-staff-columns>span:nth-child(2){text-align:center}
  #diaryView .diary-grid #staffingRows:not(:empty){gap:8px;padding:8px 13px 14px}
  #diaryView .diary-grid .staff-row{grid-template-columns:minmax(0,1fr) 58px 34px;gap:7px}
  #diaryView .diary-grid .staff-row input{background:#fff}
  #diaryView .diary-grid .staff-row input[type=number]{padding-left:3px;padding-right:3px;text-align:center}
  #diaryView .diary-grid .staff-row button{border:0;background:transparent;box-shadow:none}
  #diaryView .diary-grid .staffing-total{
    display:grid;
    grid-template-columns:minmax(0,1fr) 58px 34px;
    align-items:center;
    gap:7px;
    margin:0;
    padding:10px 13px;
    border-top:1px solid #dce4e7;
    background:#f5f8fa;
  }
  #diaryView .diary-grid .staffing-total>span{grid-column:1;color:#314b59;font-weight:600}
  #diaryView .diary-grid .staffing-total>strong{
    grid-column:2;
    display:flex;
    align-items:center;
    justify-content:center;
    width:58px;
    min-height:38px;
    margin:0;
    padding:0 3px;
    border:0;
    border-radius:0;
    background:transparent;
    color:var(--navy);
    font-size:var(--bs-text-15);
    font-weight:700;
    line-height:1;
    text-align:center;
  }
}
@media screen and (max-width:767px){
  #diaryView .diary-staff-columns{font-size:var(--bs-text-14)}
  #diaryView .diary-grid .staffing-total>strong{min-height:42px;font-size:var(--bs-text-17)}
}

