/* Redaktionsbereich – große Schrift, große Knöpfe, wenig Ablenkung. */
.rwr {
	--rwr-forest: var(--c-forest, #1F5138);
	--rwr-lake: var(--c-lake, #22607F);
	--rwr-ink: var(--c-ink, #10291F);
	--rwr-muted: var(--c-muted, #4A5A52);
	--rwr-line: var(--c-line, #C9CDC2);
	--rwr-surface: var(--c-surface, #FFFFFF);
	--rwr-bg: var(--c-bg, #F6F5F0);
	--rwr-gold-bg: var(--c-gold-soft, #FFF6E3);
	max-width: 720px;
	margin: 0 auto;
	font-size: 1.125rem;
	line-height: 1.5;
	color: var(--rwr-ink);
}
.rwr * { box-sizing: border-box; }
.rwr-h1 { font-size: clamp(1.75rem, 4vw, 2.25rem); line-height: 1.15; margin: 0 0 .5rem; }
.rwr-h2 { font-size: 1.25rem; margin: 2.25rem 0 .75rem; }
.rwr-lead { color: var(--rwr-muted); margin: 0 0 1.5rem; }
.rwr-top { display: flex; align-items: baseline; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.rwr-logout, .rwr-back { font-weight: 600; color: var(--rwr-forest); padding: .6rem 0; display: inline-flex; align-items: center; gap: .35rem; text-decoration: none; }
.rwr-back { margin-bottom: 1rem; }
.rwr-tiles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.rwr-tile { min-height: 9rem; border-radius: 1.4rem; padding: 1.25rem 1.1rem; display: flex; flex-direction: column; justify-content: space-between; gap: 1rem; text-decoration: none; font-weight: 700; font-size: 1.3rem; line-height: 1.2; background: var(--rwr-surface); color: var(--rwr-ink); border: 2px solid var(--rwr-line); }
.rwr-tile--forest { background: var(--rwr-forest); color: #fff; border-color: var(--rwr-forest); }
.rwr-tile--lake { background: var(--rwr-lake); color: #fff; border-color: var(--rwr-lake); }
.rwr-tile:hover, .rwr-tile:focus-visible { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(16, 41, 31, .12); }
.rwr-tile svg { color: inherit; }
.rwr-tile:not(.rwr-tile--forest):not(.rwr-tile--lake) svg { color: var(--rwr-forest); }
.rwr-approve { margin-top: .9rem; display: flex; align-items: center; gap: 1rem; padding: 1.1rem 1.25rem; border-radius: 1.2rem; text-decoration: none; color: var(--rwr-ink); background: var(--rwr-surface); border: 2px solid var(--rwr-line); }
.rwr-approve.has-items { border-color: #E3A72F; background: var(--rwr-gold-bg); }
.rwr-note { margin: 1.25rem 0; padding: 1rem 1.2rem; border-radius: 1rem; background: var(--rwr-surface); border: 1px solid var(--rwr-line); }
.rwr-note--warm { background: var(--rwr-gold-bg); border-color: #F0DDB0; color: #5C3A10; }
.rwr-flash { display: flex; gap: .8rem; align-items: flex-start; margin: 0 0 1.5rem; padding: 1.1rem 1.2rem; border-radius: 1rem; background: #E8F0EA; color: #10291F; border: 2px solid #7FAF8E; }
.rwr-flash svg { flex: 0 0 auto; color: var(--rwr-forest); }
.rwr-flash--error { background: #FBE9E5; border-color: #C9675A; color: #5A1C12; display: block; }
.rwr-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .6rem; }
.rwr-item { display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap; padding: .9rem 1.1rem; border-radius: 1rem; background: var(--rwr-surface); border: 1px solid var(--rwr-line); }
.rwr-item span { display: block; font-size: 1rem; color: var(--rwr-muted); }
.rwr-badge { font-size: .95rem; font-weight: 700; padding: .3rem .8rem; border-radius: 999px; white-space: nowrap; text-decoration: none; }
.rwr-badge--ok { background: #E8F0EA; color: #1F5138; }
.rwr-badge--wait { background: #FCEBC4; color: #6B4300; }
.rwr-inline { display: inline; margin: 0; }
.rwr-linkbtn { font: inherit; font-size: 1rem; background: none; border: 0; color: var(--rwr-forest); text-decoration: underline; cursor: pointer; padding: .4rem; }
.rwr-form { display: flex; flex-direction: column; gap: 1.4rem; margin-top: 1.25rem; }
.rwr-field { display: flex; flex-direction: column; gap: .45rem; border: 0; margin: 0; padding: 0; min-width: 0; }
.rwr-field label, .rwr-field legend, .rwr-label { font-weight: 700; padding: 0; }
.rwr-opt { font-weight: 500; color: var(--rwr-muted); }
.rwr-row { display: flex; gap: .9rem; flex-wrap: wrap; }
.rwr-row > .rwr-field { flex: 1 1 12rem; }
.rwr-row > .rwr-field--small { flex: 0 1 9rem; }
.rwr input[type="text"], .rwr input[type="email"], .rwr input[type="tel"], .rwr input[type="date"], .rwr input[type="time"], .rwr input[type="password"], .rwr select, .rwr textarea {
	font: inherit; font-size: 1.15rem; width: 100%; min-height: 3.6rem; padding: .7rem 1rem; border: 2px solid var(--rwr-line); border-radius: .9rem; background: var(--rwr-surface); color: var(--rwr-ink);
}
.rwr textarea { min-height: 7rem; resize: vertical; }
.rwr input:focus, .rwr select:focus, .rwr textarea:focus { outline: 3px solid #E3A72F; outline-offset: 2px; border-color: var(--rwr-forest); }
.rwr-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .6rem; }
.rwr-choices--stack { grid-template-columns: 1fr; }
.rwr-choice { position: relative; }
.rwr-choice input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.rwr-choice span { display: flex; align-items: center; min-height: 3.5rem; padding: .6rem 1rem; border-radius: .9rem; border: 2px solid var(--rwr-line); background: var(--rwr-surface); font-weight: 700; cursor: pointer; }
.rwr-choice input:checked + span { background: var(--rwr-forest); border-color: var(--rwr-forest); color: #fff; }
.rwr-choice input:focus-visible + span { outline: 3px solid #E3A72F; outline-offset: 2px; }
.rwr-photo { display: flex; align-items: center; justify-content: center; gap: .7rem; min-height: 4.2rem; padding: .8rem 1rem; border: 2px dashed #7FAF8E; border-radius: 1rem; background: var(--rwr-surface); color: var(--rwr-forest); font-weight: 700; cursor: pointer; text-align: center; position: relative; }
.rwr-photo input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.rwr-photo:focus-within { outline: 3px solid #E3A72F; outline-offset: 2px; }
.rwr-previews { display: flex; flex-wrap: wrap; gap: .5rem; }
.rwr-previews img { width: 5.5rem; height: 5.5rem; object-fit: cover; border-radius: .7rem; }
.rwr-current { width: 7rem; height: 7rem; object-fit: cover; border-radius: 50%; }
.rwr-check { display: flex; gap: .6rem; align-items: center; font-weight: 600; color: #8A2E1E; }
.rwr-check input { width: 1.4rem; height: 1.4rem; }
.rwr-hint { margin: 0; color: var(--rwr-muted); font-size: 1rem; }
.rwr-btn { font: inherit; font-weight: 700; display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 3.2rem; padding: .7rem 1.4rem; border-radius: 1rem; background: var(--rwr-forest); color: #fff; border: 2px solid var(--rwr-forest); cursor: pointer; text-decoration: none; }
.rwr-btn--big { min-height: 4rem; font-size: 1.3rem; width: 100%; }
.rwr-btn--small { min-height: 2.75rem; padding: .4rem 1rem; }
.rwr-btn--ghost { background: transparent; color: var(--rwr-ink); border-color: var(--rwr-ink); }
.rwr-btn[disabled] { opacity: .7; cursor: progress; }
.rwr-card { background: var(--rwr-surface); border: 1px solid var(--rwr-line); border-radius: 1.4rem; padding: 1.5rem; }
.rwr-login form p { display: flex; flex-direction: column; gap: .4rem; margin: 0 0 1rem; }
.rwr-login .login-remember label { display: flex; align-items: center; gap: .5rem; font-weight: 600; }
.rwr-login .login-remember input { width: 1.4rem; height: 1.4rem; }
.rwr-login input[type="submit"] { font: inherit; font-weight: 700; font-size: 1.2rem; min-height: 3.6rem; width: 100%; border-radius: 1rem; background: var(--rwr-forest); color: #fff; border: 0; cursor: pointer; }
.rwr-review { margin-bottom: 1rem; }
.rwr-review h3 { margin: .3rem 0 .6rem; font-size: 1.35rem; }
.rwr-kicker { font-size: .95rem; color: var(--rwr-muted); font-weight: 600; }
.rwr-review-imgs { display: flex; flex-wrap: wrap; gap: .4rem; margin: .8rem 0; }
.rwr-review-imgs img { width: 5.5rem; height: 5.5rem; object-fit: cover; border-radius: .6rem; }
.rwr-actions { display: flex; gap: .7rem; flex-wrap: wrap; margin-top: .8rem; }
.rwr-actions form { margin: 0; }
@media (max-width: 420px) { .rwr-tile { min-height: 8rem; font-size: 1.15rem; } }
