/* D안: 산차별 단계와 상태 색상을 표시한다. 화면 전용이며 인쇄 양식은 유지한다. */
@media screen {
 .sow-a{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:22px;color:var(--ink);font-size:.9rem;line-height:1.6}
 .sow-a *{box-sizing:border-box}.sow-a h2,.sow-a p{margin:0}.sow-a h2{font-size:.95rem;font-weight:700}
 .sow-a .sa-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:20px}.sow-a .sa-id{display:flex;align-items:center;gap:16px;min-width:0;flex-wrap:wrap}.sow-a .card-header-number{font-size:2rem;font-weight:600;overflow-wrap:anywhere;color:var(--ink);background:none;padding:0}
 .sow-a .sa-state{display:flex;align-items:center;gap:6px}.sow-a .sa-muted,.sow-a small{color:var(--ink-soft);font-size:.8rem}.sow-a .sa-blue{color:var(--accent)}.sow-a .sa-danger{color:var(--t-red,var(--bad))}
 .sow-a .sa-manage{margin-left:auto}.sow-a summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:44px}.sow-a summary::-webkit-details-marker{display:none}.sow-a summary::after{content:'＋';color:var(--ink-soft)}.sow-a details[open]>summary::after{content:'−'}
 .sow-a .sa-tools{display:flex;gap:8px;flex-wrap:wrap;padding-top:8px}.sow-a .sa-button{display:inline-flex;align-items:center;gap:6px;justify-content:center;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:9px 12px;min-height:42px;font:inherit;cursor:pointer}.sow-a .sa-button:hover{border-color:var(--accent)}.sow-a .sa-button[data-danger]{color:var(--t-red,var(--bad))}.sow-a .sa-primary{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.sow-a button:disabled{opacity:.6;cursor:wait}
 .sow-a .sa-current{border:1px solid var(--line);border-radius:8px;padding:16px}.sow-a .sa-section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}.sow-a .sa-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sow-a .sa-flow span{display:block;font-size:.8rem;color:var(--ink-soft)}.sow-a .sa-flow b{display:block;margin-top:4px;overflow-wrap:anywhere;font-weight:600}
 .sow-a .sa-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:8px;margin:18px 0}.sow-a .sa-metric{padding:14px;min-width:0}.sow-a .sa-metric+.sa-metric{border-left:1px solid var(--line)}.sow-a .sa-metric>span{display:block;font-size:.8rem;color:var(--ink-soft)}.sow-a .sa-metric strong{display:block;font-size:1.6rem;font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.sow-a .sa-metric small{margin-left:4px;font-size:.8rem}
 .sow-a .sa-parity{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:0;margin:0;background:none}.sow-a .sa-parity>summary{padding:12px 0;flex-wrap:wrap}.sow-a .sa-records{padding-bottom:10px}.sow-a .sa-attempt{padding:12px 0;border-top:1px solid var(--line)}.sow-a .sa-attempt-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.sow-a .sa-attempt-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.sow-a .sa-record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 0}.sow-a .sa-record-grid span{font-size:.8rem;color:var(--ink-soft)}.sow-a .sa-record-grid b{display:block;color:var(--ink);font-weight:600;overflow-wrap:anywhere}.sow-a .sa-past{display:flex;align-items:center;gap:4px}
 .sow-a .sa-alert{display:flex;gap:12px;border-left:3px solid var(--t-red,var(--bad));padding:12px 0 12px 14px;margin-bottom:16px}.sow-a .sa-alert strong,.sow-a .sa-alert>div:first-child{color:var(--t-red,var(--bad))}.sow-a .sa-alert[data-tone=warning]{border-left-color:var(--warn)}.sow-a .sa-alert[data-tone=warning] strong,.sow-a .sa-alert[data-tone=warning]>div:first-child{color:var(--warn)}.sow-a .sa-alert p{font-size:.8rem;color:var(--ink-soft)}.sow-a .sa-jump{display:inline-flex;gap:6px;align-items:center;border:0;background:none;color:var(--accent);min-height:40px;cursor:pointer;padding:6px 0;font:inherit;font-size:.8rem}.sow-a .sa-ended{display:flex;align-items:center;gap:8px;color:var(--ink-soft);margin-bottom:16px}.sow-a .sa-empty{padding:12px 0}
 .sow-a .sa-note-form{padding:12px 0}.sow-a .sa-note-form label{display:block;font-size:.85rem}.sow-a textarea,.sow-a input{display:block;max-width:100%;border:1px solid var(--line);border-radius:6px;background:var(--field,var(--surface));color:var(--ink);padding:10px;font:inherit;font-size:16px;margin:6px 0}.sow-a textarea{width:100%;min-height:80px;resize:vertical}.sow-a .sa-note-footer{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:8px}.sow-a .sa-note-history{border-bottom:1px solid var(--line);padding:10px 0}.sow-a .sa-note-history p{white-space:pre-wrap;overflow-wrap:anywhere}.sow-a .sa-note-status{margin-top:8px}.sow-a #paperCards{padding:18px 0 0;border:0}
 #sowAttentionList{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:12px 16px;margin:0 0 16px;color:var(--ink)}#sowAttentionList>summary{cursor:pointer;min-height:32px}#sowAttentionList .sa-list-controls{display:flex;gap:8px;margin:12px 0;flex-wrap:wrap}#sowAttentionList select,#sowAttentionList button{font:inherit;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:9px;min-height:42px}.sa-attention-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none}.sa-attention-row>span{flex:1}.sa-attention-row small{color:var(--ink-soft)}.sa-attention-row strong{color:var(--accent)}
 :root[data-theme=taegeuk] .sow-a .card-header-number,:root[data-theme=taegeuk] .sow-a .sa-metric strong{font-family:'Noto Serif KR','Batang',serif}

 .sow-a .sa-current{border:0;padding:0;border-radius:0}
 .sow-a .sa-cycle{--sa-tone:var(--t-blue,var(--accent));--sa-wash:color-mix(in srgb,var(--sa-tone) 9%,var(--surface));border:1px solid var(--line);border-left:4px solid var(--sa-tone);border-radius:8px;background:var(--surface);padding:0;margin:0 0 18px;overflow:hidden}
 .sow-a .sa-cycle[data-tone=complete]{--sa-tone:var(--t-green,var(--good))}
 .sow-a .sa-cycle[data-tone=attention]{--sa-tone:var(--t-red,var(--bad))}
 .sow-a .sa-cycle[data-tone=ended]{--sa-tone:var(--ink-soft)}
 .sow-a .sa-cycle>summary{background:var(--sa-wash);padding:16px;flex-wrap:wrap}
 .sow-a .sa-cycle>summary>div{min-width:0;flex:1}.sow-a .sa-cycle>summary strong{font-size:1.05rem}.sow-a .sa-cycle>summary small{display:block}
 .sow-a .sa-cycle .sa-past{display:flex;gap:4px;align-items:center}
 .sow-a .sa-cycle-status{display:inline-flex;align-items:center;gap:6px;font-size:.85rem;font-weight:600;color:var(--sa-tone)}
 .sow-a .sa-cycle-body{padding:16px;min-width:0}.sow-a .sa-flow{gap:24px;margin-bottom:16px}
 .sow-a .sa-stage{position:relative;padding:12px;border-radius:6px;min-width:0;background:var(--sa-wash);color:var(--sa-tone)}
 .sow-a .sa-stage+.sa-stage::before{content:'→';position:absolute;left:-19px;top:50%;transform:translateY(-50%);color:var(--ink-soft)}
 .sow-a .sa-stage .sa-stage-label{display:flex;align-items:center;gap:5px;color:inherit}.sow-a .sa-stage b{color:var(--ink);font-variant-numeric:tabular-nums}.sow-a .sa-stage small{display:block;margin-top:4px}
 .sow-a .sa-stage[data-state=pending],.sow-a .sa-stage[data-state=recorded],.sow-a .sa-stage[data-state=ended]{background:var(--surface-2,var(--surface));color:var(--ink-soft)}
 .sow-a .sa-stage[data-state=attention]{background:var(--bad-soft);color:var(--t-red,var(--bad))}
 .sow-a .sa-cycle-issues{background:var(--bad-soft);color:var(--t-red,var(--bad));padding:12px;border-radius:6px;margin-bottom:14px;font-size:.85rem;overflow-wrap:anywhere}
 .sow-a .sa-cycle-issues p+p{margin-top:6px}.sow-a .sa-cycle-body>.sa-attempt{padding-top:0;border-top:0}
 .sow-a .sa-cycle-body>.sa-attempt .sa-record-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sow-a .sa-cycle-body>.sa-attempt .sa-record-grid b{font-size:1.2rem}
 .sow-a .sa-previous-attempts{border-top:1px solid var(--line);margin-top:14px}.sow-a .sa-previous-attempts>summary{padding:12px 0;flex-wrap:wrap;color:var(--t-red,var(--bad))}
 .sow-a .sa-attempt-past{padding:14px;border:0;border-radius:6px;background:var(--bad-soft);margin-top:8px}.sow-a .sa-attempt-past .sa-attempt-head{color:var(--ink)}
 .sow-a .sa-button:focus-visible,.sow-a summary:focus-visible,.sow-a .sa-jump:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
 .sow-a .sa-cycle svg,.sow-a .sa-cycle i[data-lucide]{width:16px;height:16px;flex-shrink:0}
 @media(max-width:600px){.sow-a .sa-current{padding:0}.sow-a .sa-cycle-body,.sow-a .sa-cycle>summary{padding:14px}.sow-a .sa-flow{grid-template-columns:1fr;gap:8px}.sow-a .sa-stage{display:grid;grid-template-columns:minmax(60px,.7fr) minmax(0,1fr);column-gap:10px;align-items:center}.sow-a .sa-stage small{grid-column:2}.sow-a .sa-stage+.sa-stage::before{display:none}.sow-a .sa-stage b{margin:0}.sow-a .sa-cycle-body>.sa-attempt .sa-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sow-a .sa-button{min-height:44px}.sow-a .sa-attempt-head{overflow-wrap:anywhere}.sow-a .sa-cycle-status{flex-wrap:wrap}}
 @media(max-width:600px){.sow-a{padding:16px}.sow-a .sa-id{gap:10px}.sow-a .sa-flow{gap:8px}.sow-a .sa-metric{padding:10px}.sow-a .sa-metric strong{font-size:1.3rem}.sow-a .sa-current{padding:0}.sow-a .sa-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sow-a .sa-parity>summary{gap:8px}.sa-attention-row{gap:10px}.sa-attention-row>span{min-width:0;overflow-wrap:anywhere}}
}

/* ── 분만 흐름 — 산차마다 접어 둔 막대 (shared/farrowing-flow.js 가 그린다) ──
   바깥(분만 흐름)도 안쪽(시각 하나씩 보기)도 접힌 채로 연다. 산차가 많을 때
   펼쳐져 있으면 카드가 길어져 오히려 보기 힘들다. */
.sow-a .sa-flow-log{border-top:1px dashed var(--line);margin-top:4px}
.sow-a .sa-flow-log>summary{font-size:.85rem;font-weight:600;min-height:40px;color:var(--ink)}
.sow-a .sa-flow-body{padding-bottom:10px}
/* 분만사 화면에서 남긴 메모 — 숫자보다 먼저 읽히게 위에 둔다 */
.sow-a .sa-flow-memo{margin:2px 0 10px;padding:9px 11px;border-radius:9px;background:var(--accent-10);
  border:1px solid var(--accent-30,var(--line));color:var(--ink);font-size:.85rem;line-height:1.6;white-space:pre-wrap}
.sow-a .sa-bar-help{font-size:.74rem;margin:2px 0 8px}
.sow-a .sa-bar{position:relative;height:28px;border-radius:6px;background:var(--surface-3,var(--line));overflow:hidden}
.sow-a .sa-band{position:absolute;top:0;bottom:0;background:color-mix(in srgb,var(--warn,#c2680c) 22%,transparent)}
.sow-a .sa-tick{position:absolute;top:5px;bottom:5px;width:3px;margin-left:-1.5px;border-radius:2px;background:var(--accent)}
.sow-a .sa-tick.slow{background:var(--warn,#c2680c)}
.sow-a .sa-tick.dead{background:var(--ink-soft)}
.sow-a .sa-bar-axis{display:flex;justify-content:space-between;font-size:.7rem;color:var(--ink-soft);
  font-variant-numeric:tabular-nums;margin-top:3px}
.sow-a .sa-flow-num{grid-template-columns:repeat(4,minmax(0,1fr));padding:10px 0 2px}
.sow-a .sa-flow-worst b{color:var(--warn,#c2680c)}
.sow-a .sa-flow-rows{border-top:1px dashed var(--line);margin-top:6px}
.sow-a .sa-flow-rows>summary{font-size:.8rem;font-weight:600;min-height:38px;color:var(--ink-soft)}
.sow-a .sa-brow{display:flex;align-items:center;gap:9px;padding:6px 0;border-top:1px dashed var(--line);font-size:.85rem}
.sow-a .sa-brow .i{min-width:1.8em;font-weight:700;color:var(--ink-soft);font-size:.72rem}
.sow-a .sa-brow .t{font-variant-numeric:tabular-nums;font-weight:600;min-width:3.4em}
.sow-a .sa-brow .g{color:var(--ink-soft);font-size:.74rem}
.sow-a .sa-brow.dead .t{color:var(--ink-soft);text-decoration:line-through}
.sow-a .sa-brow.slow .g{color:var(--warn,#c2680c);font-weight:700}
@media (max-width:480px){.sow-a .sa-flow-num{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 확인 메모 머리줄 — 그때 모돈 상태("3산 임신 중") · 날짜 · 쓴 사람 · 지우기 */
.sow-a .sa-note-hd{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.sow-a .sa-note-stage{font-size:.8rem;font-weight:800;color:var(--accent-text,var(--accent));background:var(--accent-10);border-radius:6px;padding:2px 7px}
.sow-a .sa-note-hd small{color:var(--ink-dim)}
.sow-a .sa-note-del{margin-left:auto;display:inline-flex;align-items:center;gap:4px;padding:5px 9px!important;min-height:0!important;border-radius:7px!important;font:inherit;font-size:.76rem!important;cursor:pointer;
 background:transparent!important;color:var(--t-red,#c0392b)!important;border:1px solid color-mix(in srgb,var(--t-red,#c0392b) 45%,transparent)!important}
.sow-a .sa-note-del svg.hanul-line-icon{width:14px;height:14px}
.sow-a .sa-note-history p{margin:6px 0 0}
.sow-a .sa-note-hd small{order:3;flex-basis:100%}   /* 상태·지우기 한 줄, 날짜·쓴 사람은 그 밑 */
