/* Darstellung aus der Second-Hand-Börse, lokal auf das Ticketsystem abgestimmt. */
.a11y-panel,.a11y-trigger{--ink:#243935;--forest:#173b34;--line:#e2e7df}
body.colourframe .a11y-trigger{border:1px solid #9db9a5;background:#e8f2e7;color:var(--forest);border-radius:9px;padding:8px 12px;font:700 14px Arial,sans-serif;cursor:pointer}body.colourframe .a11y-trigger:hover,body.colourframe .a11y-trigger:focus-visible{background:#d6e9d8}body.colourframe .a11y-panel[hidden]{display:none!important}body.colourframe .a11y-panel{position:fixed;z-index:1000;top:88px;right:20px;width:min(360px,calc(100vw - 32px));max-height:calc(100vh - 104px);overflow:auto;background:#fff;color:var(--ink);border:2px solid var(--forest);border-radius:16px;padding:20px;box-shadow:0 18px 45px #10251e45}body.colourframe .a11y-heading{display:flex;align-items:start;justify-content:space-between;gap:10px}body.colourframe .a11y-heading h2{font-size:21px;margin:0}body.colourframe .a11y-heading button{border:0;background:transparent;color:var(--forest);font-size:27px;line-height:1;cursor:pointer}body.colourframe .a11y-group{border-top:1px solid var(--line);padding:14px 0}body.colourframe .a11y-group strong{display:block;margin-bottom:9px}body.colourframe .a11y-options{display:flex;gap:7px;flex-wrap:wrap}body.colourframe .a11y-group button,body.colourframe .a11y-reset{border:1px solid #98b39f;background:#f5faf3;color:var(--forest);border-radius:8px;padding:9px 11px;font:700 13px Arial,sans-serif;cursor:pointer}body.colourframe .a11y-group button[aria-pressed=true]{background:var(--forest);color:#fff}body.colourframe .a11y-reset{width:100%;background:#e8f2e7}body.colourframe .a11y-panel button:focus-visible,body.colourframe .a11y-trigger:focus-visible{outline:3px solid #d97836;outline-offset:2px}


html[data-a11y-bold="true"] body :is(p,span,a,label,input,textarea,select,button,td,th,li,legend,small,[contenteditable]){font-weight:800!important}
/* Modal dialogs enter the top layer and escape their ancestor's filter. */
html[data-a11y-mode="grayscale"] body>header,
html[data-a11y-mode="grayscale"] body>main,
html[data-a11y-mode="grayscale"] body>footer,
html[data-a11y-mode="grayscale"] body dialog[open]{filter:grayscale(1)}
body.colourframe .a11y-panel{background:#dfebdb;font-family:Arial,sans-serif;line-height:1.55;letter-spacing:normal}body.colourframe .a11y-heading h2{color:#173b34;font-family:Manrope,Arial,sans-serif;letter-spacing:-.045em;line-height:1.17}body.colourframe .a11y-group button,body.colourframe .a11y-reset{background:#cfe4ce}body.colourframe .a11y-group button[aria-pressed=true]{background:#173b34;color:#fff}body.colourframe .a11y-trigger{box-shadow:none;letter-spacing:normal;text-transform:none;min-height:0}body.colourframe .a11y-heading button{box-shadow:none;padding:0;min-height:0}
html[data-a11y-mode="contrast"] body,html[data-a11y-mode="contrast"] body :is(#app-header,dialog,.panel,.list-panel,.ticket-detail-header,.ticket-detail-main,.ticket-detail-sidebar,.ticket-detail-tabs,.mail-main,.mail-navigation,.mail-thread,.mail-body,.rich-toolbar,.rich-editor,.todo-section,.todo-mail-watch,.todo-mail-card,.todo-record,.todo-action,.kanban-shell,.kanban-column,.kanban-card,.wiki-reader,.knowledge-navigation,.knowledge-main,.a11y-panel,th,td){background:#000!important;color:#fff!important;border-color:#fff!important;box-shadow:none!important}
html[data-a11y-mode="contrast"] body :is(h1,h2,h3,p,span,strong,small,label,legend,th,td,dt,dd,time){color:#fff!important}html[data-a11y-mode="contrast"] body :is(a,button,summary){color:#ffeb72!important}html[data-a11y-mode="contrast"] body :is(input:not([type=radio]):not([type=checkbox]):not([type=file]),textarea,select){background:#fff!important;color:#000!important;border:2px solid #ffeb72!important}html[data-a11y-mode="contrast"] body button{background:#000!important;color:#ffeb72!important;border:2px solid #ffeb72!important}html[data-a11y-mode="contrast"] body .a11y-group button[aria-pressed=true]{background:#ffeb72!important;color:#000!important}
@media(max-width:560px){body.colourframe .a11y-panel{top:12px;right:12px;max-height:calc(100vh - 24px)}body.colourframe .a11y-trigger{margin-top:2px}}

body.colourframe .a11y-trigger,body.colourframe .a11y-panel button{filter:none;transform:none;min-height:0}body.colourframe .a11y-group strong{font-size:16px;color:#243935;margin:0 0 9px}body.colourframe .a11y-heading{margin-bottom:16px}

body.colourframe .a11y-panel{left:20px;right:auto} @media(max-width:560px){body.colourframe .a11y-panel{left:12px;right:auto}}

body.colourframe .a11y-panel .vivid-design-choice{display:flex;align-items:center;gap:9px;margin:0;color:#243935;font-size:14px;cursor:pointer;}
html[data-a11y-mode="contrast"] body.colourframe .a11y-panel .vivid-design-choice{color:#fff!important;}


/* Fixed application-dark palette keeps the popup identical in light and dark design. */
body.colourframe #a11y-panel{
 --ink:#f2f6fc;--muted:#abc6e7;--line:#527397;--surface:#122745;--field:#071934;--blue-light:#b7d8f8;
 color-scheme:dark;
 --appearance-accent-text:#10233c;
 box-sizing:border-box;width:min(390px,calc(100vw - 24px));background:var(--surface);color:var(--ink);
 font-family:inherit;font-size:16px;line-height:1.55;border:1px solid var(--line);scrollbar-color:var(--line) var(--surface);
}
body.colourframe #a11y-panel :is(h2,strong,label,p,span){color:var(--ink);letter-spacing:normal;text-transform:none}
body.colourframe #a11y-panel .a11y-heading{align-items:center;margin-bottom:18px;gap:16px}
body.colourframe #a11y-panel .a11y-heading h2{font-family:inherit;font-size:22px;line-height:1.3;letter-spacing:normal}
body.colourframe #a11y-panel .a11y-group{padding:16px 0;border-color:var(--line)}
body.colourframe #a11y-panel .a11y-group :is(strong,label){font-size:16px;line-height:1.5}
body.colourframe #a11y-panel label[for="appearance-start-page"]{display:block;font-weight:700;margin:0 0 8px}
body.colourframe #a11y-panel :is(.hint,#appearance-save-status){color:var(--muted);font-size:14px;line-height:1.6;opacity:1;overflow-wrap:anywhere}
body.colourframe #a11y-panel .hint{margin:10px 0 0}
body.colourframe #a11y-panel #appearance-start-page{box-sizing:border-box;display:block;width:100%;min-height:44px;margin:0;padding:10px 12px;background:var(--field);color:var(--ink);border:1px solid var(--line);border-radius:8px;font:inherit;font-size:16px;color-scheme:dark}
body.colourframe #a11y-panel #appearance-start-page option{background:var(--field);color:var(--ink)}
body.colourframe #a11y-panel button{min-height:42px;padding:10px 13px;border:1px solid var(--line);border-radius:8px;background:var(--field);color:var(--ink);font-family:inherit;font-size:15px;font-weight:700;line-height:1.4;box-shadow:none;opacity:1}
body.colourframe #a11y-panel button:hover:not(:disabled){background:color-mix(in srgb,var(--blue-light) 18%,var(--field));filter:none;box-shadow:none}
body.colourframe #a11y-panel button[aria-pressed="true"]{background:var(--blue-light);color:var(--appearance-accent-text);border-color:var(--blue-light)}
body.colourframe #a11y-panel button[aria-pressed="true"]:hover{background:var(--blue-light)}
body.colourframe #a11y-panel .a11y-heading button{min-width:38px;min-height:38px;padding:0;background:transparent;color:var(--ink);border-color:transparent;font-size:28px}
body.colourframe #a11y-panel .a11y-reset{display:block;width:100%;min-height:46px;margin-top:12px;background:var(--blue-light);color:var(--appearance-accent-text);border:2px solid var(--blue-light)}
body.colourframe #a11y-panel .a11y-reset:hover:not(:disabled){background:var(--blue-light);color:var(--appearance-accent-text);box-shadow:0 0 0 2px var(--line)}
body.colourframe #a11y-panel :is(button,select,input):focus-visible{outline:3px solid var(--blue-light);outline-offset:3px}
body.colourframe #a11y-panel input[type="checkbox"]{width:20px;height:20px;flex:0 0 20px;accent-color:var(--blue-light)}
body.colourframe #a11y-panel #appearance-save-status{margin:12px 0 0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--field)}
body.colourframe #a11y-panel #appearance-save-status:empty{display:none}
html[data-a11y-mode="contrast"] body.colourframe #a11y-panel #appearance-save-status{background:#000!important;color:#fff!important;border-color:#fff!important}
html[data-a11y-mode="contrast"] body.colourframe #a11y-panel #appearance-start-page option{background:#fff;color:#000}
html[data-a11y-mode="contrast"] body.colourframe #a11y-panel :is(button,select,input):focus-visible{outline-color:#ffeb72}
@media(max-width:560px){body.colourframe #a11y-panel{padding:16px;max-height:calc(100dvh - 24px)}body.colourframe #a11y-panel .a11y-options{gap:8px}}
/* Keep Darstellung centered at every viewport size. */
body.colourframe #a11y-panel {top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);margin:0;max-height:calc(100dvh - 32px);box-sizing:border-box;}

/* Smaller account-wide zoom levels fit more list rows on screen. */



/* At reduced zoom, fill the viewport instead of shrinking fixed-width page shells. */
html:is([data-a11y-size="0.75"],[data-a11y-size="0.85"],[data-a11y-size="0.9"]) body.admin-page > :is(#app-header,main,footer) {
 max-width:none;
 width:100%;
 box-sizing:border-box;
}
/* Use the active overview/content zoom to keep native detail dialogs full-screen. */
html[data-a11y-size="0.75"] {--detail-zoom:.75;}
html[data-a11y-size="0.85"] {--detail-zoom:.85;}
html[data-a11y-size="0.9"] {--detail-zoom:.9;}
html[data-a11y-size="1"] {--detail-zoom:1;}
html[data-a11y-size="1.25"] {--detail-zoom:1.25;}
html[data-a11y-size="1.5"] {--detail-zoom:1.5;}
html[data-a11y-size="2"] {--detail-zoom:2;}
html[data-a11y-size] body.admin-page #ticket-dialog {
 width:calc(100vw / var(--detail-zoom,1));
 max-width:calc(100vw / var(--detail-zoom,1));
 height:calc(100dvh / var(--detail-zoom,1));
 max-height:calc(100dvh / var(--detail-zoom,1));
 inset:0;
 margin:0;
 box-sizing:border-box;
}

/* Preserve the original page scale; constrain list widths independently. */
html[data-a11y-size] {zoom:var(--detail-zoom,1);overflow-x:clip;}
html[data-a11y-size] body {min-width:0;}
/* Contain wide content locally instead of adding an empty page scrollbar. */
body.admin-page > :is(#app-header,main,footer),
body.admin-page :is(#workspace,.list-panel,.table-scroll,.table-wrap,.ticket-detail-layout) {min-width:0;}
body.admin-page :is(.table-scroll,.table-wrap) {max-width:100%;overflow-x:auto;}
body.admin-page #app-header > nav {min-width:0;max-width:100%;}
body.admin-page #header-session {min-width:0;max-width:100%;flex-wrap:wrap;}

/* Each zoom section stays in one row; small screens can scroll that row. */
body.colourframe #a11y-panel{width:min(660px,calc(100vw / var(--detail-zoom,1) - 24px));max-height:calc(100dvh / var(--detail-zoom,1) - 32px)}
body.colourframe #a11y-panel .a11y-zoom-options{flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:4px 3px 8px;scrollbar-width:thin}
body.colourframe #a11y-panel .a11y-zoom-options button{flex:1 0 auto;white-space:nowrap}
