/* =========================================================
   Ski Second Hand – aufgeräumte style.css
   White Mode = Standard
   Dark Mode = body.dark-mode
========================================================= */

:root{
    --bg:#f3f6fb;
    --surface:#ffffff;
    --surface-2:#f1f5f9;
    --surface-3:#e8f0ff;
    --text:#0f172a;
    --text-soft:#475569;
    --muted:#64748b;
    --primary:#2563eb;
    --primary-dark:#1e3a5f;
    --success:#16a34a;
    --warning:#f59e0b;
    --danger:#ef4444;
    --secondary:#334155;
    --border:#e2e8f0;
    --shadow:0 10px 30px rgba(15,23,42,.08);
    --shadow-strong:0 16px 45px rgba(15,23,42,.14);
    --radius:20px;
    --radius-lg:28px;
}

body.dark-mode{
    --bg:#111827;
    --surface:#1f2937;
    --surface-2:#111827;
    --surface-3:#273244;
    --text:#f9fafb;
    --text-soft:#e5e7eb;
    --muted:#cbd5e1;
    --primary:#3b82f6;
    --primary-dark:#f9fafb;
    --border:#374151;
    --shadow:0 10px 30px rgba(0,0,0,.35);
    --shadow-strong:0 18px 50px rgba(0,0,0,.45);
}

*{ box-sizing:border-box; }

body{
    margin:0;
    font-family:Arial, sans-serif;
    background:var(--bg);
    color:var(--text);
}

h1,h2,h3{ color:var(--primary-dark); }
a{ color:inherit; }

input,select,textarea{
    min-height:46px;
    padding:0 14px;
    border:1px solid var(--border);
    border-radius:12px;
    background:var(--surface);
    color:var(--text);
    font-size:16px;
}

input::placeholder,textarea::placeholder{ color:var(--muted); }
button{ font-family:inherit; }

/* Layout */
.app-layout{ min-height:100vh; }

.sidebar{
    width:260px;
    position:fixed;
    inset:0 auto 0 0;
    padding:25px;
    background:var(--surface);
    color:var(--text);
    box-shadow:4px 0 20px rgba(0,0,0,.08);
    display:flex;
    flex-direction:column;
    z-index:20;
}

.sidebar h2{ margin:0 0 18px; color:var(--primary-dark); }

.user-info{
    background:var(--surface-2);
    padding:14px;
    border-radius:14px;
    margin-bottom:24px;
}

.user-info span{ color:var(--muted); font-size:14px; }

.sidebar nav a{
    display:block;
    padding:13px 15px;
    margin-bottom:8px;
    border-radius:12px;
    text-decoration:none;
    color:var(--primary-dark);
    font-weight:800;
    transition:.18s ease;
}

.sidebar nav a:hover{ background:var(--surface-2); transform:translateY(-1px); }

.content{
    margin-left:260px;
    padding:30px;
    min-height:100vh;
}

.sidebar-bottom{
    margin-top:auto;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:22px;
    padding:20px 0;
}

.theme-toggle,
.settings-button{
    width:52px;
    height:52px;
    display:flex;
    justify-content:center;
    align-items:center;
    padding:0;
    margin:0;
    border:none;
    border-radius:50%;
    background:var(--surface-2);
    color:var(--text);
    text-decoration:none;
    cursor:pointer;
    transition:.25s;
}

.theme-toggle:hover,
.settings-button:hover{
    transform:translateY(-2px);
    background:var(--primary);
    color:white;
}

.material-symbols-rounded{
    font-size:28px;
    line-height:1;
}

/* Buttons */
.btn,button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 18px;
    border:0;
    border-radius:12px;
    font-size:15px;
    font-weight:700;
    text-decoration:none;
    cursor:pointer;
    transition:all .18s ease;
}

.btn:hover,button:hover{ transform:translateY(-2px); filter:brightness(1.06); }
.btn:active,button:active{ transform:translateY(0); }

.btn-primary,button{ background:var(--primary); color:white; }
.btn-secondary{ background:var(--secondary); color:white; }
.btn-success{ background:var(--success); color:white; }
.btn-warning{ background:#d97706; color:white; }
.btn-danger,.delete-button{ background:var(--danger); color:white; }
.btn-icon{ width:44px; height:44px; padding:0; }
.btn-disabled{ cursor:default; opacity:.85; pointer-events:none; }

.clear-cart-button{
    width:100%;
    margin-top:12px;
    background:transparent;
    color:var(--danger);
    border:1px solid var(--danger);
}

/* Forms */
form{
    background:var(--surface);
    padding:20px;
    border-radius:16px;
    margin-bottom:20px;
    box-shadow:var(--shadow);
}

.search-form{
    background:var(--surface);
    border-radius:22px;
    padding:24px;
    margin-bottom:30px;
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:16px;
    align-items:center;
    box-shadow:var(--shadow);
}

.search-form input{ width:100%; }
.table-form,
td form,
.action-buttons form,
.portal-actions form,
.payout-actions form,
.payment-form{
    background:transparent !important;
    box-shadow:none !important;
    border:none !important;
    padding:0 !important;
    margin:0 !important;
}
.scan-form{
    display:grid;
    grid-template-columns:1fr auto;
    gap:14px;
    align-items:center;
}

.scan-form input{ width:100%; font-size:20px; padding:0 18px; }

/* Tables */
table{
    width:100%;
    border-collapse:collapse;
    background:var(--surface);
    border-radius:16px;
    overflow:hidden;
}

th,td{
    padding:14px;
    border-bottom:1px solid var(--border);
    text-align:left;
}

th{
    color:var(--muted);
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.04em;
}

tr:nth-child(even){ background:var(--surface-2); }
.highlight-row{ animation:highlightScan 1.4s ease; }
@keyframes highlightScan{ 0%{background:#dcfce7;} 100%{background:transparent;} }

/* Hero / Panels */
.admin-hero,.kasse-hero,.portal-hero{
    background:linear-gradient(135deg,#1e3a5f,#4b79a1);
    color:white;
    border-radius:var(--radius-lg);
    padding:34px;
    margin-bottom:30px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:24px;
    box-shadow:var(--shadow-strong);
}

body.dark-mode .admin-hero,body.dark-mode .kasse-hero,body.dark-mode .portal-hero{
    background:linear-gradient(135deg,#111827,#1f2937);
    border:1px solid var(--border);
}

.admin-hero h1,.kasse-hero h1,.portal-hero h1{ margin:0; color:white; }
.admin-hero p,.kasse-hero p,.portal-hero p{ margin:8px 0 0; color:rgba(255,255,255,.88); font-size:18px; }

.status-pill,.kasse-status{
    background:rgba(255,255,255,.18);
    color:white;
    padding:12px 20px;
    border-radius:999px;
    font-weight:800;
    white-space:nowrap;
}

.hero-actions{ display:flex; align-items:center; gap:14px; }

.dashboard-panel,.timeline-box,.info-card,.metric-card,.portal-card,.kasse-panel,.zahlung-panel{
    background:var(--surface);
    color:var(--text);
    border-radius:26px;
    padding:28px;
    box-shadow:var(--shadow);
    margin-bottom:30px;
}

.empty-cart{
    background:var(--surface-2);
    border-radius:22px;
    padding:45px;
    text-align:center;
    color:var(--text-soft);
}
.empty-cart div{ font-size:48px; margin-bottom:12px; }

/* Dashboard */
.admin-dashboard-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:24px;
    margin-bottom:30px;
}

.metric-card{
    min-height:170px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    transition:.2s ease;
}
.metric-card:hover{ transform:translateY(-4px); }
.metric-card span{ font-size:34px; margin-bottom:14px; }
.metric-card h2{ font-size:40px; margin:0; }
.metric-card p{ margin:10px 0 0; color:var(--muted); }
.metric-card.green{ background:#e8f7ee; }
.metric-card.yellow{ background:#fff6d8; }
.metric-card.blue{ background:#e8f0ff; }
.metric-card.purple{ background:#f1e8ff; }
body.dark-mode .metric-card.green{ background:#064e3b; }
body.dark-mode .metric-card.yellow{ background:#713f12; }
body.dark-mode .metric-card.blue{ background:#1e3a8a; }
body.dark-mode .metric-card.purple{ background:#581c87; }

.dashboard-two-columns{ display:grid; grid-template-columns:1fr 1fr; gap:25px; margin-bottom:30px; }

/* Status */
.status-verkauft,.status-verfuegbar,.status-online,.status-offen,.status-ausgezahlt,.portal-status{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 12px;
    border-radius:999px;
    font-size:13px;
    font-weight:800;
    white-space:nowrap;
}
.status-verkauft,.portal-status.sold,.status-ausgezahlt{ background:#dcfce7; color:#15803d; border:1px solid #bbf7d0; }
.status-verfuegbar,.portal-status.available,.status-offen{ background:#fef3c7; color:#b45309; border:1px solid #fde68a; }
.status-online,.portal-status.online{ background:#dbeafe; color:#1d4ed8; border:1px solid #93c5fd; }

.status-message{
    margin:20px 0;
    padding:16px 20px;
    border-radius:14px;
    color:white;
    font-weight:700;
    animation:fadeIn .25s ease;
}
.status-message.success{ background:#14532d; border-left:5px solid #22c55e; }
.status-message.warning{ background:#3f2a0b; border-left:5px solid #f59e0b; }
@keyframes fadeIn{ from{opacity:0;transform:translateY(-8px);} to{opacity:1;transform:translateY(0);} }

/* Kasse */
.kasse-layout{ display:grid; grid-template-columns:2fr 1fr; gap:30px; }
.total-box{
    background:var(--surface-2);
    border:1px solid var(--border);
    border-radius:18px;
    padding:25px;
    margin-bottom:25px;
    text-align:center;
}
.total-box span{ display:block; color:var(--muted); margin-bottom:8px; font-weight:700; }
.total-box strong{ font-size:42px; color:var(--primary-dark); }
body.dark-mode .total-box strong{ color:white; }
.money-buttons{ display:grid; grid-template-columns:repeat(2,1fr); gap:14px; margin:22px 0; }
.money-buttons button{
    height:64px;
    border-radius:18px;
    font-size:22px;
    font-weight:800;
    background:linear-gradient(135deg,#e8f0ff,#ffffff);
    color:#1e3a5f;
    border:2px solid #c8d8ef;
}
body.dark-mode .money-buttons button{ background:#111827; color:white; border:1px solid #334155; }
.money-buttons button:hover{ background:#dceaff; }
body.dark-mode .money-buttons button:hover{ background:#2563eb; }
.payment-form{ margin-top:24px !important; }
.payment-form label{ display:block; margin:14px 0 8px; font-weight:800; }
.payment-form input,.storno-form input{ width:100%; height:50px; }
.checkout-button{ width:100%; margin-top:24px; min-height:62px; border-radius:16px; background:var(--success); color:white; font-size:20px; font-weight:900; }
.storno-box{ margin-top:34px; padding-top:28px; border-top:1px solid var(--border); }
.storno-box h2{ margin:0 0 10px; }
.storno-box p{ margin:0 0 18px; color:var(--muted); font-size:14px; }
.storno-form{ display:flex; flex-direction:column; gap:14px; }

/* ---------- Druckerstatus / Kasse ---------- */

.drucker-status{
    margin:20px 0;
    padding:18px;
    border-radius:22px;

    background:var(--surface);
    color:var(--text);

    display:grid;
    grid-template-columns:1fr auto;
    gap:18px;
    align-items:center;

    box-shadow:var(--shadow);
    border:1px solid var(--border);
}

.drucker-ok,
.drucker-fehler{
    display:flex;
    align-items:center;
    gap:10px;

    min-height:48px;
    padding:0 18px;

    border-radius:16px;

    font-weight:800;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.drucker-ok{
    background:#dcfce7;
    color:#15803d;
    border:1px solid #bbf7d0;
}

.drucker-fehler{
    background:#fee2e2;
    color:#b91c1c;
    border:1px solid #fecaca;
}

.auto-print{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;

    min-height:48px;
    padding:0 18px;

    border-radius:16px;

    background:var(--surface-2);
    color:var(--text);

    border:1px solid var(--border);

    font-weight:800;
    white-space:nowrap;
}

.auto-print input{
    width:18px;
    height:18px;
    accent-color:var(--primary);
}

body.dark-mode .drucker-ok{
    background:#064e3b;
    color:#86efac;
    border-color:#15803d;
}

body.dark-mode .drucker-fehler{
    background:#3f1d1d;
    color:#fecaca;
    border-color:#ef4444;
}
/* Annahme / Artikel */
.annahme-form,.portal-artikel-form{
    display:grid;
    grid-template-columns:1.1fr 1.6fr 1.1fr .8fr auto;
    gap:18px;
    align-items:end;
}
.annahme-form .form-group{ display:flex; flex-direction:column; gap:8px; }
.annahme-form label{ font-weight:800; font-size:14px; }
.annahme-form input,.annahme-form select,.portal-artikel-form input,.portal-artikel-form select{ width:100%; height:48px; }
.annahme-save,.portal-artikel-form button{ height:48px; white-space:nowrap; }

.action-buttons,
.portal-actions{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:12px;
}

.action-buttons form,
.portal-actions form{
    margin:0;
    display:flex;
}

.portal-action{
    width:46px;
    height:46px;

    display:flex;
    align-items:center;
    justify-content:center;

    border:none;
    border-radius:14px;

    text-decoration:none;
    cursor:pointer;

    font-size:18px;
    color:#fff;

    transition:all .2s ease;
}

.portal-action:hover{
    transform:translateY(-2px);
    filter:brightness(1.08);
}

.portal-action.edit{
    background:#f59e0b;
}

.portal-action.delete{
    background:#ef4444;
}

/* Buttons innerhalb eines Formulars */
.portal-actions button.portal-action{
    appearance:none;
    -webkit-appearance:none;
    font:inherit;
    padding:0;
}

/* Auszahlung */
.payout-header{ display:flex; justify-content:space-between; align-items:center; gap:20px; }
.payout-header h2{ margin-top:0; }
.payout-header p{ margin-bottom:0; }
.payout-actions{ display:flex; gap:14px; align-items:center; flex-wrap:wrap; }
.payout-done{ margin-top:18px; color:var(--success); font-weight:700; }
.auszahlung-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:22px; }
.auszahlung-card{ background:var(--surface); border:1px solid var(--border); border-radius:18px; padding:22px; box-shadow:var(--shadow); transition:.2s ease; }
.auszahlung-card:hover{ transform:translateY(-3px); }
.auszahlung-card-top{ display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:18px; }
.auszahlung-card-top h3{ margin:0 0 8px; }
.auszahlung-card-top p,.auszahlung-card-info p{ margin:8px 0; color:var(--text-soft); }
.auszahlung-betrag{ font-size:22px; font-weight:900; color:var(--success) !important; }
.auszahlung-card .btn{ width:100%; height:48px; margin-top:18px; }

/* Portal */
.portal-container{ max-width:1200px; margin:0 auto; padding:40px; }
.portal-topnav{
    max-width:1160px;
    margin:0 auto 34px;
    padding:16px 20px;
    background:var(--surface);
    border-radius:0 0 24px 24px;
    box-shadow:var(--shadow);
    display:grid;
    grid-template-columns:260px 1fr 120px;
    align-items:center;
    gap:18px;
}
.portal-brand{ display:flex; align-items:center; gap:14px; text-decoration:none; }
.portal-logo{ width:58px; height:58px; object-fit:contain; }
.portal-brand strong{ display:block; font-size:22px; color:var(--primary-dark); line-height:1.1; }
.portal-brand span{ color:var(--muted); font-size:14px; font-weight:800; }
.portal-navlinks{ display:flex; justify-content:center; align-items:center; gap:6px; flex-wrap:nowrap; }
.portal-navlinks a{ display:flex; align-items:center; gap:8px; padding:10px 14px; border-radius:12px; text-decoration:none; color:var(--primary-dark); font-weight:800; white-space:nowrap; transition:.2s ease; }
.portal-navlinks a:hover{ background:var(--surface-2); color:var(--primary); transform:translateY(-2px); }
.portal-logout{ display:flex; align-items:center; justify-content:center; gap:8px; background:var(--danger); color:white; text-decoration:none; padding:12px 18px; border-radius:14px; font-weight:800; white-space:nowrap; transition:.2s ease; }
.portal-logout:hover{ transform:translateY(-2px); filter:brightness(1.05); }
.portal-header{ display:flex; justify-content:space-between; align-items:center; margin-bottom:35px; }
.portal-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-bottom:35px; }
.portal-stat{ background:var(--surface); color:var(--text); padding:30px; border-radius:20px; text-align:center; box-shadow:var(--shadow); text-decoration:none; }
.portal-stat h2{ font-size:36px; margin:0; }
.portal-stat p{ color:var(--muted); }
.portal-section-title{ margin:10px 0 18px; }
.portal-section-title h2{ margin:0; font-size:28px; }
.portal-artikel-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(360px,1fr)); gap:24px; align-items:stretch; }
.portal-artikel-card{ background:var(--surface); border-radius:24px; padding:26px; box-shadow:var(--shadow); border:1px solid var(--border); display:flex; flex-direction:column; gap:22px; text-align:left; }
.portal-artikel-top{ display:flex; justify-content:space-between; align-items:flex-start; gap:22px; }
.portal-artikel-category{ font-size:13px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; color:var(--primary); margin-bottom:8px; }
.portal-artikel-card h3{ margin:0; font-size:26px; line-height:1.15; }
.portal-artikel-meta{ display:flex; gap:14px; flex-wrap:wrap; color:var(--muted); font-size:15px; }
.portal-artikel-meta span{ background:var(--surface-2); border-radius:999px; padding:8px 12px; }
.portal-artikel-bottom{ margin-top:auto; border-top:1px solid var(--border); padding-top:20px; display:flex; justify-content:space-between; align-items:center; gap:20px; }
.portal-price,.preis{ font-size:28px; font-weight:950; color:var(--secondary); white-space:nowrap; }
body.dark-mode .portal-price,body.dark-mode .preis{ color:var(--text); }
.portal-button{ background:var(--primary); color:white; padding:12px 24px; border-radius:14px; text-decoration:none; }
.portal-closed-box{ display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:45px 30px; border:2px dashed #fca5a5; border-radius:20px; background:#fff7f7; color:#7f1d1d; }
.portal-closed-icon{ width:70px; height:70px; border-radius:50%; background:var(--danger); color:white; display:flex; align-items:center; justify-content:center; font-size:32px; margin-bottom:18px; }
body.dark-mode .portal-closed-box{ background:#3f1d1d; color:#fecaca; border-color:#ef4444; }

/* Startseite */
.start-page{ min-height:100vh; display:flex; align-items:center; justify-content:center; background:var(--bg); }
.start-card{ width:420px; max-width:90%; background:var(--surface); padding:44px; border-radius:28px; text-align:center; box-shadow:var(--shadow-strong); }
.start-logo{ width:110px; margin-bottom:20px; }
.start-card h1{ margin:0; font-size:34px; }
.start-card p{ color:var(--muted); margin:14px 0 32px; }
.start-actions{ display:flex; flex-direction:column; gap:16px; }
.start-button{ width:100%; justify-content:center; font-size:18px; padding:16px; }

/* Einstellungen */
.settings-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:30px; }
.setting-item{ display:flex; flex-direction:column; gap:12px; }
.setting-item label,.setting-check{ font-weight:800; }
.setting-check{ display:flex; align-items:center; gap:12px; }
.setting-check input{ width:20px; height:20px; }
.time-row{ display:flex; align-items:center; gap:15px; }
.settings-buttons{ display:flex; flex-direction:column; gap:20px; }
.settings-buttons form{ display:flex; gap:15px; align-items:center; }
.save-panel{ display:flex; justify-content:center; }
.save-button{ min-width:280px; }

/* Misc */
.progress-bar{ width:100%; height:18px; background:var(--surface-2); border-radius:999px; overflow:hidden; margin:18px 0; }
.progress-fill{ height:100%; width:0; background:linear-gradient(90deg,#16a34a,#22c55e); border-radius:999px; }
.progress-info{ margin-top:18px; display:flex; justify-content:space-between; align-items:center; font-size:15px; }
.danger-link{ color:var(--danger) !important; }
.full-width{ width:100%; justify-content:center; }

/* Responsive */
@media(max-width:1200px){
    .admin-dashboard-grid,.portal-stats{ grid-template-columns:repeat(2,1fr); }
    .kasse-layout{ grid-template-columns:1fr; }
    .annahme-form,.portal-artikel-form{ grid-template-columns:1fr 1fr; }
}

@media(max-width:1050px){
    .portal-topnav{ grid-template-columns:1fr; }
    .portal-navlinks{ justify-content:flex-start; flex-wrap:wrap; }
    .portal-logout{ justify-self:start; }
}

@media(max-width:900px){
    .content{ margin-left:0; padding:20px; }
    .sidebar{ position:relative; width:auto; min-height:auto; }
    .admin-hero,.kasse-hero,.portal-header,.payout-header{ flex-direction:column; align-items:flex-start; }
    .search-form{ grid-template-columns:1fr; }
    .dashboard-two-columns,.settings-grid,.portal-stats,.admin-dashboard-grid{ grid-template-columns:1fr; }
    .time-row{ flex-direction:column; align-items:flex-start; }
}
.portal-topnav{
    grid-template-columns:260px 1fr auto;
}

.portal-nav-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
}

.portal-theme-toggle,
.portal-profile-button{
    width:46px;
    height:46px;

    display:flex;
    align-items:center;
    justify-content:center;

    padding:0;
    margin:0;

    border:none;
    border-radius:50%;

    background:var(--surface-2);
    color:var(--text);

    text-decoration:none;
    cursor:pointer;

    transition:.25s;
}

.portal-theme-toggle:hover,
.portal-profile-button:hover{
    transform:translateY(-2px);
    background:var(--primary);
    color:white;
}

.portal-theme-toggle .material-symbols-rounded,
.portal-profile-button .material-symbols-rounded{
    font-size:26px;
}
/* ---------- Toast Benachrichtigungen ---------- */

#toast-container{
    position:fixed;
    top:25px;
    right:25px;

    display:flex;
    flex-direction:column;
    gap:14px;

    z-index:99999;
}

.toast{
    min-width:320px;
    max-width:420px;

    display:flex;
    align-items:center;
    gap:14px;

    padding:18px 20px;

    border-radius:18px;

    color:white;

    font-weight:800;

    box-shadow:0 18px 45px rgba(0,0,0,.28);

    animation:toastIn .32s ease;
}

.toast-icon{
    font-size:28px;
    flex-shrink:0;
}

.toast-text{
    line-height:1.35;
}

.toast-success{
    background:#16a34a;
}

.toast-error{
    background:#dc2626;
}

.toast-warning{
    background:#d97706;
}

.toast-info{
    background:#2563eb;
}

.toast-hide{
    opacity:0;
    transform:translateX(120px);
    transition:.4s ease;
}

@keyframes toastIn{
    from{
        opacity:0;
        transform:translateX(120px);
    }

    to{
        opacity:1;
        transform:translateX(0);
    }
}

@media(max-width:700px){
    #toast-container{
        left:16px;
        right:16px;
        top:16px;
    }

    .toast{
        min-width:0;
        max-width:none;
        width:100%;
    }
}
.account-actions{
    display:flex;
    gap:12px;
    margin:20px 0;
    flex-wrap:wrap;
}

.account-bottom-actions{
    display:flex;
    justify-content:space-between;
    gap:12px;
    margin-top:20px;
    flex-wrap:wrap;
}

.account-bottom-actions form{
    margin:0;
    background:transparent;
    padding:0;
    box-shadow:none;
    border:none;
}

.account-actions .btn,
.account-bottom-actions .btn{
    flex:1;
}
.article-edit-form{
    max-width:700px;
}

.article-edit-form .form-group{
    display:flex;
    align-items:center;
    gap:18px;
    margin-bottom:24px;
}

.article-edit-form .form-group label{
    width:160px;
    font-weight:600;
    flex-shrink:0;
}

.article-edit-form .form-group input,
.article-edit-form .form-group select{
    flex:1;
}

.form-actions{
    display:flex;
    gap:12px;
    margin-top:10px;
}
.required,
label .required,
.form-group label .required,
.article-edit-form .form-group label .required,
.annahme-form label .required{
    color:#ef4444 !important;
    font-weight:900;
}
/* Aktionen-Spalte */
table th:last-child,
table td:last-child{
    width:240px;
    text-align:center;
}

/* Buttons mittig */
.action-buttons{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:12px;
}

.action-buttons form{
    display:flex;
    margin:0;
}

.action-buttons .btn{
    min-width:125px;
    height:44px;
}

.action-buttons .btn-icon{
    width:44px;
    height:44px;
    min-width:44px;
    padding:0;
}