/* EDIT HERE: admin-only skin. Guest and staff-only layouts keep their own theme. */
.tf-workspace[data-skin="violet"] {
    color-scheme: dark;
    --tf-font: "Nunito", Arial, sans-serif;
    --tf-bg: #121016;
    --tf-surface: #1C1725;
    --tf-surface-sunken: #251E30;
    --tf-border: #382E43;
    --tf-brand: #B99ADB;
    --tf-brand-contrast: #121016;
    --tf-action-bg: #39254F;
    --tf-nav-bg: #1C1725;
    --tf-nav-active: #39254F;
    --tf-nav-text: #F3EFF7;
    --tf-nav-muted: #ABA1B6;
    --tf-text: #F3EFF7;
    --tf-text-muted: #ABA1B6;
    --tf-text-inverted: #F3EFF7;
    --tf-overlay: #121016CC;
    --tf-radius: 14px;
    --tf-radius-sm: 9px;
    --tf-radius-lg: 18px;
    --tf-admin-space: clamp(18px, 2.5vw, 32px);
    --tf-admin-sidebar: 232px;
    --tf-shadow-sm: none;
    --tf-shadow: none;
    --bs-body-color: var(--tf-text);
    --bs-body-bg: var(--tf-bg);
    --bs-secondary-color: var(--tf-text-muted);
    --bs-border-color: var(--tf-border);
    --bs-tertiary-bg: var(--tf-surface-sunken);
}

/* Bootstrap adapters: keep forms, dialogs and existing pages on the same skin. */
.tf-workspace[data-skin="violet"] :is(.card,.modal-content,.list-group-item,.dropdown-menu,.accordion-item) {
    background-color: var(--tf-surface); color: var(--tf-text); border-color: var(--tf-border);
}
.tf-workspace[data-skin="violet"] :is(.card,.tf-card,.tf-table-wrap,.tf-item-list,.modal-content) { border-radius: var(--tf-radius); }
.tf-workspace[data-skin="violet"] :is(.btn,.form-control,.form-select) { border-radius: var(--tf-radius-sm); }
.tf-workspace[data-skin="violet"] .sidebar { width: var(--tf-admin-sidebar); border-right: 1px solid var(--tf-border); }
.tf-workspace[data-skin="violet"] .content { padding: var(--tf-admin-space); }
.tf-workspace[data-skin="violet"] .tf-workspace-topbar { height: 70px; padding-inline: var(--tf-admin-space); }
.tf-workspace[data-skin="violet"] .tf-nav-brand>a { font: 650 27px/1.2 var(--tf-font); letter-spacing: -.04em; }
.tf-workspace[data-skin="violet"] .tf-nav-brand small { font-size: 10px; }
.tf-workspace[data-skin="violet"] .tf-nav-section { font-size: 10px; }
.tf-workspace[data-skin="violet"] .tf-nav>a { border-radius: var(--tf-radius-sm); }
.tf-workspace[data-skin="violet"] .btn-primary {
    --bs-btn-color: var(--tf-text); --bs-btn-hover-color: var(--tf-text); --bs-btn-active-color: var(--tf-text);
    --bs-btn-bg: var(--tf-action-bg); --bs-btn-hover-bg: var(--tf-action-bg); --bs-btn-active-bg: var(--tf-action-bg);
    --bs-btn-disabled-bg: var(--tf-action-bg); --bs-btn-disabled-color: var(--tf-text);
    background: var(--tf-action-bg); color: var(--tf-text); border-color: color-mix(in srgb,var(--tf-brand) 40%,var(--tf-action-bg));
}
.tf-workspace[data-skin="violet"] .form-control::placeholder { color: var(--tf-text-muted); opacity: 1; }
.tf-workspace[data-skin="violet"] :is(.form-control,.form-select):disabled { background: var(--tf-surface-sunken); color: var(--tf-text-muted); }
.tf-workspace[data-skin="violet"] .form-select { --bs-form-select-bg-img: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ABA1B6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E"); }
.tf-workspace[data-skin="violet"] .btn-close { filter: invert(1) grayscale(1); }
.tf-workspace[data-skin="violet"] .table { --bs-table-hover-color: var(--tf-text); --bs-table-striped-color: var(--tf-text); --bs-table-striped-bg: var(--tf-surface-sunken); }
.tf-workspace[data-skin="violet"] :is(.btn,.btn-link):focus { box-shadow:0 0 0 3px color-mix(in srgb,var(--tf-brand) 25%,transparent); }

/* Stationskontext: Zuordnungen bleiben blaugrau. Die Betriebsarten übernehmen
   dagegen den individuellen Akzent ihres Navigationspunkts (Küche oder Bar). */
.tf-workspace[data-skin="violet"] .tf-station-context {
    --tf-station-accent:var(--tf-icon-station);
    --tf-station-context-bg: color-mix(in srgb,var(--tf-icon-station) 15%,var(--tf-nav-bg));
    --tf-station-context-border: color-mix(in srgb,var(--tf-icon-station) 30%,var(--tf-border));
}
.tf-workspace[data-skin="violet"] .tf-station-context :is(.card,.tf-station-surface) {
    background-color:var(--tf-station-context-bg);
    border-color:var(--tf-station-context-border) !important;
}
.tf-workspace[data-skin="violet"] .tf-station-context .card-header,
.tf-workspace[data-skin="violet"] .tf-station-context .card-header.bg-white {
    background-color:var(--tf-station-context-bg) !important;
    border-color:var(--tf-station-context-border);
}
.tf-workspace[data-skin="violet"] .tf-station-context .tf-station-accent--kitchen { --tf-station-accent:var(--tf-icon-chef); }
.tf-workspace[data-skin="violet"] .tf-station-context .tf-station-accent--bar { --tf-station-accent:var(--tf-icon-bar); }
.tf-workspace[data-skin="violet"] .tf-station-context .tf-station-accent--default { --tf-station-accent:var(--tf-icon-station); }
.tf-workspace[data-skin="violet"] .tf-station-context .tf-station-surface {
    --tf-station-card-bg:color-mix(in srgb,var(--tf-station-accent) 15%,var(--tf-nav-bg));
    --tf-station-card-border:color-mix(in srgb,var(--tf-station-accent) 30%,var(--tf-border));
    background-color:var(--tf-station-card-bg);
    border-color:var(--tf-station-card-border) !important;
}
.tf-workspace[data-skin="violet"] .tf-station-context .tf-station-surface>.card-header,
.tf-workspace[data-skin="violet"] .tf-station-context .tf-station-surface>.card-header.bg-white {
    background-color:var(--tf-station-card-bg) !important;
    border-color:var(--tf-station-card-border);
}
.tf-station-card-title { display:flex; align-items:center; gap:10px; }
.tf-station-card-title .tf-asset-icon { width:22px; height:22px; }
.tf-workspace[data-skin="violet"] .tf-station-context .table {
    --bs-table-bg:var(--tf-station-context-bg);
    --bs-table-hover-bg:color-mix(in srgb,var(--tf-icon-station) 9%,var(--tf-station-context-bg));
}
.tf-workspace[data-skin="violet"] .tf-station-context .tf-output-mode {
    background:color-mix(in srgb,var(--tf-station-accent) 4%,var(--tf-station-card-bg,var(--tf-station-context-bg)));
    border-color:var(--tf-station-card-border,var(--tf-station-context-border));
}
.tf-workspace[data-skin="violet"] .tf-station-context .tf-output-mode:is(:hover,.is-selected) {
    border-color:var(--tf-station-accent);
    box-shadow:inset 0 0 0 1px var(--tf-station-accent);
}
.tf-workspace[data-skin="violet"] .tf-station-context .tf-output-mode__icon { color:var(--tf-station-accent); }
@media(min-width:761px) {
    html.tf-nav-collapsed .tf-workspace[data-skin="violet"] .tf-nav-brand>a { font-size:0; }
    html.tf-nav-collapsed .tf-workspace[data-skin="violet"] .tf-nav-brand>a::before,
    html.tf-nav-collapsed .tf-workspace[data-skin="violet"] .tf-nav-brand>a>span { font-size:27px; }
}
@media(max-width:760px) { .tf-workspace[data-skin="violet"] .sidebar { width:100%; border-right:0; border-bottom:1px solid var(--tf-border); } }
@media print {
    .tf-workspace[data-skin="violet"] { color-scheme:light; --tf-bg:#fff; --tf-surface:#fff; --tf-surface-sunken:#eee; --tf-text:#111; --tf-text-muted:#444; --tf-border:#bbb; }
}
