.content-grid { display: grid; gap: 1rem; }
[data-settings-root] [hidden] { display: none !important; }
.content-grid.two-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.content-grid.two-columns > * { min-width: 0; }
.stack-form { display: grid; gap: .8rem; margin-top: 1rem; }
.check-list { display: grid; gap: .7rem; padding-left: 1.25rem; }
.check-list li, .check-list strong { min-width: 0; overflow-wrap: anywhere; }
.self-check-panel, .backup-panel { min-width: 0; }
.muted { color: var(--muted); }
.record-details { padding: .8rem 0; border-top: 1px solid var(--border); }
.quality-result { padding: 1rem 0; border-top: 1px solid var(--border); }
.quality-result h3 { margin-bottom: .15rem; }
.notification-row { display: flex; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-top: 1px solid var(--border); }
.notification-row.unread { border-left: 3px solid var(--gold); padding-left: 1rem; }
.notification-row h2 { font-size: 1.35rem; }
.search-result { display: grid; padding: .8rem 0; border-top: 1px solid var(--border); text-decoration: none; }
.search-result span, .search-result small { color: var(--muted); }
.saved-search { display: flex; justify-content: space-between; gap: 1rem; padding: .7rem 0; border-top: 1px solid var(--border); }
.badge.bad { border-color: var(--red); color: #f2a29d; }
.choice-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: .45rem .8rem; }
fieldset { border: 1px solid var(--border); border-radius: 10px; padding: .85rem; min-width: 0; }
legend { color: var(--gold-2); font-weight: 700; padding: 0 .35rem; }
.link-button { appearance: none; border: 0; background: none; color: var(--gold-2); padding: 0; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
details { margin: .7rem 0; }
summary { cursor: pointer; color: var(--gold-2); }
code { overflow-wrap: anywhere; }
.backup-panel th:last-child,
.backup-panel td:last-child { min-width: 14rem; }
.backup-panel td.actions > details { flex: 1 1 100%; min-width: 12rem; }
.backup-panel td.actions > details .button { width: 100%; }
.sftp-backup-section{display:grid;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border)}
.sftp-backup-section .panel-header{margin:0}.sftp-backup-section .panel-header p:last-child{max-width:72ch;margin-bottom:0;color:var(--muted)}
.sftp-status-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.sftp-status-grid .status-card strong{overflow-wrap:anywhere;color:var(--gold-2)}
.sftp-settings-form{padding:1rem;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface-2) 48%,transparent)}
.sftp-settings-form fieldset{align-content:start}.sftp-settings-form label small{font-weight:500;color:var(--muted)}
.remote-transfer-heading{margin-top:.75rem;padding-top:1.25rem;border-top:1px solid var(--border)}
.sftp-transfer-table td{vertical-align:top}.sftp-transfer-table td>small,.sftp-transfer-table td>strong+small{display:block;margin-top:.3rem;color:var(--muted)}
.sftp-transfer-table td:nth-child(5){max-width:18rem}.sftp-transfer-table td:nth-child(5) code{display:block;overflow-wrap:anywhere}

.parser-extension-hero { padding-bottom: 1rem; border-bottom: 1px solid var(--border); }
.parser-extension-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .8rem; margin-bottom: 1.5rem; }
.parser-extension-stats article { display: grid; gap: .1rem; min-width: 0; padding: 1rem 1.15rem; border: 1px solid var(--border); border-radius: 14px; background: color-mix(in srgb, var(--surface) 92%, transparent); }
.parser-extension-stats strong { color: var(--gold-2); font: 2rem/1 var(--serif); }
.parser-extension-stats span { color: var(--muted); font-size: .76rem; }
.parser-extension-stats .needs-attention { border-color: var(--red); }
.parser-extension-toolbar { align-items: center; padding-bottom: 1rem; border-bottom: 1px solid var(--border); }
.parser-extension-toolbar form { flex: 0 0 auto; }
.parser-extension-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); gap: 1rem; }
.parser-extension-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-top: 2rem; padding-top: 1.5rem; border-top: 1px solid var(--border); }
.parser-extension-section-heading h2 { margin: 0; }
.parser-extension-card { display: flex; min-width: 0; flex-direction: column; gap: .85rem; padding: 1.15rem; overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: color-mix(in srgb, var(--bg) 68%, var(--surface)); }
.parser-extension-card.is-active { border-color: color-mix(in srgb, var(--green) 65%, var(--border)); box-shadow: inset 3px 0 0 var(--green); }
.parser-extension-card > header { display: flex; align-items: flex-start; justify-content: space-between; gap: .65rem 1rem; flex-wrap: wrap; }
.parser-extension-card > header > div { min-width: 0; }
.parser-extension-card h3 { margin: .1rem 0 0; overflow-wrap: anywhere; font: 1.45rem/1.15 var(--serif); }
.parser-extension-key { margin: 0; color: var(--muted); font-size: .72rem; }
.parser-extension-badges { display: flex; flex-wrap: wrap; gap: .35rem; }
.parser-extension-badges .badge { max-width: 100%; white-space: normal; overflow-wrap: normal; word-break: normal; hyphens: none; }
.parser-extension-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; margin: 0; }
.parser-extension-facts div { min-width: 0; padding: .55rem .65rem; border-radius: 9px; background: color-mix(in srgb, var(--surface-2) 62%, transparent); }
.parser-extension-facts dt { color: var(--muted); font-size: .64rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.parser-extension-facts dd { margin: .1rem 0 0; overflow-wrap: anywhere; font-weight: 750; }
.parser-extension-test-message { min-height: 3rem; margin: 0; color: #d4d6cf; }
.parser-extension-meta { margin: 0; color: var(--muted); font-size: .76rem; overflow-wrap: anywhere; }
.parser-extension-test { margin-top: auto; padding-top: .7rem; border-top: 1px solid var(--border); }
.parser-extension-test input[type="file"] { min-width: 0; max-width: 100%; }
.parser-extension-errors { color: #f2a29d; }
.parser-extension-actions { display: flex; align-items: center; justify-content: space-between; gap: .6rem; flex-wrap: wrap; }
.parser-extension-actions form { margin: 0; }
.parser-extension-actions .muted { max-width: 13rem; font-size: .75rem; }
.parser-extension-card.is-compact { gap: .65rem; }
.parser-extension-card.is-compact h3 { font-size: 1.2rem; }
.compact-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); }
.parser-extension-builder .panel-header p:last-child { max-width: 760px; margin-bottom: 0; color: var(--muted); }
.parser-developer-note p:last-child { margin-bottom: 0; }

@media (max-width: 850px) {
    .content-grid.two-columns { grid-template-columns: 1fr; }
    .sftp-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .parser-extension-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .parser-extension-toolbar { align-items: stretch; flex-direction: column; }
    .parser-extension-toolbar .button { width: 100%; }
}

@media (max-width: 560px) {
    .backup-panel .panel-header { align-items: stretch; flex-direction: column; }
    .backup-panel .panel-header form, .backup-panel .panel-header .button { width: 100%; }
    .sftp-status-grid{grid-template-columns:1fr 1fr}.sftp-settings-form{padding:.75rem}
    .parser-extension-stats { grid-template-columns: 1fr 1fr; gap: .55rem; }
    .parser-extension-stats article { padding: .8rem; }
    .parser-extension-card { padding: 1rem; }
    .parser-extension-actions { align-items: stretch; flex-direction: column; }
    .parser-extension-actions form, .parser-extension-actions .button { width: 100%; }
}
.nfc-manager{margin-top:1.2rem}.nfc-enrolment{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.8rem;align-items:end}.nfc-enrolment .span-2{grid-column:1/-1}.nfc-external-reader{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.nfc-external-reader summary{cursor:pointer;font-weight:800}.nfc-tag-list{display:grid;gap:.7rem;margin-top:1rem}.nfc-tag-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.8rem;align-items:center;padding:.8rem;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.nfc-tag-row small{display:block;margin-top:.2rem;color:var(--muted)}.error-text{color:var(--danger,#cf5d5d)!important}@media(max-width:760px){.nfc-enrolment,.nfc-tag-row{grid-template-columns:1fr}.nfc-enrolment .span-2{grid-column:auto}.nfc-tag-row>.actions{justify-content:flex-start}}
.parser-readiness-stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}.parser-readiness-stats .stat-card{display:grid;align-content:start;gap:.2rem}.parser-readiness-stats .stat-card strong{min-width:0}.readiness-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:.8rem}.readiness-grid .status-card{display:grid;align-content:start;gap:.55rem;min-width:0;padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.readiness-grid .status-card .badge{justify-self:start}.readiness-grid .status-card small,.readiness-grid .status-card p{margin:0;color:var(--muted)}
.managed-jobs-table th:last-child,.managed-jobs-table td:last-child{min-width:7.5rem}
.marker-design-editor{display:grid;grid-template-columns:minmax(18rem,.75fr) minmax(0,1.25fr);gap:1rem;padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}
.marker-design-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-content:center;min-height:18rem;padding:1.25rem;border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 88%,#58a 12%),var(--surface))}
.marker-design-preview>div{display:grid;justify-items:center;gap:.8rem;text-align:center}.marker-design-preview small{color:var(--muted)}
.marker-design-sample{--marker-preview-color:#59636e;--marker-preview-counter-rotate:45deg;position:relative;display:block;width:var(--marker-preview-size,30px);height:calc(var(--marker-preview-size,30px) * 1.267);border:var(--marker-preview-border-width,3px) solid var(--marker-preview-border,#fff);border-radius:50% 50% 50% 0;background:var(--marker-preview-color);box-shadow:0 3px 9px #0008;rotate:-45deg}
.marker-design-sample::after{content:attr(data-symbol);position:absolute;inset:5px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#111;font-size:.72rem;font-weight:900;rotate:var(--marker-preview-counter-rotate)}
.marker-design-sample.reference{--marker-preview-color:var(--marker-preview-reference,#c99d54)}.marker-design-sample.research{--marker-preview-color:var(--marker-preview-research,#7c4dff)}
.marker-design-editor[data-marker-shape="circle"] .marker-design-sample,.marker-design-editor[data-marker-shape="square"] .marker-design-sample{--marker-preview-counter-rotate:0deg;height:var(--marker-preview-size,30px);rotate:0}.marker-design-editor[data-marker-shape="circle"] .marker-design-sample{border-radius:50%}.marker-design-editor[data-marker-shape="square"] .marker-design-sample{border-radius:5px}
.marker-design-editor[data-marker-shape="diamond"] .marker-design-sample{--marker-preview-counter-rotate:-45deg;height:var(--marker-preview-size,30px);border-radius:5px;rotate:45deg}
.marker-design-editor[data-marker-shadow="false"] .marker-design-sample{box-shadow:none}.marker-design-fields{align-content:start}.marker-design-fields output{display:block;color:var(--muted);font-size:.82rem}
@media(max-width:850px){.marker-design-editor{grid-template-columns:1fr}.marker-design-preview{min-height:auto}}
.cookie-notice{position:fixed;z-index:1200;left:max(1rem,env(safe-area-inset-left));right:max(1rem,env(safe-area-inset-right));bottom:max(1rem,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:1.25rem;max-width:72rem;margin-inline:auto;padding:1rem 1.15rem;border:1px solid var(--border);border-radius:var(--radius,18px);background:var(--surface);color:var(--text);box-shadow:0 18px 60px rgba(0,0,0,.35)}
.cookie-notice[hidden]{display:none}.cookie-notice p{margin:.25rem 0 0;color:var(--muted);max-width:62ch}.cookie-notice-actions{display:flex;align-items:center;gap:.65rem;flex:0 0 auto}
@media(max-width:700px){.cookie-notice{align-items:stretch;flex-direction:column}.cookie-notice-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-notice-actions>*{width:100%;justify-content:center}}
.imprint-assistant [hidden]{display:none!important}.imprint-assistant .panel-header{align-items:flex-start}.imprint-assistant .panel-header>div{min-width:0}.imprint-assistant .panel-header p:last-child{max-width:68ch;color:var(--muted)}
.imprint-assessment{margin-bottom:1rem}.imprint-assessment p{margin:.35rem 0}.imprint-assessment ul{margin:.45rem 0;padding-left:1.25rem}.imprint-assessment small{display:block;margin-top:.7rem;color:var(--muted)}
.imprint-profile-form>fieldset,.imprint-profile-form>details{margin:0}.imprint-profile-form>details{padding:.85rem;border:1px solid var(--border);border-radius:10px;background:color-mix(in srgb,var(--surface-2) 46%,transparent)}.imprint-profile-form>details>summary{font-weight:800}.imprint-details-body{margin-top:1rem}.imprint-profile-form fieldset>p:first-of-type{margin-top:0}.imprint-profile-form label small{display:block;margin-top:.25rem;color:var(--muted)}
.imprint-preview-panel{overflow:hidden}.imprint-preview{padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.legal-page-content{overflow-wrap:anywhere}.legal-page-content .legal-section+ .legal-section{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--border)}.legal-page-content .legal-section h2{margin-bottom:.65rem}.legal-page-content address{font-style:normal}.legal-page-content p:last-child{margin-bottom:0}
@media(max-width:700px){.imprint-assistant .panel-header,.imprint-preview-panel .panel-header{align-items:stretch;flex-direction:column}.imprint-assistant .badge,.imprint-preview-panel .badge{align-self:flex-start}.imprint-profile-form>details,.imprint-profile-form>fieldset{padding:.75rem}.imprint-preview{padding:.8rem}}
.navigation-preference-list{display:grid;gap:.55rem;margin:.8rem 0 0;padding:0;list-style:none}.navigation-preference-list li{display:grid;grid-template-columns:2.25rem minmax(11rem,1fr) minmax(9rem,auto) minmax(7rem,auto) auto;align-items:center;gap:.65rem;padding:.65rem;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.navigation-preference-icon{display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--border);border-radius:50%;color:var(--gold-2)}.navigation-order-actions{display:flex;gap:.3rem}.navigation-order-actions .icon-button{min-width:2.25rem;min-height:2.25rem}@media(max-width:760px){.navigation-preference-list li{grid-template-columns:2.25rem minmax(0,1fr) auto}.navigation-preference-list li>label{grid-column:2/-1}.navigation-order-actions{grid-column:3;grid-row:1}}
.storage-assignment-form{display:grid;gap:1rem}.storage-assignment-form>label{max-width:44rem}.storage-page-card{display:grid;gap:.75rem;padding:1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.storage-page-card>header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.storage-page-card>header div{display:grid;gap:.15rem}.storage-page-card>header small{color:var(--muted)}.storage-slot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(7rem,1fr));gap:.55rem}.storage-slot{display:grid;place-items:center;gap:.15rem;min-height:6.5rem;padding:.6rem;border:2px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);text-align:center}.storage-slot>span{font-size:1.35rem;font-weight:900}.storage-slot small{max-width:100%;overflow:hidden;text-overflow:ellipsis}.storage-slot.is-free{border-color:var(--green);cursor:pointer}.storage-slot.is-free:hover,.storage-slot.is-free:focus-visible{background:color-mix(in srgb,var(--green) 14%,var(--surface))}.storage-slot.is-occupied{opacity:.8;background:color-mix(in srgb,var(--surface) 75%,var(--border))}@media(max-width:560px){.storage-page-card{padding:.75rem}.storage-page-card>header{align-items:stretch;flex-direction:column}.storage-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.storage-slot{min-height:5.6rem}}
