/* 기름값 계산기 전용 CSS (2026-10-14). 2패널 계산형 fu-*. 공용 부품은 assets/v2.css. 시각 요소(R45): 리터 칸 차오름(첫 표시 40ms 간격·값 변경 때 새 칸만), 연비별 막대 폭 전환. 움직임: transitions.dev --ease-smooth-out·400/500ms, reduced-motion이면 끔.
   두 열 ↔ 한 열 전환은 화면 폭이 아니라 툴 폭(container fu). */
.fu-work{container:fu / inline-size}
.fu-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.fu-in{padding:16px 18px 18px;min-width:0}
.fu-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px 14px}
.fu-fields .v2-f{min-width:0}
.fu-fields .v2-f.full{grid-column:1 / -1}
.fu-fields .v2-f>.v2-label{display:block}
.fu-seg{margin-top:5px;flex-wrap:wrap}
.fu-seg button{height:32px;padding:0 12px;font-family:var(--sans);font-size:12.5px;font-weight:700;white-space:nowrap}
#fuTrip{display:flex;flex-wrap:nowrap;width:100%}
#fuTrip button{flex:1 1 0;min-width:0;height:var(--v2-ctl,42px);padding:0 6px;font-size:13.5px;line-height:1.15;white-space:normal;overflow-wrap:anywhere}
.fu-chips{margin-top:8px;flex-wrap:wrap}
.fu-chips button{height:28px;padding:0 10px;font-family:var(--sans);font-size:12px;font-weight:600}
.fu-hint{display:block;margin-top:4px;font-family:var(--sans);font-size:12px;line-height:1.5;color:var(--muted)}
.fu-fields .v2-f.full>.fu-hint:first-child{margin-top:-6px}
.fu-caveat{margin:10px 0 0;font-family:var(--sans);font-size:12px;line-height:1.5;color:var(--muted)}
.fu-acts{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-top:14px}
.fu-out{padding:16px 18px 18px;min-width:0;border-left:1px solid var(--soft);display:flex;flex-direction:column}
.fu-out .v2-label{display:block;margin-bottom:6px}
.fu-out .v2-big{flex-wrap:wrap;row-gap:6px;font-size:40px}
.fu-out .v2-big>span{min-width:0;overflow-wrap:anywhere}
.fu-out .v2-big small{flex-basis:100%;display:block;margin:0;font-family:var(--sans);font-size:12.5px;font-weight:600;color:var(--muted)}
.fu-rows{margin-top:14px;flex:1}
.fu-rows li span{min-width:0;flex:1 1 auto}
.fu-rows li span em{display:block;margin-top:2px;font-size:11.5px;color:var(--muted);opacity:1;max-width:100%;overflow-wrap:anywhere}
.fu-rows li b{flex:0 0 auto}
.fu-out .v2-formula{white-space:normal;overflow-wrap:anywhere;line-height:1.6}
.fu-foot{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid var(--soft)}
.fu-foot .v2-status{margin-left:auto}
.fu-out .v2-big.is-empty span{font-size:18px;font-weight:600;color:var(--muted)}
.fu-box{padding:14px 18px 18px;border-top:1px solid var(--soft)}
.fu-box[hidden]{display:none}
.fu-box>.v2-label{display:block;margin-bottom:10px}
.fu-note{margin:8px 0 0;font-family:var(--sans);font-size:12px;line-height:1.5;color:var(--muted)}
.fu-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);margin:-1px}
/* 리터 칸: 한 칸 = 1·2·5… 단위, 아래에서 위로 차오름 */
.fu-cells{display:grid;grid-template-columns:repeat(auto-fill,minmax(26px,1fr));gap:5px;max-width:560px}
.fu-cells i{position:relative;display:block;aspect-ratio:3 / 4;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--paper)}
.fu-cells i[hidden]{display:none}
.fu-cells b{position:absolute;left:0;right:0;bottom:0;height:100%;background:var(--accent);transform-origin:50% 100%;transform:scaleY(var(--f,0));transition:transform 500ms cubic-bezier(.22,1,.36,1);transition-delay:inherit}
.fu-cells i{transition-delay:0ms}
/* 연비별 기름값 막대 */
.fu-sens{display:grid;gap:7px;margin:0;padding:0;list-style:none;font-family:var(--sans);font-size:13px;font-variant-numeric:tabular-nums}
.fu-sens li{display:grid;grid-template-columns:minmax(92px,auto) minmax(0,1fr) auto minmax(64px,auto);align-items:center;gap:10px}
.fu-sl{color:var(--muted);font-weight:600;white-space:nowrap}
.fu-st{position:relative;height:14px;border-radius:4px;background:var(--wash);overflow:hidden}
.fu-st i{position:absolute;left:0;top:0;bottom:0;width:0;border-radius:4px;background:color-mix(in srgb,var(--ink) 55%,var(--paper));transition:width 400ms cubic-bezier(.22,1,.36,1)}
.fu-sens b{font-weight:700;color:var(--ink);white-space:nowrap;text-align:right}
.fu-sens em{font-style:normal;font-size:12px;color:var(--muted);white-space:nowrap;text-align:right}
.fu-sens li.is-cur .fu-sl{color:var(--ink)}
.fu-sens li.is-cur .fu-st i{background:var(--accent)}
/* 거리별 표 */
.fu-tblwrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.fu-table{width:100%;border-collapse:collapse;font-family:var(--sans);font-size:13px;font-variant-numeric:tabular-nums}
.fu-table th,.fu-table td{padding:6px 8px;border-top:1px solid var(--soft);text-align:left;white-space:nowrap}
.fu-table th{font-size:11.5px;font-weight:700;color:var(--muted);border-top:0}
.fu-table .n{text-align:right}
.fu-table td small{font-family:var(--sans);font-size:10.5px;font-weight:700;color:var(--ink);margin-left:4px}
.fu-table tr.is-cur td{background:var(--accent-wash);color:var(--ink)}
.fu-table:empty{display:none}
@media (prefers-reduced-motion:reduce){ .fu-cells b,.fu-st i{transition:none} }
@container fu (max-width:719px){
  .fu-grid{grid-template-columns:minmax(0,1fr)}
  .fu-out{order:-1;border-left:0;border-bottom:1px solid var(--soft)}
}
@container fu (max-width:440px){
  .fu-in,.fu-out,.fu-box{padding-left:12px;padding-right:12px}
  .fu-sens li{grid-template-columns:minmax(78px,auto) minmax(0,1fr) auto;gap:2px 8px}
  .fu-sens em{grid-column:3;font-size:11px}
  .fu-sens em:empty{display:none}
  .fu-out .v2-big{font-size:34px}
}
@container v2in (max-width:330px){ .fu-fields{grid-template-columns:minmax(0,1fr)} }
