/* =================================================================== Start-Check / Erstanalyse. Drei Bewertungsstufen, aber nur eine sticht hervor. "Passt" darf ruhig unauffaellig sein -- man sucht beim Durchgehen nicht das, was in Ordnung ist. =================================================================== */ .steuerung { display: flex; gap: 14px; flex-wrap: wrap; align-items: flex-end; } .steuerung select { min-width: 170px; padding: 9px 12px; background: rgba(255, 255, 255, .045); border: 1px solid var(--rand); border-radius: var(--radius-klein); color: var(--text); font: inherit; } /* ---------- Fortschritt ---------------------------------------------------- */ .fortschritt { margin-bottom: 30px; padding: 16px 18px; background: var(--flaeche); border: 1px solid var(--rand); border-radius: var(--radius); } .fortschritt__kopf { display: flex; align-items: baseline; gap: 8px; } .fortschritt__zahl { font-size: 1.3rem; font-weight: 700; } .fortschritt__text { font-size: .84rem; color: var(--text-still); } .fortschritt__balken { height: 6px; margin: 10px 0 8px; overflow: hidden; background: rgba(255, 255, 255, .07); border-radius: 999px; } .fortschritt__fuellung { height: 100%; width: 0; background: linear-gradient(90deg, var(--akzent), var(--violett)); border-radius: 999px; transition: width .3s ease; } .fortschritt[data-stufe="handlung"] { border-color: rgba(255, 154, 162, .3); } .fortschritt[data-stufe="handlung"] .fortschritt__fuellung { background: linear-gradient(90deg, var(--warn), #e08a90); } .fortschritt[data-stufe="fertig"] .fortschritt__fuellung { background: linear-gradient(90deg, #79d1a2, #5fb98c); } .fortschritt__hinweis { margin: 0; font-size: .85rem; color: var(--text-leise); } /* ---------- Felder --------------------------------------------------------- */ .feld-block { margin-bottom: 30px; } .feld-block__kopf { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; } .feld-block__titel { margin: 0; font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--akzent); } .feld-block__zahl { padding: 1px 8px; font-size: .74rem; font-weight: 700; color: var(--text-still); background: rgba(255, 255, 255, .06); border-radius: 999px; } .feld-block__zahl[data-fertig="ja"] { color: #79d1a2; background: rgba(121, 209, 162, .12); } .feld-block__punkte { display: grid; gap: 10px; } /* ---------- Punkt ---------------------------------------------------------- */ .punkt { position: relative; padding: 14px 17px 14px 20px; background: var(--flaeche); border: 1px solid var(--rand); border-radius: var(--radius-klein); transition: border-color .18s ease; } .punkt::before { content: ""; position: absolute; left: 0; top: 10px; bottom: 10px; width: 2px; border-radius: 0 2px 2px 0; background: rgba(255, 255, 255, .1); } .punkt[data-bewertung="ok"]::before { background: #79d1a2; opacity: .55; } .punkt[data-bewertung="mittel"]::before { background: #f0c48a; } .punkt[data-bewertung="handlung"]::before { background: var(--warn); } .punkt[data-bewertung="handlung"] { border-color: rgba(255, 154, 162, .28); background: rgba(255, 154, 162, .045); } .punkt__kopf { display: flex; gap: 16px; align-items: flex-start; justify-content: space-between; flex-wrap: wrap; } .punkt__name { margin: 0; font-size: .97rem; font-weight: 650; } .punkt__hinweis { margin: 2px 0 0; font-size: .81rem; color: var(--text-still); max-width: 56ch; } /* Bewertungsknöpfe */ .stufen { display: flex; gap: 5px; flex: none; } .stufe-marke { flex: none; padding: 4px 11px; border-radius: 999px; font-size: .75rem; font-weight: 600; border: 1px solid var(--rand); color: var(--text-still); } .stufe-marke[data-wert="ok"] { color: #79d1a2; border-color: rgba(121, 209, 162, .4); } .stufe-marke[data-wert="mittel"] { color: #f0c48a; border-color: rgba(240, 196, 138, .4); } .stufe-marke[data-wert="handlung"] { color: #ffb4b9; border-color: rgba(255, 154, 162, .45); } .punkt__notiz { width: 100%; margin-top: 11px; padding: 9px 12px; background: rgba(255, 255, 255, .04); border: 1px solid var(--rand); border-radius: var(--radius-klein); color: var(--text); font: inherit; font-size: .87rem; resize: vertical; } .punkt__notiz:focus { outline: none; border-color: rgba(63, 189, 245, .6); box-shadow: 0 0 0 3px rgba(63, 189, 245, .13); } .punkt__notiz-lesen { margin: 10px 0 0; font-size: .87rem; color: var(--text-leise); white-space: pre-wrap; max-width: 74ch; } .punkt__quelle { margin: 8px 0 0; font-size: .74rem; color: var(--text-still); } /* ---------- Arbeitspaket ---------------------------------------------------- */ .paket { margin-top: 11px; } .paket__form { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 7px; } .paket__titel, .paket__frist { padding: 9px 11px; background: rgba(255, 255, 255, .05); border: 1px solid var(--rand); border-radius: var(--radius-klein); color: var(--text); font: inherit; font-size: .87rem; } .paket__titel:focus, .paket__frist:focus { outline: none; border-color: rgba(63, 189, 245, .6); box-shadow: 0 0 0 3px rgba(63, 189, 245, .13); } @media (max-width: 620px) { .punkt__kopf { flex-direction: column; } /* flex: none MUSS hier aufgehoben werden. Die Regel oben verbietet den Stufen jedes Schrumpfen -- gedacht, damit sie am Rechner nicht zusammengequetscht werden. Auf 294 px Inhaltsbreite passten die drei Knoepfe dann aber nicht mehr nebeneinander und die Seite liess sich waagerecht schieben (gemessen: 331 px Inhalt in 294 px Kasten). "width: 100%" allein reichte nicht: Ein Element mit flex: none haelt seine Wunschbreite auch dann. */ .stufen { width: 100%; flex: 1 1 auto; min-width: 0; flex-wrap: wrap; } .stufe-knopf { flex: 1 1 auto; min-width: 0; } .paket__form { grid-template-columns: 1fr; } .punkt { padding-left: 16px; padding-right: 13px; } } @media (prefers-reduced-motion: reduce) { .punkt, .stufe-knopf, .fortschritt__fuellung { transition: none; } }