/* =====================================================================
   Aufmaß V4 — Insektenschutz (Entwurf Fe6S52UzfuHmVRhT2XvmuT): Auswahl beim Messen, Bildschirm beim Bestellen.
   Fester Bildschirm im iPad-Format, nur Liste und Rechenweg scrollen.
   ===================================================================== */
.isg-wahlen { display: flex; flex-direction: column; gap: 7px; margin-top: 10px; }
.isg-wahl { display: grid; grid-template-columns: minmax(0, 1fr) 12px; gap: 0 8px; align-items: center; text-align: left; width: 100%; min-height: 48px; padding: 6px 10px 6px 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-1); color: var(--ink); font: inherit; cursor: pointer; }
.isg-wahl span { font-size: 11px; color: var(--muted); }
.isg-wahl b { grid-column: 1; font-size: 13px; font-weight: 600; line-height: 1.25; }
.isg-wahl i { grid-column: 2; grid-row: 1 / span 2; font-style: normal; color: var(--muted); }
.isg-achtung { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 8px; margin-top: 10px; background: var(--open-bg); color: var(--open-text); border: 1.5px solid var(--open-text); border-radius: 10px; padding: 9px 11px; font-size: 12.5px; line-height: 1.35; }
.isg-achtung svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; }
.isg-achtung b { display: block; font-size: 13px; }
.isg-achtung span { color: var(--ink); }
.isg-note { font-size: 12.5px; line-height: 1.5; color: var(--txt2); background: var(--surface-3); border-radius: 10px; padding: 10px 12px; margin-top: 10px; }
.isg-note b { color: var(--ink); }

/* Auswahl als Blatt */
.isg-lay { position: fixed; left: 0; top: 0; width: 100vw; height: var(--vvh, 100vh); box-sizing: border-box; z-index: 1000; background: rgba(22, 24, 28, .32); display: flex; align-items: center; justify-content: center; padding: 24px; }
.isg-pop { width: min(560px, 100%); max-height: 100%; background: var(--surface-1); border: 1.5px solid var(--line); border-radius: 18px; box-shadow: var(--sh-pop); display: flex; flex-direction: column; overflow: hidden; color: var(--ink); }
.isg-pop-h { flex: none; display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; border-bottom: 1px solid var(--line-light); }
.isg-x { width: 34px; height: 34px; border-radius: 9px; border: 1px solid var(--line-light); background: var(--surface-1); color: var(--muted); font-size: 17px; cursor: pointer; }
.isg-pop-l { overflow-y: auto; padding: 6px; display: flex; flex-direction: column; gap: 2px; -webkit-overflow-scrolling: touch; }
.isg-opt { display: flex; justify-content: space-between; align-items: center; gap: 12px; text-align: left; min-height: 52px; padding: 7px 12px; border: 0; border-radius: 9px; background: none; color: var(--ink); font: inherit; cursor: pointer; flex: none; }
.isg-opt small { display: block; font-size: 11.5px; color: var(--muted); margin-top: 1px; }
.isg-opt b { font-size: 14px; font-weight: 600; }
.isg-opt em { font: 600 13px var(--font-mono); font-style: normal; color: var(--txt2); white-space: nowrap; }
.isg-opt.on { background: var(--brand); color: var(--on-accent); }
.isg-opt.on small, .isg-opt.on em { color: var(--on-accent); }
.isg-sf { margin: 6px; padding: 10px 12px; border: 1.5px dashed var(--open-text); border-radius: 10px; background: var(--open-bg); flex: none; }
.isg-sf b { display: block; color: var(--open-text); }
.isg-sf small { display: block; color: var(--ink); margin: 2px 0 8px; }
.isg-sf-z { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
.isg-sf-z input { height: 44px; padding: 0 10px; border: 1.5px solid var(--line); border-radius: 9px; background: var(--surface-1); color: var(--ink); font: inherit; font-size: 14px; min-width: 0; }

/* Bildschirm beim Bestellen */
.isg-screen { background: var(--app-bg); }
.isg-leer { padding: 28px; color: var(--txt2); font-size: 14px; }
.isg-bs { flex: 1; min-height: 0; display: grid; grid-template-columns: 292px minmax(0, 1fr); }
.isg-list { min-height: 0; overflow-y: auto; overscroll-behavior: contain; touch-action: pan-y; background: var(--surface-1); border-right: 1px solid var(--line-light); padding: 12px; display: flex; flex-direction: column; gap: 6px; }
.isg-gr { font: 700 11px var(--font-mono); letter-spacing: .05em; color: var(--muted); text-transform: uppercase; padding: 8px 4px 2px; }
.isg-gi { flex: none; text-align: left; background: var(--surface-1); border: 1.5px solid var(--line-light); border-radius: 12px; padding: 9px 11px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 2px 8px; align-items: center; color: var(--ink); font: inherit; cursor: pointer; }
.isg-gi.on { border-color: var(--brand); box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 12%, transparent); }
.isg-gi b { font-size: 13px; }
.isg-gi .m { font: 12.5px var(--font-mono); color: var(--txt2); grid-column: 1; }
.isg-gi .pr-t { font: 12.5px var(--font-mono); color: var(--muted); justify-self: end; }
.isg-st { font-size: 11px; font-weight: 700; padding: 3px 8px; border-radius: 999px; white-space: nowrap; justify-self: end; }
.isg-st.ok { color: var(--done-text); background: var(--done-bg); }
.isg-st.pr { color: var(--open-text); background: var(--open-bg); }
.isg-st.ha { color: var(--info-text); background: var(--info-bg); }
.isg-d { min-height: 0; min-width: 0; display: flex; flex-direction: column; }
.isg-res { flex: none; display: flex; align-items: center; gap: 18px; flex-wrap: wrap; background: var(--surface-1); border-bottom: 1px solid var(--line-light); padding: 12px 18px; }
.isg-res .ttl { font-weight: 700; font-size: 15px; }
.isg-res .sub { font-size: 12px; color: var(--muted); margin-top: 2px; }
.isg-res .kz { display: flex; flex-direction: column; gap: 1px; }
.isg-res .kz small { font: 700 10.5px var(--font-mono); letter-spacing: .06em; color: var(--muted); text-transform: uppercase; }
.isg-res .kz strong { font: 700 20px var(--font-mono); font-variant-numeric: tabular-nums; }
.isg-res .mi { margin-left: auto; display: flex; gap: 8px; align-items: center; }
.isg-s { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; touch-action: pan-y; padding: 14px 18px 18px; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 12px; align-content: start; }
.isg-sp { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.isg-card { background: var(--surface-1); border: 1px solid var(--line-light); border-radius: 14px; padding: 12px 14px; min-width: 0; }
.isg-ch { display: flex; justify-content: space-between; align-items: center; gap: 10px; min-height: 34px; }
.isg-ch .r { font: 12px var(--font-mono); color: var(--muted); text-align: right; }
.isg-cap { font: 700 11px var(--font-mono); letter-spacing: .07em; color: var(--brand); text-transform: uppercase; }
.isg-cap.g { color: var(--muted); }
.isg-link { background: none; border: 0; color: var(--brand); font: inherit; font-weight: 600; font-size: 12.5px; padding: 6px 0; cursor: pointer; }
.isg-seiten { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr) minmax(0, 1fr); gap: 8px; margin-top: 8px; }
.isg-sei { background: var(--surface-3); border-radius: 10px; padding: 8px; display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.isg-sei.mod { box-shadow: inset 0 0 0 1.5px var(--brand); }
.isg-sei .l { font: 700 10.5px var(--font-mono); letter-spacing: .06em; color: var(--muted); text-transform: uppercase; }
.isg-sei.o { grid-column: 2; grid-row: 1; }
.isg-sei.l { grid-column: 1; grid-row: 2; }
.isg-sei.r { grid-column: 3; grid-row: 2; }
.isg-sei.u { grid-column: 2; grid-row: 3; }
.isg-mitte { grid-column: 2; grid-row: 2; background: var(--surface-1); border: 2px solid var(--ink); border-radius: 4px; padding: 8px; display: flex; flex-direction: column; justify-content: center; gap: 5px; text-align: center; }
.isg-mitte small { display: block; font-size: 10.5px; color: var(--muted); }
.isg-mitte b { font: 600 13px var(--font-mono); }
.isg-lb { font-size: 11px; color: var(--muted); display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.isg-lb select, .isg-lb input, .isg-wert { width: 100%; min-width: 0; box-sizing: border-box; height: 36px; padding: 0 8px; border: 1.5px solid var(--line); border-radius: 9px; background: var(--surface-1); color: var(--ink); font: inherit; font-size: 13px; font-weight: 600; }
.isg-wert { display: flex; align-items: center; background: var(--surface-3); }
.isg-f2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 10px; margin-top: 8px; }
.isg-hand { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 8px; margin-top: 8px; }
.isg-tab { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; margin-top: 4px; }
.isg-tab th { font: 700 10.5px var(--font-mono); letter-spacing: .05em; color: var(--muted); text-align: right; padding: 3px 0; }
.isg-tab td { padding: 5px 0; border-top: 1px solid var(--line-lighter); font-size: 13px; }
.isg-tab td:not(:first-child) { text-align: right; font-family: var(--font-mono); width: 62px; }
.isg-tab td:first-child { color: var(--txt2); }
.isg-tab tr.sum td { font-weight: 700; color: var(--ink); border-top: 1.5px solid var(--line); }
.isg-tab tr.end td { font-weight: 700; color: var(--brand); border-top: 1.5px solid var(--brand); }
.isg-pruef { list-style: none; margin: 6px 0 0; padding: 0; display: flex; flex-direction: column; }
.isg-pruef li { display: grid; grid-template-columns: 18px minmax(0, 1fr); gap: 6px; padding: 6px 0; border-top: 1px solid var(--line-lighter); font-size: 12.5px; line-height: 1.4; }
.isg-pruef svg { width: 16px; height: 16px; margin-top: 1px; fill: none; stroke-width: 2; }
.isg-pruef .ok svg { stroke: var(--done-text); }
.isg-pruef .wa svg { stroke: var(--open-text); }
.isg-pruef b { display: block; font-weight: 600; }
.isg-pruef span span { color: var(--txt2); }
.isg-f { flex: none; height: 62px; display: flex; align-items: center; gap: 14px; background: var(--surface-1); border-top: 1px solid var(--line-light); padding: 0 18px; }
.isg-f .sum { font-size: 13px; color: var(--txt2); }
.isg-f .sum b { font-family: var(--font-mono); color: var(--ink); }
.isg-f .btn-primary { margin-left: auto; }
