/* Vereinsfarben: www.gewisse-leute.de #4e813d; GL-Cloud #0b1706. */
:root { --ink:#203023; --muted:#606e62; --paper:#f2f4ed; --card:#fff; --line:#d9e1d3; --green:#3c6c2e; --green2:#e7f0df; --soft:#f5f7f1; --field:#fff; --shadow:0 12px 32px #1025090a; color-scheme:light; }
:root[data-theme="dark"] { --ink:#edf3e8; --muted:#b0bda9; --paper:#0b1706; --card:#182415; --line:#394834; --green:#a0cf83; --green2:#2a4022; --soft:#202e1c; --field:#111f0d; --amber:#f6c775; --amber2:#493921; --red:#ffb4b4; --shadow:0 12px 32px #0003; color-scheme:dark; }
body { background:radial-gradient(ellipse at 50% 0,#4e813d12,transparent 48rem),var(--paper); color:var(--ink); }
.topbar,.launcher,button,input,select,textarea { font-family:system-ui,-apple-system,"Segoe UI",sans-serif; }
.launcher a { background:#24451e; color:#fff; border:1px solid #45633b; }
.launcher a:hover { background:#305627; }
.launcher span { color:#d0e0c6; }
.topbar { padding:0; background:var(--card); gap:0; border-bottom:1px solid var(--line); }
.topbar-inner { box-sizing:border-box; width:100%; max-width:1240px; padding:10px 22px; margin:0 auto; display:flex; align-items:center; gap:22px; }
.brand { display:grid; place-items:center; flex:0 0 96px; width:96px; height:96px; overflow:hidden; border:1px solid #dfe5dc; border-radius:50%; padding:8px; background:#fff; box-shadow:0 7px 22px #0b17061f; }
.brand img { width:80px; height:80px; object-fit:contain; }
.topbar nav { flex:1; min-width:0; gap:7px 18px; align-items:center; }
.topbar nav > a,.nav-menu > summary { padding:8px 1px; line-height:1.45; }
.topbar nav a,.nav-menu summary { font-size:13.5px; font-weight:700; }
.nav-menu-primary > summary { font-size:15px; }
.nav-menu summary::after { content:"⌄"; margin-left:6px; }
.nav-menu > div { background:var(--card); border-color:var(--line); }
.nav-menu > div a { border-radius:5px; }
.nav-menu > div a:hover,.nav-menu > div a:focus-visible { background:var(--green2); }
.nav-tools { display:flex; flex-direction:column; gap:5px; align-items:stretch; }
.nav-tool { display:flex; align-items:center; justify-content:center; gap:6px; min-width:76px; padding:8px 10px; font-size:13px; white-space:nowrap; }
.nav-tool svg { width:18px; height:18px; flex-shrink:0; }
.launcher { grid-template-columns:repeat(6,minmax(0,1fr)); }
.launcher a { grid-column:span 2; min-height:110px; }
.launcher a.launcher-primary { grid-column:span 3; min-height:148px; border-color:#75a95e; background:linear-gradient(145deg,#183514,#2f6025); }
.launcher a.launcher-primary strong { max-width:22rem; font-size:clamp(21px,2.2vw,30px); line-height:1.12; }
.launcher small { color:#a9d58f; font-size:11px; font-weight:850; letter-spacing:.13em; }
.launcher a:not(.launcher-primary) small { color:#b9cbb0; }
main { box-sizing:border-box; display:flex; width:100%; min-width:0; flex-direction:column; }
.hero > *,.launcher a { min-width:0; }
.hero h1 { overflow-wrap:anywhere; }
#start { order:1; }
.launcher { order:2; }
#cannanas { order:3; }
#pflanzen { order:4; }
#freitext { order:5; }
#briefe { order:6; }
#vorlagen { order:7; }
#historie { order:8; }
#admin { order:9; }
#stammdaten { order:10; }
#assets { order:11; }
#medien { order:12; }
#drucker { order:13; }
#handbuch { order:14; }
.admin-intro { max-width:760px; color:var(--muted); }
.admin-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:22px 0; }
.admin-grid a { display:flex; min-height:92px; flex-direction:column; gap:7px; padding:16px; border:1px solid var(--line); border-radius:14px; background:var(--soft); color:var(--ink); text-decoration:none; }
.admin-grid a:hover,.admin-grid a:focus-visible { border-color:var(--green); background:var(--green2); }
.admin-grid span { color:var(--muted); font-size:13px; }
.smtp-admin-card { display:grid; grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr); gap:24px; padding:20px; border:1px solid var(--line); border-radius:16px; background:var(--soft); scroll-margin-top:130px; }
.smtp-admin-card h3 { margin:.2rem 0 .7rem; font-size:21px; }
.smtp-admin-copy p { margin:0 0 12px; }
.smtp-admin-card code { overflow-wrap:anywhere; color:var(--green); }
.smtp-status { display:inline-flex; margin:.2rem 0 0; padding:6px 10px; border-radius:999px; background:var(--amber2); color:var(--amber); font-size:12px; font-weight:800; }
.smtp-status.ready { background:var(--green2); color:var(--green); }
.smtp-form { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.smtp-form label { min-width:0; }
.smtp-form .smtp-enabled { display:flex; grid-column:1 / -1; align-items:center; flex-direction:row; gap:8px; }
.smtp-form .smtp-enabled input { width:auto; }
.smtp-form .smtp-wide { grid-column:span 2; }
.smtp-actions { display:flex; grid-column:1 / -1; align-items:center; gap:10px; flex-wrap:wrap; }
.smtp-test-mail { display:grid; grid-template-columns:minmax(220px,1fr) auto; align-items:end; gap:10px; margin:18px 0 10px; padding-top:16px; border-top:1px solid var(--line); }
.smtp-safety { color:var(--muted); font-size:13px; }
.plant-toolbar { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:20px 0 10px; }
.plant-toolbar>div:first-child { display:grid; gap:4px; }
.plant-toolbar .actions { margin:0; }
.plant-library { display:grid; gap:12px; max-height:31rem; overflow:auto; padding:12px; border:1px solid var(--line); border-radius:14px; background:var(--soft); }
.plant-library.empty { display:block; color:var(--muted); }
.plant-import { padding:13px; border:1px solid var(--line); border-radius:12px; background:var(--card); }
.plant-import header { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:10px; }
.plant-label-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:7px; }
.plant-label-choice { display:flex; align-items:flex-start; flex-direction:row; gap:9px; padding:9px; border:1px solid var(--line); border-radius:9px; background:var(--field); cursor:pointer; }
.plant-label-choice:has(input:checked) { border-color:var(--green); background:var(--green2); }
.plant-label-choice input { width:auto; margin-top:3px; }
.plant-label-choice span { display:grid; gap:2px; color:var(--ink); }
.plant-label-choice small { color:var(--muted); }
button:not(.secondary):not(.danger):not(.gl-icon-card):not(.symbol-button),.studio-image-resize { background-color:#4e813d; color:#fff; }
button.secondary,.button-link { background:var(--green2); color:var(--ink); }
input,select,textarea { background:var(--field); color:var(--ink); border-color:var(--line); }
label,.gl-toolbar-label { color:var(--muted); }
:focus-visible { outline:3px solid var(--green); outline-offset:3px; }
.detail,.preview-shell,.visual-editor-host,.organization-master,.management-form,.master-actions form,.dropzone,.gl-editor-label-preview,.gl-media-controls,.studio-format-toolbar,.gl-text-detail .studio-format-toolbar { background:var(--soft); border-color:var(--line); }
.queue-item,.analysis-card,.printer-card,.template-card,.media-card,.asset-card,.distribution-card,dialog,.gl-text-detail,.gl-text-detail header,.nav-menu>div { background:var(--card); color:var(--ink); border-color:var(--line); }
.gl-toolbar-group:nth-child(even),.separation-note,.template-badges span,.batch-summary span,.status { background:var(--green2); color:var(--ink); }
.gl-media-hint,.gl-media-proportions { color:var(--muted); }
.gl-text-detail { box-sizing:border-box; max-width:calc(100vw - 20px); }
.studio-selected-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:8px 0 2px; }
.studio-element-list { margin-top:12px; }
.gl-editor-workspace > section { min-width:0; }
.gl-toolbar-group { border-right:1px solid var(--line); }
.gl-text-detail .gl-toolbar-group button { background:var(--card); color:var(--ink); border:1px solid var(--line); }
.gl-text-detail .gl-toolbar-group button[aria-pressed="true"] { background:var(--green2); border-color:var(--green); }
.rich-field-open { background:var(--field); color:var(--ink); }
.gl-icon-card,.gl-font-option { color:#17221f; }
.gl-comic-card,.gl-icon-grid .gl-icon-card { background:#fff !important; color:#17221f; }
.gl-emoji-categories button { background:var(--soft); }
.gl-emoji-categories button[aria-selected="true"] { background:var(--green2); }
.gl-text-detail-editor,.gl-text-element-preview,.studio-stage,.document-a4-canvas,.studio-tiptap,.tiptap,.asset-card img { color:#111; background-color:#fff; color-scheme:light; }
.gl-text-detail .tiptap th,.gl-text-element-preview th { color:#111; background:#edf2ee; }
.studio-stage { max-height:none; margin:1rem auto; width:min(100%, var(--stage-width, 640px)); color:#111; }
.gl-text-element-preview,.gl-text-detail-editor { border-color:var(--line); }
.notice { background:var(--green2); border-color:var(--line); }
.notice.error { color:var(--red); }
:root[data-theme="dark"] .notice.error { background:#421e1e; border-color:#713838; }
:root[data-theme="dark"] .gl-text-detail .studio-properties { border-color:var(--line); }
.manual-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:28px; margin-top:22px; }
.manual-sidebar { align-self:start; position:sticky; top:130px; max-height:65vh; overflow:auto; }
.manual-sidebar h3 { font-size:13px; margin:16px 0 8px; }
.manual-sidebar a { display:block; padding:5px 0; text-decoration:none; font-size:13px; color:var(--green); }
.manual-sidebar a:hover { text-decoration:underline; }
.manual-index { display:flex; flex-wrap:wrap; gap:4px 12px; }
.manual-index a { font-size:12px; }
.catalog-list { grid-template-columns:minmax(0,1fr); }
.strain-card { min-width:0; overflow-x:auto; }
.strain-head { align-items:center; }
.strain-head > div:first-child { display:grid; gap:4px; }
.strain-head strong { font-size:17px; }
.catalog-table { width:100%; border-collapse:collapse; margin-top:13px; }
.catalog-table th { text-align:left; color:var(--muted); font-size:12px; padding:8px 10px; border-bottom:1px solid var(--line); }
.catalog-table td { padding:11px 10px; border-bottom:1px solid var(--line); vertical-align:middle; }
.catalog-table td:first-child { font-weight:700; }
.catalog-table .card-actions { flex-wrap:nowrap; }
@media(max-width:760px) { .catalog-table thead { display:none; } .catalog-table,.catalog-table tbody,.catalog-table tr,.catalog-table td { display:block; width:100%; box-sizing:border-box; } .catalog-table tr { padding:8px 0; border-bottom:1px solid var(--line); } .catalog-table td { display:flex; justify-content:space-between; gap:12px; padding:5px; border:0; text-align:right; } .catalog-table td::before { content:attr(data-label); font-weight:600; color:var(--muted); text-align:left; } .catalog-table .card-actions { flex-wrap:wrap; justify-content:flex-end; } }
.printer-grid,.template-grid,.management-grid { grid-template-columns:repeat(auto-fit,minmax(min(270px,100%),1fr)); }
.manual-article { padding:0 0 22px; margin-bottom:22px; border-bottom:1px solid var(--line); scroll-margin-top:135px; line-height:1.65; }
.manual-article h3 { margin:0 0 8px; font-size:21px; }
.manual-article p { margin:8px 0; }
.manual-article ol { padding-left:22px; }
.manual-article a { color:var(--green); }
.manual-article .manual-note { border-left:3px solid var(--green); background:var(--soft); padding:10px 14px; }
#manual-search { max-width:680px; font-size:16px; }
#manual-results { font-size:13px; color:var(--muted); }
@media(max-width:900px) { .topbar { position:static; display:block; } .topbar-inner { flex-wrap:wrap; gap:12px; } .brand { flex:0 0 82px; width:82px; height:82px; padding:7px; } .brand img { width:68px; height:68px; } .topbar nav { width:auto; max-height:none; overflow:visible; flex-basis:calc(100% - 118px); } .nav-tools { flex-direction:row; margin-left:auto; } .nav-menu > div { position:absolute; min-width:200px; } .launcher { grid-template-columns:repeat(2,minmax(0,1fr)); } .launcher a,.launcher a.launcher-primary { grid-column:span 1; } .admin-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .smtp-admin-card { grid-template-columns:1fr; } .smtp-form { grid-template-columns:repeat(2,minmax(0,1fr)); } .manual-sidebar { position:static; max-height:none; } .manual-layout { grid-template-columns:1fr; } .manual-sidebar nav { display:flex; flex-wrap:wrap; gap:3px 16px; } }
@media(max-width:520px) { .topbar-inner { display:grid; grid-template-columns:72px minmax(0,1fr); align-items:start; padding:10px 14px; } .brand { width:68px; height:68px; padding:6px; } .brand img { width:56px; height:56px; } .topbar nav { width:100%; max-width:100%; flex-basis:auto; gap:4px 11px; } .topbar nav a,.nav-menu summary { font-size:12px; } .nav-tools { grid-column:1 / -1; width:100%; justify-content:flex-end; } .nav-menu > div { left:auto; right:0; } .launcher,.admin-grid,.smtp-form { grid-template-columns:1fr; } .smtp-form .smtp-wide { grid-column:auto; } .smtp-test-mail { grid-template-columns:1fr; } .plant-toolbar,.plant-import header { align-items:flex-start; flex-direction:column; } .panel { padding:16px; } .gl-text-detail { padding:12px; } .gl-text-detail header h2 { font-size:20px; } .gl-text-detail header button { font-size:11px; } .gl-text-detail .studio-format-toolbar { position:static; max-height:none; } .studio-properties { grid-template-columns:repeat(2,minmax(0,1fr)); } .studio-properties label { min-width:0; } }
@media print { .topbar,.manual-sidebar,#manual-search-label,#manual-results,footer { display:none!important; } body { background:white; color:black; } #handbuch { box-shadow:none; border:0; } .manual-layout { display:block; } .manual-article { break-inside:avoid; } }

/* Kompakte Drucknavigation: immer nur der gewählte Arbeitsbereich. */
main { padding-top:18px; }
main:not(.route-ready) > section.panel:not(#cannanas),main > section.panel.route-hidden { display:none !important; }
.launcher { display:flex; flex-wrap:wrap; gap:6px; margin:0; order:1; }
.launcher a,.launcher a.launcher-primary { display:inline-flex; grid-column:auto; min-height:0; padding:9px 13px; border-radius:9px; box-shadow:none; font-size:13px; font-weight:750; white-space:nowrap; }
.launcher a[aria-current="page"] { background:var(--green2); color:var(--ink); border-color:var(--green); }
.navigation-roll-note { order:2; margin:12px 0 0; padding:11px 14px; border:1px solid var(--line); border-radius:10px; background:var(--soft); }
main:not(.print-route) .launcher,main:not(.print-route) .navigation-roll-note { display:none !important; }
.roll-note { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px 18px; }
.roll-status-text { flex:1 1 380px; }
.roll-controls { display:inline-flex; align-items:center; gap:13px; flex:0 0 auto; }
.roll-confirm { white-space:normal; text-align:center; }
.roll-animation { display:inline-block; width:30px; height:30px; border:5px solid var(--green); border-top-color:var(--red); border-radius:50%; box-shadow:inset 0 0 0 3px var(--soft); animation:roll-turn 1.7s linear infinite; }
@keyframes roll-turn { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .roll-animation { animation:none; } }
.category-management { margin:14px 0; padding:9px 12px; border:1px solid var(--line); border-radius:10px; background:var(--soft); }
.category-management summary { cursor:pointer; font-weight:700; }
.category-management .management-form { margin-top:12px; }
#vorlagen.back-template-context .category-management,#vorlagen.back-template-context #document-template-heading,#vorlagen.back-template-context #document-template-list { display:none; }
#global-notice { position:fixed; z-index:30; right:20px; bottom:20px; max-width:min(460px,calc(100vw - 40px)); box-shadow:var(--shadow); }
main > section.panel { order:3; margin-top:14px; }
main > footer { order:4; }
.import-queue-panel { margin:14px 0; border:1px solid var(--line); border-radius:10px; padding:9px 12px; background:var(--soft); }
.import-queue-panel summary { cursor:pointer; font-weight:750; }
.import-queue-panel .queue { margin-top:10px; max-height:260px; overflow:auto; }
.import-inspector { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); grid-template-areas:"navigation ." "detail preview"; gap:0 14px; align-items:stretch; margin-top:16px; }
.import-inspector.stacked { grid-template-columns:1fr; grid-template-areas:"navigation" "detail" "preview"; }
.import-inspector.stacked .preview-shell { margin-top:14px; }
.import-inspector #import-page-navigation { grid-area:navigation; }
.import-inspector #import-detail { grid-area:detail; }
.import-inspector #import-preview-shell { grid-area:preview; }
.import-inspector .detail { min-height:0; }
.import-inspector .analysis-card { margin-bottom:0; }
.import-inspector .preview-shell { min-width:0; min-height:210px; }
.import-inspector .pdf { min-height:0; }
.import-page-navigation { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:9px; }
.import-page-navigation span { font-size:13px; font-weight:750; text-align:center; }
.import-data-dialog { width:min(540px,calc(100vw - 24px)); max-height:90vh; overflow:auto; padding:22px; border:1px solid var(--line); border-radius:14px; background:var(--card); color:var(--ink); }
.import-data-dialog::backdrop { background:#07120dcc; }
.import-data-dialog form { display:grid; gap:9px; }
.import-data-dialog h3,.import-data-dialog p { margin:0; }
#plant-roll-note,#back-roll-note,#free-note { display:none; }
#vorlagen .template-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:start; gap:18px; }
#vorlagen .template-layout:has(#template-form:not(.hidden)),#vorlagen .template-layout:has(#document-template-form:not(.hidden)) { grid-template-columns:1fr; }
#vorlagen #label-template-list,#vorlagen #document-template-list { max-height:440px; overflow:auto; grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr)); }
#vorlagen #template-preview-shell { position:sticky; top:120px; }
.printer-edit { display:grid; gap:9px; margin:12px 0; padding:12px; border:1px solid var(--line); border-radius:10px; background:var(--soft); }
.printer-edit .printer-active { display:flex; flex-direction:row; align-items:center; gap:8px; }
.printer-edit .printer-active input { width:auto; }
.printer-edit button { justify-self:start; }
@media(max-width:900px) { #vorlagen .template-layout { grid-template-columns:1fr; } #vorlagen #template-preview-shell { position:static; } }
@media(max-width:850px) { .import-inspector { grid-template-columns:1fr; grid-template-areas:"navigation" "detail" "preview"; } .import-inspector .preview-shell { margin-top:14px; } .navigation-roll-note button { display:flex; margin:8px 0 0; } }
