/* Screwps Kompass im Screwps-Look: Farben, Schriften und Bausteine aus
   frontend/app/globals.css (Screwps), ergänzt um das, was nur Kompass braucht.
   Schriften liegen hier (SIL Open Font License), nichts wird von fremden Seiten geladen. */
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:400;font-display:swap;src:url(fonts/plus-jakarta-sans-400-latin.woff2) format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:600;font-display:swap;src:url(fonts/plus-jakarta-sans-600-latin.woff2) format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:700;font-display:swap;src:url(fonts/plus-jakarta-sans-700-latin.woff2) format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:800;font-display:swap;src:url(fonts/plus-jakarta-sans-800-latin.woff2) format("woff2")}
@font-face{font-family:"Big Shoulders Display";font-style:normal;font-weight:800;font-display:swap;src:url(fonts/big-shoulders-display-800-latin.woff2) format("woff2")}
:root{--color-primary:#ec3469;--color-primary-deep:#a91a45;--color-primary-ink:#5c0f2b;--color-primary-light:#ff9ebb;--color-on-dark:#fff8f6;--color-on-dark-soft:#f3d9e1;--color-on-primary:#fff8fa;--color-primary-contrast:#ffffff;--color-primary-strong:#d42a5c;--color-bg:#f5ede5;--color-text:#1a0100;--color-surface:#ffffff;--color-surface-2:#fbf6f0;--color-surface-warm:#fffaf5;--color-primary-wash:#fff3f6;--color-text-muted:#6b5e57;--color-text-soft:#4f433d;--color-border:#e4d8cc;--color-border-warm:#efe3d6;--color-danger:#d33a3a;--color-danger-ink:#a32626;--color-success:#2e9e6b;--color-success-soft:#e3f3ea;--color-success-soft-ink:#164a34;--color-warning:#e0a100;--color-warning-soft:#fbecd2;--color-warning-soft-ink:#4a3005;--color-warning-soft-border:#f1d9ad;--radius:16px;--radius-sm:10px;--radius-pill:999px;--radius-marketing:20px;--font:"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-display-stack:"Big Shoulders Display",ui-sans-serif,sans-serif;--shadow-md:0 8px 28px -12px rgba(26,1,0,.18);--shadow-lift:0 22px 44px -18px rgba(169,26,69,.38);--shadow-card:0 16px 34px -20px rgba(26,1,0,.35);--container-max:1180px}
*{box-sizing:border-box}
body{margin:0}
.page{font-family:var(--font);color:var(--color-text);background-color:var(--color-bg);background-image:radial-gradient(760px 420px at 88% -8%,color-mix(in srgb,var(--color-primary) 14%,transparent),transparent 60%),radial-gradient(680px 460px at -10% 92%,color-mix(in srgb,var(--color-primary) 10%,transparent),transparent 60%);min-height:100%;font-size:16px;line-height:1.55;padding:0 clamp(16px,4vw,48px) 64px}
.page a{color:var(--color-primary-deep)}
.page a:hover{color:var(--color-primary-ink)}
.topnav{min-height:68px;display:flex;align-items:center;padding-block:22px;position:relative;z-index:20}
.topnav__inner{width:100%;max-width:var(--container-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}
.brand{display:inline-flex;align-items:baseline;font-family:var(--font-display-stack);font-weight:800;font-size:2rem;color:var(--color-text);text-decoration:none}
.page a.brand{color:var(--color-text)}
.brand__accent{color:var(--color-primary)}
.brand__dot{color:var(--color-primary);font-size:.73em;margin-left:2px}
.brand-mark{flex:none;align-self:center;width:1.2em;height:1.2em;margin-right:.3em}
.topnav__nav{display:flex;align-items:center;flex-wrap:wrap;gap:clamp(14px,3vw,28px);font-size:.92rem;font-weight:600}
.page a.topnav__link,.topnav__link{color:var(--color-text-muted);font-weight:600;text-decoration:none;display:inline-flex;align-items:center;background:none;border:0;font:inherit;cursor:pointer;padding:0}
.topnav__link[aria-current="page"],.topnav__link[aria-current="location"]{color:var(--color-primary-deep);font-weight:800;box-shadow:inset 0 -2px 0 var(--color-primary);padding-bottom:2px}
.nav-more{position:relative;display:inline-flex}
.nav-more__toggle{display:inline-flex;align-items:center;gap:6px}
.nav-more__menu{position:absolute;top:calc(100% + 12px);right:0;z-index:30;min-width:290px;padding:8px;display:flex;flex-direction:column;gap:2px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border-warm);box-shadow:var(--shadow-md)}
.page a.nav-more__item,.nav-more__item{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:10px 12px;border:0;border-radius:var(--radius-sm);background:none;color:var(--color-text);font:inherit;text-align:left;text-decoration:none}
.nav-more__item small{color:var(--color-text-muted);font-size:.78rem;font-weight:400}
.nav-more__item[aria-current="page"]{background:var(--color-surface-warm)}
.nav-more__item[aria-current="page"] b{color:var(--color-primary-deep)}
.nav-more__sep{margin:6px 4px;border:0;border-top:1px solid var(--color-border-warm)}
main{max-width:var(--container-max);margin:24px auto 0}
.vw{display:flex;flex-direction:column;gap:28px}
.vw__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.timesheet__head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap}
.timesheet__head-copy{display:flex;flex-direction:column;gap:14px;max-width:760px}
.hero__eyebrow{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary-deep)}
.hero__eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--color-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--color-primary) 16%,transparent)}
.timesheet__title{margin:0;font-family:var(--font-display-stack);font-weight:800;font-size:clamp(2.4rem,4.8vw,3.75rem);line-height:.98}
.timesheet__title em{font-style:normal;color:var(--color-primary)}
.timesheet__next{margin:0;font-size:1.12rem;color:var(--color-text-soft)}
.muted{color:var(--color-text-muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:inherit;font-weight:700;font-size:.96rem;line-height:1.55;padding:13px 24px;border-radius:var(--radius-pill);border:1px solid transparent;text-decoration:none;cursor:pointer;min-height:44px}
.page a.btn{text-decoration:none}
.btn--primary{background:var(--color-primary-strong);color:var(--color-on-primary);box-shadow:var(--shadow-lift)}
.page a.btn--primary{color:var(--color-on-primary)}
.btn--secondary{background:transparent;color:var(--color-text);border-color:var(--color-border)}
.page a.btn--secondary{color:var(--color-text)}
.btn--ink{background:var(--color-text);color:var(--color-on-dark)}
.page a.btn--ink{color:var(--color-on-dark)}
.btn--small{padding:6px 12px;font-size:.82rem;min-height:36px}
.btn[aria-current="page"],.btn[aria-pressed="true"]{background:var(--color-text);color:var(--color-on-dark);border-color:var(--color-text)}
.page a.btn[aria-current="page"]{color:var(--color-on-dark)}
.anlage-nav{display:flex;flex-wrap:wrap;gap:8px}
.vw-chip{display:inline-flex;align-items:center;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:4px 9px;border-radius:999px;background:var(--color-border-warm);color:var(--color-text-soft);white-space:normal}
.vw-chip--admin{background:var(--color-primary-wash);color:var(--color-primary-deep)}
.vw-chip--ok{background:var(--color-success-soft);color:var(--color-success-soft-ink)}
.vw-chip--warn{background:var(--color-warning-soft);color:var(--color-warning-soft-ink)}
.vw-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.vw-banner{display:flex;flex-wrap:wrap;align-items:center;gap:16px;padding:18px 20px;border-radius:var(--radius-marketing);background:var(--color-text);color:var(--color-on-dark)}
.vw-banner p{margin:0;flex:1 1 260px;color:var(--color-on-dark-soft)}
.vw-banner b{color:var(--color-on-dark)}
.vw-banner .btn--quiet{background:transparent;color:var(--color-on-dark);border-color:var(--color-on-dark-soft)}
.page .vw-banner a.btn--quiet{color:var(--color-on-dark)}
.vw-card{display:flex;flex-direction:column;gap:10px;padding:20px;border-radius:var(--radius-marketing);background:var(--color-surface-warm);border:1px solid var(--color-border-warm);box-shadow:var(--shadow-card);min-width:0}
.vw-card h2,.vw-card h3{margin:0;font-family:var(--font-display-stack);font-weight:800;font-size:1.6rem;line-height:1.02}
.vw-card p{margin:0}
.sz-year{display:flex;align-items:baseline;gap:12px;margin:8px 0 10px;font-family:var(--font-display-stack);font-weight:800;font-size:1.7rem;line-height:1}
.sz-year small{font-family:var(--font);font-size:.82rem;font-weight:600;color:var(--color-text-muted)}
.sz-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.sz-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:20px;align-items:start;padding:16px 20px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border-warm)}
.sz-row--soon{border-color:var(--color-warning-soft-border);background:var(--color-surface-warm)}
.sz-when{display:flex;flex-direction:column;gap:2px}
.sz-when b{font-family:var(--font-display-stack);font-weight:800;font-size:1.35rem;line-height:1}
.sz-when small{color:var(--color-text-muted);font-size:.78rem}
.sz-main{display:flex;flex-direction:column;gap:4px;min-width:0}
.sz-main h3{margin:0;font-size:1.05rem;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.sz-main p{margin:0;font-size:.88rem}
.sz-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.sz-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:.85rem;color:var(--color-text-muted)}
.quote{margin:6px 0 0;padding:8px 12px;border-radius:var(--radius-sm);background:var(--color-surface-2);font-size:.86rem;color:var(--color-text-soft)}
.quote summary{cursor:pointer;font-weight:700;color:var(--color-text)}
.notice{border-radius:var(--radius-sm);padding:16px;font-weight:600;border:1px solid transparent;line-height:1.45}
.notice--warning{color:var(--color-warning-soft-ink);background:color-mix(in srgb,var(--color-warning) 14%,transparent);border-color:color-mix(in srgb,var(--color-warning) 32%,transparent)}
.vw-table-wrap{overflow-x:auto;max-width:100%;margin:0 -4px}
.vw-table{border-collapse:collapse;width:100%;min-width:880px}
.vw-table th{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-muted);text-align:left;padding:8px 10px;border-bottom:1px solid var(--color-border)}
.vw-table td{padding:9px 10px;border-bottom:1px solid var(--color-border-warm);font-size:.9rem;vertical-align:top}
.sort{background:none;border:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;padding:0;display:inline-flex;gap:4px}
.tb-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.tb-head h2{margin:0}
.tb-filter th{padding-top:2px;padding-bottom:10px;font-weight:400;text-transform:none;letter-spacing:0}
.tb-filter input,.tb-filter select,.tb-edit input,.tb-edit select,.tb-edit textarea{width:100%;min-width:0;padding:6px 8px;border-radius:8px;border:1px solid var(--color-border-warm);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.85rem}
.tb-edit > td{background:var(--color-primary-wash)}
.tb-edit input,.tb-edit select,.tb-edit textarea{border-color:var(--color-primary)}
.tb-edit__label{display:block;font-size:.75rem;color:var(--color-text-muted)}
.tb-edit__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(200px,100%),1fr));gap:10px 16px}
.tb-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px;font-size:.85rem}
.tb-size{display:inline-flex;align-items:center;gap:8px}
.tb-pager{display:flex;align-items:center;gap:8px}
.row-menu{position:relative;display:inline-block}
.row-menu__list{position:absolute;right:0;top:calc(100% + 6px);z-index:20;min-width:240px;padding:6px;display:flex;flex-direction:column;border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-border-warm);box-shadow:var(--shadow-md)}
.row-menu__item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:40px;padding:8px 12px;border:0;border-radius:8px;background:none;color:var(--color-text);font:inherit;font-size:.9rem;font-weight:600;text-align:left;cursor:pointer}
.row-menu__item small{font-weight:400;color:var(--color-text-muted)}
.row-menu__item--danger{color:var(--color-danger-ink)}
.row-menu__sep{border:0;border-top:1px solid var(--color-border-warm);margin:4px 0;width:100%}
.diff{display:inline-flex;gap:6px;align-items:center;font-size:.8rem;padding:2px 8px;border-radius:999px;background:var(--color-warning-soft);color:var(--color-warning-soft-ink);font-weight:700}
.diff s{font-weight:400}
.meter{height:8px;border-radius:999px;background:var(--color-border-warm);overflow:hidden;width:220px}
.meter span{display:block;height:100%;background:var(--color-success)}
.cal-set{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.cal-set legend{padding:0;font-size:1.05rem;font-weight:800}
.cal-set p{margin:0}
.cal-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:10px}
.cal-option{display:flex;align-items:flex-start;gap:10px;min-height:44px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--color-border-warm);background:var(--color-surface);cursor:pointer}
.cal-option small{display:block}
.cal-option input,.cal-chip input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--color-primary-strong)}
.cal-reminders{display:flex;flex-wrap:wrap;gap:10px}
.cal-chip{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px;border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);font-weight:700}
@media (max-width:720px){.sz-row{grid-template-columns:minmax(0,1fr);gap:8px;padding:14px 16px}.sz-when{flex-direction:row;gap:6px;align-items:baseline}.sz-actions{justify-content:stretch}.nav-more__menu{position:static;box-shadow:none}.topnav__nav{gap:12px}}
/* Kompass */
html,body{background:var(--color-bg)}
[hidden]{display:none!important}
.page{display:flex;flex-direction:column;min-height:100vh}
.page main{flex:1;width:100%}
.brand__product{margin-left:10px;font-size:.62em;color:var(--color-primary-deep)}
.login{display:flex;flex-wrap:wrap;gap:40px;align-items:center;justify-content:space-between}
.login__copy{flex:1 1 420px}
.login__card{flex:0 1 440px;gap:16px;padding:28px}
.login__card .btn{align-self:stretch}
.small{font-size:.85rem}
.tiny{font-size:.78rem}
.source-line{font-size:.82rem}
.hint{font-size:.85rem;align-self:center}
.head-actions{display:flex;gap:8px;flex-wrap:wrap}
.head-actions--wide{gap:12px;align-items:center}
.season{display:inline-flex;align-items:center;gap:10px;font-weight:700;min-width:0;max-width:100%}
.season select{min-width:0;max-width:min(32rem,100%);text-overflow:ellipsis}
.season select,.season input,.tb-size select{font:inherit;padding:8px 12px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-surface);min-height:44px}
.tb-size select{padding:4px 8px;border-radius:8px;border-color:var(--color-border-warm);min-height:0}
.usage{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:.88rem}
.vw-table-wrap--menus{overflow:visible}
.vw-table td.actions,.vw-table th.actions{text-align:right}
.tb-detail > td{background:var(--color-surface-2)}
.tb-panel{display:flex;flex-direction:column;gap:12px;padding:16px;border-radius:var(--radius);background:var(--color-primary-wash);border:1px solid var(--color-border-warm)}
.tb-panel input,.tb-panel select{width:100%;min-width:0;padding:6px 8px;border-radius:8px;border:1px solid var(--color-primary);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.85rem}
.checks{border:0;padding:0;margin:12px 0 0}
.checks__list{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.85rem}
.checks__list input{width:auto}
.edit-note{display:block;margin-top:10px}
.edit-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.notice--error{color:var(--color-danger-ink);background:color-mix(in srgb,var(--color-danger) 10%,transparent);border-color:color-mix(in srgb,var(--color-danger) 28%,transparent)}
.notice--ok{color:var(--color-success-soft-ink);background:var(--color-success-soft);border-color:color-mix(in srgb,var(--color-success) 30%,transparent)}
.site-foot{width:100%;max-width:var(--container-max);margin:48px auto 0;padding-top:20px;border-top:1px solid var(--color-border-warm);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:.85rem;color:var(--color-text-muted)}
.btn:disabled{opacity:.55;cursor:not-allowed}
.vw-table-wrap:focus-visible,.btn:focus-visible,.sort:focus-visible,.row-menu__item:focus-visible,.topnav__link:focus-visible{outline:2px solid var(--color-primary-deep);outline-offset:2px}
.vw-table td.actions .btn{white-space:nowrap}
.diff{flex-wrap:wrap;border-radius:var(--radius-sm)}
/* Groups, priority and cost */
.prio{display:inline-flex;align-items:center;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:4px 9px;border-radius:999px;white-space:nowrap}
.prio--hoch{background:#fbe1e1;color:#8a1c1c}
.prio--mittel{background:var(--color-warning-soft);color:var(--color-warning-soft-ink)}
.prio--niedrig{background:var(--color-border-warm);color:var(--color-text-soft)}
.cat{display:inline-flex;align-items:center;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:999px;border:1px solid var(--color-border);color:var(--color-text-soft);background:var(--color-surface);white-space:nowrap}
.view-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.view-bar select{font:inherit;padding:4px 8px;border-radius:8px;border:1px solid var(--color-border-warm);background:var(--color-surface)}
.vw-groups{display:flex;flex-direction:column;gap:28px}
.vw-groups:empty{display:none}
.grp-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.grp-head h2{font-size:1.45rem;overflow-wrap:anywhere}
.grp-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;cursor:pointer}
.grp-meta{margin:0;font-size:.85rem;color:var(--color-text-muted)}
.grp-panel{padding:16px 18px;border-radius:var(--radius-sm);background:var(--color-primary-wash);display:flex;flex-direction:column;gap:10px}
.grp-panel:empty{display:none}
.grp-panel p{margin:0}
.approve-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.approve-list li{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 12px;border-radius:var(--radius-sm);background:var(--color-surface);border:1px solid var(--color-border-warm)}
.approve-list .grow{flex:1 1 260px;min-width:0}
.approve-list li.gone{opacity:.6}
.approve-list li.gone .grow b,.approve-list li.gone .grow span:first-of-type{text-decoration:line-through}
.btn--danger-quiet{background:transparent;color:var(--color-danger-ink);border-color:color-mix(in srgb,var(--color-danger) 40%,transparent)}
/* A single row action may wrap, so wide tables stay inside the card. */
.vw-table td.actions > .btn{white-space:normal;max-width:10rem;text-align:center}
/* Phones: wide tables scroll inside their card; a row menu opens in its cell instead of floating (not cut off). */
@media (max-width:720px){
.vw-table-wrap--menus{overflow-x:auto}
.row-menu__list{position:static;margin-top:6px;box-shadow:none;min-width:200px}
}
/* „Neu einordnen“: progress and history */
.progress-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.progress-row .meter{flex:1 1 260px;width:auto;height:10px}
.steps{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;font-size:.85rem}
.steps time{color:var(--color-text-muted);font-variant-numeric:tabular-nums}
details.history summary{cursor:pointer;font-weight:700;font-size:.88rem}
.progress-head{margin:0}
/* „Zum Inhalt springen“ wie in Screwps (frontend/app/globals.css .skip-link): erst sichtbar, wenn fokussiert. */
.skip-link{position:absolute;left:12px;top:-100px;z-index:100;padding:10px 16px;border-radius:var(--radius-sm);background:var(--color-text);color:var(--color-on-dark);font-weight:700;text-decoration:none}
.page a.skip-link{color:var(--color-on-dark)}
.skip-link:focus{top:12px}
.skip-link:focus-visible{outline:3px solid var(--color-primary-deep);outline-offset:3px}
#main:focus{outline:none}
/* Meldungen bleiben im DOM (Live-Regionen); leer nehmen sie keinen Platz ein. */
#status:empty,#status-error:empty{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
/* Neue Saison: Sommer oder Winter, Beginn und Ende (KOM-52 bis KOM-54) */
.season-pick{display:inline-flex;flex-wrap:wrap;align-items:center;gap:10px;min-width:0;max-width:100%}
.ns-panel h3{margin:0;font-size:1rem}
.ns-choice{display:flex;flex-wrap:wrap;gap:10px;border:0;margin:0;padding:0}
.ns-choice legend{margin-bottom:6px}
.ns-option{display:flex;align-items:center;gap:8px;padding:10px 14px;min-height:44px;border-radius:10px;border:1px solid var(--color-border);background:var(--color-surface);cursor:pointer}
.ns-option:has(input:checked){border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}
.tb-panel .ns-option input{width:auto}
.ns-option span{display:flex;flex-direction:column}
.ns-dates{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:12px;align-items:end}
.ns-found:empty{display:none}
.ns-found{margin:0;font-size:.85rem}
/* Fortschritt beim Abrufen (KOM-56) */
.pg-stack{display:flex;flex-direction:column;gap:12px}
.pg-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);scroll-margin-top:80px}
.pg-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px}
.pg-steps{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px;font-size:.88rem}
.pg-steps li{display:grid;grid-template-columns:22px 70px 1fr;gap:8px;align-items:baseline}
.pg-steps time{color:var(--color-text-muted);font-variant-numeric:tabular-nums}
.pg-mark{font-weight:800;text-align:center}
.pg-done .pg-mark{color:var(--color-success)}
.pg-now{font-weight:700}
.pg-now .pg-mark{color:var(--color-primary)}
.pg-wait{color:var(--color-text-muted)}
.pg-failed .pg-mark{color:var(--color-danger)}
@media (max-width:640px){.pg-steps li{grid-template-columns:22px 1fr}.pg-steps time{grid-column:2}}

/* Screwps icons (DS-02, DS-03): the same rules as frontend/app/globals.css */
.ic{flex:none;display:inline-block;vertical-align:-.2em;--ic-ball:var(--color-primary);--ic-seam:var(--color-on-primary);--ic-knob:var(--color-surface)}
.btn .ic{margin-right:6px}
.med{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:var(--color-text);color:var(--color-on-dark);--ic-knob:var(--color-text)}
.med--soft{background:var(--color-primary-wash);color:var(--color-text)}

/* --- Kompass neu: Bereiche, Überblick, Aufgaben, Eingang (KOM-60 bis KOM-71) --- */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.topnav__link .ic{margin-right:6px}
.nav-count{margin-left:4px;min-width:1.4em;padding:0 6px;border-radius:var(--radius-pill);background:var(--color-primary-wash);color:var(--color-primary-deep);font-size:.74rem;font-weight:800;text-align:center}
.nav-count:empty{display:none}
.tabbar{display:none}
.kp-page{display:flex;flex-direction:column;gap:20px}
.kp-page[hidden],[data-page][hidden]{display:none}
.kp-head{display:flex;flex-direction:column;gap:8px;max-width:820px}
.kp-head p{margin:0}
.kp-head--row{max-width:none;flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px}
.kp-title{margin:0;font-family:var(--font-display-stack);font-weight:800;font-size:clamp(2rem,4vw,3rem);line-height:1}
.kp-title em{font-style:normal;color:var(--color-primary)}
.kp-title:focus{outline:none}
.kp-title:focus-visible{outline:3px solid var(--color-primary);outline-offset:4px}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.page a.kpi,.kpi{display:flex;gap:14px;align-items:center;padding:16px 18px;border-radius:var(--radius);background:var(--color-surface);border:1px solid var(--color-border-warm);box-shadow:var(--shadow-card);color:var(--color-text);text-decoration:none}
.kpi--warn{border-color:var(--color-warning-soft-border);background:var(--color-warning-soft)}
.kpi__text{display:flex;flex-direction:column;min-width:0}
.kpi__value{font-family:var(--font-display-stack);font-size:2rem;line-height:1}
.kpi__label{font-weight:700}
.kpi__sub{overflow-wrap:anywhere}
.ov-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:20px;align-items:start}
.ov-side{display:flex;flex-direction:column;gap:20px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 12px}
.chip{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:6px 12px;border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font:inherit;font-size:.84rem;font-weight:700;cursor:pointer}
.chip[aria-pressed="true"]{background:var(--color-text);color:var(--color-on-dark);border-color:var(--color-text);--ic-knob:var(--color-text)}
.chip__count{font-weight:800;opacity:.75}
.vw-card .nx-week{font-family:var(--font);line-height:1.3;margin:16px 0 6px;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}
.nx-list,.side-list,.tsteps,.history,.suggest__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.nx-row{display:grid;grid-template-columns:72px 130px minmax(0,1fr);gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--color-border-warm)}
.nx-when{display:flex;flex-direction:column;line-height:1.2}
.nx-when small{color:var(--color-text-muted)}
.nx-kind{justify-self:start;gap:4px}
.nx-kind--medenspiel{background:var(--color-primary-wash);color:var(--color-primary-deep)}
.nx-kind--frist{background:var(--color-warning-soft);color:var(--color-warning-soft-ink)}
.nx-main{display:flex;flex-direction:column;min-width:0}
.nx-title{font-weight:700;overflow-wrap:anywhere}
.side-row{display:flex;flex-direction:column;gap:2px;padding:10px 0;border-top:1px solid var(--color-border-warm)}
.side-row:first-child{border-top:0}
.side-row .btn{align-self:flex-start;margin-top:6px}
.side-row--warn > a{color:var(--color-warning-soft-ink)}
.crumbs{font-size:.88rem;color:var(--color-text-muted)}
.task-badges{display:flex;flex-wrap:wrap;gap:8px}
.task-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:20px;align-items:start}
.task-main,.task-side{display:flex;flex-direction:column;gap:20px}
.task-panel{width:100%}
.task-panel td{padding:0}
.owner-row{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:flex-end}
.owner-row p{margin:0;flex:1 1 220px}
.field{display:flex;flex-direction:column;gap:4px}
.field select,.field input,.step-add input{font:inherit;padding:8px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);min-height:40px}
.stepper{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.stepper li{display:flex;gap:10px;align-items:flex-start}
.stepper__mark{flex:none;display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;border:2px solid var(--color-border);font-weight:800;font-size:.82rem}
.stepper__done .stepper__mark{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success-soft-ink)}
.tsteps li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:8px 0;border-top:1px solid var(--color-border-warm)}
.tsteps label{flex:1 1 240px;display:flex;gap:8px;align-items:flex-start}
.tsteps input{width:20px;height:20px;margin-top:2px;flex:none}
.tsteps__done label{color:var(--color-text-muted);text-decoration:line-through}
.step-add{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-top:12px}
.step-add .field{flex:1 1 260px}
.suggest{margin-top:12px;padding:12px 14px;border:1px dashed var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary-wash)}
.suggest p{margin:0 0 6px}
.suggest__list li{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--color-border-warm)}
.facts{display:flex;flex-direction:column;gap:6px;margin:0}
.facts .fact{display:grid;grid-template-columns:minmax(90px,max-content) minmax(0,1fr);gap:14px}
.facts dt{color:var(--color-text-muted);font-size:.86rem}
.facts dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.facts--row{flex-direction:row;flex-wrap:wrap;gap:8px 28px}
.facts--row .fact{display:flex;flex-direction:column;gap:0}
.history li{padding:6px 0;border-top:1px solid var(--color-border-warm);font-size:.88rem}
.history time{color:var(--color-text-muted);font-variant-numeric:tabular-nums}
.inbox{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,3fr);gap:20px;align-items:start}
.inbox__sources{display:flex;flex-direction:column;gap:6px}
.src-pick{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;border:1px solid var(--color-border-warm);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font:inherit;text-align:left;cursor:pointer}
.src-pick[aria-pressed="true"]{border-color:var(--color-text);box-shadow:inset 3px 0 0 var(--color-primary)}
.inbox__main{display:flex;flex-direction:column;gap:16px;min-width:0}
.inbox__card h2{margin:6px 0;font-size:1.5rem}
.inbox__card h2:focus{outline:none}
.inbox__card h2:focus-visible{outline:3px solid var(--color-primary);outline-offset:3px}
.inbox__meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.inbox__actions{margin-top:16px}
.inbox__empty{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.dup{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;padding:10px 12px;border-radius:var(--radius-sm);background:var(--color-warning-soft);color:var(--color-warning-soft-ink)}
.bulk p{margin:0 0 8px}
kbd{display:inline-block;min-width:1.4em;padding:0 5px;border:1px solid currentColor;border-radius:5px;font:inherit;font-size:.72rem;line-height:1.5;opacity:.8}
@media (max-width:960px){.ov-grid,.task-grid,.inbox{grid-template-columns:minmax(0,1fr)}.inbox__sources{flex-direction:row;overflow-x:auto;padding-bottom:4px}.src-pick{width:auto;flex:none}}
@media (max-width:719px){
.topnav__nav .topnav__link[data-route]{display:none}
.tabbar:not([hidden]){display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--color-surface);border-top:1px solid var(--color-border-warm);box-shadow:0 -6px 18px -12px rgba(26,1,0,.3);padding:4px 4px calc(4px + env(safe-area-inset-bottom))}
.page a.tabbar__link,.tabbar__link{hyphens:manual;text-align:center;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:48px;padding:6px 2px;color:var(--color-text-muted);font-size:.7rem;font-weight:700;text-decoration:none;border-radius:var(--radius-sm)}
.tabbar__link[aria-current="page"]{color:var(--color-primary-deep);background:var(--color-primary-wash)}
.page{padding-bottom:84px}
.nx-row{grid-template-columns:60px minmax(0,1fr)}
.nx-kind{grid-column:2}
.nx-main{grid-column:1 / -1}
.stepper{grid-template-columns:minmax(0,1fr)}
}
.chip:focus-visible,.src-pick:focus-visible,.kpi:focus-visible,.tabbar__link:focus-visible,.field select:focus-visible,.field input:focus-visible,.tsteps input:focus-visible{outline:2px solid var(--color-primary-deep);outline-offset:2px}
/* Funktionäre und „Mehr“ (KOM-73) */
.nav-more__menu[hidden]{display:none}
.nav-more__toggle[aria-expanded="true"],.nav-more:has([aria-current="page"]) .nav-more__toggle{color:var(--color-primary-deep);font-weight:800}
@media (max-width:719px){.topnav__nav .nav-more{display:none}}
.more-list{gap:4px}
.assign-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1.4fr) minmax(160px,1fr);gap:8px 16px;align-items:center}
@media (max-width:719px){.assign-row{grid-template-columns:minmax(0,1fr)}}
/* Plätze-Planer (KOM-85, KOM-86) */
.planner{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,3fr);gap:20px;align-items:start}
.plan-cards{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.plan-card{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--color-border-warm);border-radius:var(--radius-sm);background:var(--color-surface);cursor:grab}
.plan-card--active{border-color:var(--color-primary);box-shadow:inset 3px 0 0 var(--color-primary)}
.plan-card__text{flex:1;min-width:0;font-size:.88rem;overflow-wrap:anywhere}
.plan-grip{color:var(--color-text-muted)}
.plan-main{display:flex;flex-direction:column;gap:14px;min-width:0}
.plan-nav{display:flex;align-items:center;gap:10px}
.plan-legend{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0}
.plan-key{display:inline-block;width:14px;height:14px;border-radius:4px;border:1px solid var(--color-text-muted)}
.plan-key--event{background:var(--color-primary-wash);border:2px solid var(--color-primary-strong)}
.plan-key--free{background:var(--color-success-soft)}
.plan-key--busy{background:var(--color-warning-soft);border:2px solid var(--color-warning-soft-ink)}
.plan-key--blocked{background:repeating-linear-gradient(45deg,var(--color-border-warm),var(--color-border-warm) 4px,var(--color-surface) 4px,var(--color-surface) 8px)}
.plan-hours,.plan-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px;align-items:center}
.plan-scale{display:flex;justify-content:space-between;font-size:.72rem;color:var(--color-text-muted)}
.plan-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.plan-place{font-weight:700;font-size:.88rem}
.plan-line{position:relative;height:30px;border-radius:6px;background:var(--color-success-soft);overflow:hidden}
.plan-line--blocked{background:repeating-linear-gradient(45deg,var(--color-border-warm),var(--color-border-warm) 6px,var(--color-surface) 6px,var(--color-surface) 12px)}
.plan-row--over .plan-line{outline:3px dashed var(--color-primary);outline-offset:-3px}
.plan-seg{position:absolute;top:3px;bottom:3px;border-radius:4px;font-size:.7rem;font-weight:700;padding:0 4px;white-space:nowrap;overflow:hidden;display:flex;align-items:center}
.plan-seg--busy{background:var(--color-warning-soft);border:2px solid var(--color-warning-soft-ink);color:var(--color-warning-soft-ink)}
.plan-seg--event{background:var(--color-primary-wash);border:2px solid var(--color-primary-strong);color:var(--color-primary-deep)}
.plan-seg--mine{background:var(--color-text);color:var(--color-on-dark);border:2px dashed var(--color-primary)}
.plan-check--busy{color:var(--color-warning-soft-ink)}
.plan-check--blocked{color:var(--color-text-muted)}
@media (max-width:960px){.planner{grid-template-columns:minmax(0,1fr)}}
/* Saisons (KOM-87 bis KOM-90) */
.season-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.season-card{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px;border:1px solid var(--color-border-warm);border-radius:var(--radius-sm);background:var(--color-surface)}
.season-card h3{margin:2px 0 6px;font-size:1.2rem}
.season-card p{margin:0 0 4px}
.season-card--past{background:var(--color-surface-2)}
.wizard-steps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.wizard-steps li{padding:8px 12px;border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:.86rem;font-weight:700;color:var(--color-text-muted)}
.wizard-steps li.is-current{border-color:var(--color-text);color:var(--color-text);box-shadow:inset 3px 0 0 var(--color-primary)}
.wizard-steps li.is-done{color:var(--color-success-soft-ink);background:var(--color-success-soft)}
.copy-list label{display:block;padding:6px 0}
.copy-never{margin:8px 0;padding-left:18px}

/* Kalender-Abo und Datei (KOM-91 bis KOM-95) */
.cal-dialog{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--color-border-warm);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit;padding:20px}
.cal-dialog::backdrop{background:rgba(20,20,19,.45)}
.cal-dialog h2{margin:0;font-size:1.25rem}
.cal-kinds{display:flex;flex-direction:column;gap:6px;font-size:.92rem}
.cal-kinds input,.cal-extra input{width:auto}
.cal-option{border-top:1px solid var(--color-border-warm);margin-top:16px;padding-top:12px}
.cal-option h3{margin:0 0 4px;font-size:1.05rem}
.cal-subscribe{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start;margin-top:8px}
.cal-qr{width:150px;height:150px;background:#fff;border-radius:var(--radius-sm)}
.cal-subscribe__links{flex:1 1 260px;min-width:0}
.cal-apps{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}
.cal-link{width:100%;font-size:.85rem}
.cal-extra{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:6px}

/* Kalender-Seite (KOM-96 bis KOM-98) */
.cal-bar{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin:0 0 12px}
.cal-fn{display:inline-flex;align-items:center;gap:6px}
.cal-fn select{width:auto}
.cal-nav{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto}
.cal-month-title{margin:0 6px;font-size:1.1rem;min-width:9.5em;text-align:center}
.cal-dow,.cal-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.cal-dow{font-size:.78rem;font-weight:700;color:var(--color-text-muted);padding:0 2px 4px}
.cal-month{list-style:none;margin:0;padding:0}
.cal-day{min-height:88px;border:1px solid var(--color-border-warm);border-radius:var(--radius-sm);background:var(--color-surface);font-size:.8rem;overflow:hidden}
.cal-day--out{background:var(--color-surface-2);color:var(--color-text-muted)}
.cal-day--today{border-color:var(--color-primary-deep);box-shadow:inset 0 0 0 1px var(--color-primary-deep)}
.cal-day--chosen{background:var(--color-primary-wash)}
.cal-day__num{display:block;font-weight:700;padding:4px 6px 2px}
.cal-day__btn{display:flex;flex-direction:column;align-items:stretch;width:100%;height:100%;min-height:88px;padding:0 0 4px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}
.cal-day__btn:focus-visible{outline:2px solid var(--color-primary-deep);outline-offset:-2px}
.cal-dot{display:flex;align-items:center;gap:4px;margin:2px 4px 0;padding:1px 6px;border-radius:var(--radius-pill);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--color-surface-2)}
.cal-dot--medenspiel{background:var(--color-primary-wash);color:var(--color-primary-deep)}
.cal-dot--frist{background:var(--color-warning-soft);color:var(--color-warning-soft-ink)}
.cal-dot--aufgabe{background:var(--color-success-soft);color:var(--color-success-soft-ink)}
.cal-dot--termin{background:var(--color-surface-2);color:var(--color-text)}
.cal-dot--turnier{background:var(--color-surface);color:var(--color-text);box-shadow:inset 0 0 0 1px var(--color-border)}
.cal-dot .ic{flex:none}
.cal-more{display:block;margin:2px 6px 0;font-weight:700}
.cal-chosen{margin-top:16px}
.cal-chosen h3,.cal-list-day h3{margin:12px 0 4px;font-size:1rem}
.cal-chosen ul,.cal-list-day ul{list-style:none;margin:0;padding:0}
@media (max-width:640px){
  .cal-nav{margin-left:0}
  .cal-month-title{min-width:0;margin:0 2px}
  .cal-day,.cal-day__btn{min-height:52px}
  /* Icons in a strong colour instead of titles: shape and contrast (WCAG 1.4.1, 1.4.11). */
  .cal-dot{display:inline-flex;padding:0;margin:2px 0 0 4px;background:transparent!important;box-shadow:none}
  .cal-dot--medenspiel{color:var(--color-primary-deep)}
  .cal-dot--frist{color:var(--color-warning-soft-ink)}
  .cal-dot--aufgabe{color:var(--color-success-soft-ink)}
  .cal-dot--termin,.cal-dot--turnier{color:var(--color-text)}
  .cal-dot__text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .cal-more{display:inline;margin:0 0 0 4px;font-size:.72rem}
}

.cal-weekly{display:flex;align-items:center;gap:8px;margin:4px 0}
.cal-weekly input{width:auto}
/* Navigation (KOM-102): the profile on top of „Mehr“, „Abmelden“ at its end; a page under „Mehr“ marks its button. */
.nav-more__toggle--current{color:var(--color-primary-deep);font-weight:800;box-shadow:inset 0 -2px 0 var(--color-primary);padding-bottom:2px}
.page a.nav-profile,.nav-profile{flex-direction:row;align-items:center;gap:12px}
.nav-profile__text{display:flex;flex-direction:column;min-width:0}
.nav-profile__avatar{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--color-text);color:var(--color-on-dark);font-family:var(--font-display-stack);font-weight:800;font-size:1.05rem;letter-spacing:.14em;text-indent:.14em;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-primary)}
.nav-logout{background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;border-top:1px solid var(--color-border-warm)!important;border-radius:0!important;margin-top:4px}
/* „Was im Abo und in der Datei steht“ on a phone (KOM-103): one block per kind, nothing off-screen. */
@media (max-width:719px){
  .cal-what .vw-table{min-width:0}
  .cal-what .vw-table thead{display:none}
  .cal-what .vw-table,.cal-what .vw-table tbody{display:block}
  .cal-what .vw-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:10px 0;border-bottom:1px solid var(--color-border-warm)}
  .cal-what .vw-table th[scope="row"]{grid-column:1/-1;padding:0;border:0}
  .cal-what .vw-table td{padding:0;border:0}
  .cal-what .vw-table td.num::before{content:"Im Kalender: ";color:var(--color-text-muted);font-size:.8rem}
}
/* Benachrichtigungen in „Aufs Handy“ (KOM-104, KOM-105). */
.push-block{margin-top:14px;padding-top:14px;border-top:1px solid var(--color-border-warm)}
.push-sub{margin:0 0 6px;font-family:var(--font-display-stack);font-size:1.25rem;letter-spacing:.01em}
.push-kinds{flex-direction:column;gap:6px}
.push-block .push-sub + .vw-table-wrap,.push-block .push-devices{margin-top:6px}
.push-howto summary{cursor:pointer;font-weight:700;font-size:.88rem}
.push-howto ol{margin:6px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:4px}
@media (max-width:719px){
  .push-devices .vw-table{min-width:0}
  .push-devices .vw-table thead{display:none}
  .push-devices .vw-table,.push-devices .vw-table tbody{display:block}
  .push-devices .vw-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:10px 0;border-bottom:1px solid var(--color-border-warm)}
  .push-devices .vw-table th[scope="row"]{grid-column:1/-1;padding:0;border:0}
  .push-devices .vw-table td{padding:0;border:0}
}
