:root{--bg:#070c14;--panel:#101925;--panel2:#151f2d;--line:#263446;--text:#f4f7fb;--muted:#9aa9ba;--blue:#19b9ef;--red:#ff4d36;--ok:#48d597}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:radial-gradient(circle at 20% 20%,#10253c 0,#070c14 38%,#05080d 100%);min-height:100vh}button,input{font:inherit}.auth-body{display:grid;place-items:center;padding:28px}.auth-shell{width:min(1050px,100%);display:grid;grid-template-columns:1.05fr .95fr;background:rgba(8,14,23,.9);border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:0 30px 80px #0008}.brand-panel{min-height:650px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;background:linear-gradient(145deg,#07111d,#0c1724)}.brand-visual{position:relative;width:min(520px,90%);isolation:isolate}.brand-panel img{display:block;width:100%;height:auto;filter:drop-shadow(0 20px 35px #000);position:relative;z-index:1}.brand-animation-canvas{position:absolute;inset:0;z-index:2;display:block;width:100%;height:100%;pointer-events:none;overflow:hidden}.brand-panel p{color:var(--muted);letter-spacing:.08em}.auth-card{padding:64px;display:flex;flex-direction:column;justify-content:center}.auth-card h1{font-size:2rem;margin:0 0 10px}.muted{color:var(--muted);line-height:1.6}.form-stack{display:grid;gap:18px;margin:30px 0 20px}label{display:grid;gap:8px;font-size:.92rem;color:#d7e0e9}input{width:100%;border:1px solid var(--line);background:#0b131e;color:var(--text);border-radius:12px;padding:14px 15px;outline:none}input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #19b9ef22}.primary-button{border:0;border-radius:12px;padding:14px 18px;color:white;font-weight:800;cursor:pointer;background:linear-gradient(90deg,#087fc6,var(--blue) 55%,var(--red))}.text-link{color:var(--blue);text-decoration:none}.alert{padding:13px 15px;border-radius:12px;margin-bottom:20px}.alert.error{background:#ff4d3618;border:1px solid #ff4d3655}.alert.success{background:#48d59718;border:1px solid #48d59755}.topbar{height:74px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--line);background:#08101bcc;backdrop-filter:blur(14px);position:sticky;top:0;z-index:2}.topbar-brand{display:flex;align-items:center;gap:12px;font-weight:900;font-size:1.2rem}.topbar-brand img{width:48px;height:48px;object-fit:cover;border-radius:12px}.topbar-brand span span{color:var(--red)}.topbar-user{display:flex;align-items:center;gap:16px}.ghost-button{background:transparent;border:1px solid var(--line);color:var(--text);padding:9px 13px;border-radius:10px;cursor:pointer}.app-grid{display:grid;grid-template-columns:235px 1fr;min-height:calc(100vh - 74px)}.sidebar{padding:26px 18px;border-right:1px solid var(--line);background:#08101b88;display:flex;flex-direction:column;gap:10px}.sidebar a,.module-placeholder{padding:13px 14px;border-radius:11px;text-decoration:none}.sidebar a{color:white}.sidebar a.active{background:linear-gradient(90deg,#0b6da855,#ff4d3625);border:1px solid #1f88c777}.module-placeholder{color:#607184}.dashboard-main{padding:38px}.welcome{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.eyebrow{color:var(--blue);font-weight:900;letter-spacing:.2em}.welcome h1{font-size:clamp(2rem,5vw,3.2rem);margin:.2em 0}.welcome p{color:var(--muted)}.status-pill{padding:10px 14px;border-radius:999px;background:#48d59718;color:var(--ok);border:1px solid #48d59755;white-space:nowrap}.empty-dashboard{min-height:420px;margin-top:34px;border:1px dashed #30445a;border-radius:22px;background:linear-gradient(145deg,#0c1521bb,#101b29aa);display:grid;place-content:center;text-align:center;padding:40px}.empty-icon{width:66px;height:66px;border-radius:20px;margin:auto;display:grid;place-items:center;font-size:2.2rem;background:linear-gradient(145deg,#0b7fc0,var(--red))}.empty-dashboard h2{margin-bottom:8px}.empty-dashboard p{max-width:570px;color:var(--muted);line-height:1.6}@media(max-width:800px){.auth-shell{grid-template-columns:1fr}.brand-panel{min-height:auto;padding:25px}.brand-visual{width:260px}.brand-panel p{display:none}.auth-card{padding:34px 24px}.app-grid{grid-template-columns:1fr}.sidebar{display:none}.dashboard-main{padding:24px}.topbar-user>span{display:none}.welcome{flex-direction:column}.status-pill{order:-1}}

/* Dashboard 1.0 */
.topbar-brand{text-decoration:none;color:var(--text)}.topbar-brand>span{display:flex;align-items:baseline;gap:0}.topbar-brand small{display:block;margin-left:11px;color:var(--muted);font-size:.68rem;font-weight:600;letter-spacing:.04em}.user-avatar{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#0c78b7,#ff4d36);font-weight:900}.sidebar-label{font-size:.67rem;letter-spacing:.18em;color:#66788c;font-weight:900;padding:0 13px 8px}.sidebar-label.second{margin-top:18px}.sidebar a,.module-placeholder{display:flex;align-items:center;gap:11px}.sidebar a>span,.module-placeholder>span{font-size:1.05rem;width:20px;text-align:center}.module-placeholder em{margin-left:auto;font-size:.62rem;font-style:normal;text-transform:uppercase;letter-spacing:.08em;color:#526376}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding:20px 14px 4px;display:flex;flex-direction:column;color:#728397;font-size:.75rem}.sidebar-foot strong{color:#b5c2cf;font-size:.82rem;margin-bottom:3px}.dashboard-main{max-width:1500px;width:100%;margin:0 auto}.dashboard-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:38px}.dashboard-hero h1{font-size:clamp(2.2rem,5vw,3.7rem);line-height:1.05;margin:.15em 0 .28em;letter-spacing:-.045em}.hero-date{font-size:1.08rem;color:var(--muted);margin:0}.live-chip{display:flex;align-items:center;gap:9px;padding:11px 15px;border:1px solid #48d59744;border-radius:999px;background:#48d59710;color:#8be8bd;font-size:.82rem;font-weight:800}.live-chip span{width:8px;height:8px;border-radius:99px;background:var(--ok);box-shadow:0 0 0 5px #48d59718}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 17px}.section-heading h2{font-size:1.35rem;margin:3px 0 0}.section-kicker,.card-label{font-size:.68rem;letter-spacing:.18em;color:var(--blue);font-weight:900;margin:0}.section-date{color:var(--muted);font-size:.82rem}.people-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.person-card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:22px;padding:23px;background:linear-gradient(145deg,#101b29ee,#0c141fee);box-shadow:0 18px 35px #0002}.person-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--person-accent)}.person-card:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-80px;top:-90px;background:var(--person-accent);opacity:.08;filter:blur(2px)}.person-topline{position:relative;z-index:1;display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.person-identity{display:flex;gap:13px;align-items:center}.person-symbol{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:color-mix(in srgb,var(--person-accent) 18%,transparent);border:1px solid color-mix(in srgb,var(--person-accent) 35%,transparent);font-size:1.25rem}.person-identity span{font-size:.62rem;letter-spacing:.14em;font-weight:900;color:var(--person-accent)}.person-identity h3{font-size:1.3rem;margin:3px 0 0}.person-status{display:flex;align-items:center;gap:7px;border-radius:99px;padding:7px 10px;font-size:.7rem;font-weight:800;background:#8493a212;color:#aab7c5;border:1px solid #8493a233}.person-status i{width:6px;height:6px;border-radius:99px;background:currentColor}.person-status.working{color:#67e6ad;background:#48d59712;border-color:#48d59744}.person-status.free{color:#77cfff;background:#19b9ef12;border-color:#19b9ef44}.person-status.upcoming{color:#ffd182;background:#ffb13b12;border-color:#ffb13b44}.person-status.warning{color:#ff8c7c;background:#ff4d3612;border-color:#ff4d3644}.shift-empty{min-height:92px;margin-top:22px;border:1px dashed #2d4055;border-radius:15px;padding:18px;display:flex;flex-direction:column;justify-content:center;gap:5px;background:#07101a66}.shift-empty strong{font-size:.94rem}.shift-empty span{font-size:.78rem;color:var(--muted);line-height:1.45}.shift-main{margin-top:24px;display:flex;align-items:end;justify-content:space-between;gap:20px}.shift-main>div:first-child{display:flex;align-items:baseline;gap:12px}.shift-code{font-size:2.3rem;font-weight:950;color:var(--person-accent);letter-spacing:-.05em}.shift-main strong{font-size:.95rem}.shift-time{font-size:1rem;font-weight:800;color:#d9e3ed}.dashboard-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;margin-top:18px}.feature-card{position:relative;display:flex;align-items:flex-start;gap:17px;border:1px solid var(--line);border-radius:20px;padding:22px;background:#0d1723cc}.feature-icon{flex:0 0 auto;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#19b9ef17;border:1px solid #19b9ef38;color:var(--blue);font-weight:900}.feature-card h3{font-size:1.1rem;margin:5px 0}.feature-card p{font-size:.81rem;color:var(--muted);line-height:1.5;margin:0;max-width:640px}.free-time-card{background:linear-gradient(135deg,#102131dd,#111923dd)}.free-time-card .feature-icon{color:#ff7b69;background:#ff4d3614;border-color:#ff4d3638}.coming-badge{margin-left:auto;white-space:nowrap;border-radius:99px;padding:6px 9px;color:#8999a9;background:#ffffff08;font-size:.65rem}.actions-heading{margin-top:36px}.quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.action-card{position:relative;display:flex;align-items:center;gap:14px;text-align:left;border:1px solid var(--line);border-radius:17px;padding:17px;background:#0d1723cc;color:var(--text);opacity:1}.action-card:disabled{cursor:not-allowed}.action-card.primary-action{border-color:#168ac355;background:linear-gradient(135deg,#0c2940cc,#17202bcc)}.action-icon{width:42px;height:42px;border-radius:13px;background:#ffffff08;display:grid;place-items:center;color:var(--blue);font-size:1.15rem}.action-card span:nth-child(2){display:flex;flex-direction:column;gap:4px}.action-card strong{font-size:.88rem}.action-card small{color:var(--muted);font-size:.71rem}.action-card em{margin-left:auto;font-style:normal;font-size:.59rem;text-transform:uppercase;letter-spacing:.08em;color:#607184}.mobile-nav{display:none}
@media(max-width:1050px){.dashboard-grid{grid-template-columns:1fr}.quick-actions{grid-template-columns:1fr}.coming-badge{display:none}.topbar-brand small{display:none}}
@media(max-width:800px){body{padding-bottom:72px}.topbar{padding:0 16px;height:66px}.topbar-brand img{width:42px;height:42px}.topbar-user form,.topbar-user>span{display:none}.dashboard-main{padding:25px 16px 38px}.dashboard-hero{margin-bottom:30px}.dashboard-hero h1{font-size:2.35rem}.live-chip{font-size:.7rem;padding:8px 10px}.people-grid{grid-template-columns:1fr}.person-topline{flex-direction:column}.person-status{align-self:flex-start}.shift-main{align-items:flex-start;flex-direction:column}.section-date{display:none}.mobile-nav{position:fixed;z-index:10;bottom:0;left:0;right:0;height:66px;display:grid;grid-template-columns:repeat(3,1fr);background:#08101bf2;border-top:1px solid var(--line);backdrop-filter:blur(16px)}.mobile-nav a,.mobile-nav>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#67798c;text-decoration:none;font-size:.65rem}.mobile-nav .active{color:var(--blue)}.mobile-nav span span,.mobile-nav a span{font-size:1rem}.topbar-brand>span{font-size:1rem}}
@media(max-width:430px){.dashboard-hero{flex-direction:column}.live-chip{order:-1}.person-card{padding:19px}.quick-actions{gap:10px}}

/* Version 0.3 – Kalender & Schichttypen */
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px}.page-head h1{font-size:clamp(2rem,5vw,3.4rem);margin:4px 0 8px}.page-head p{color:#9aa8bb;margin:0}.month-switch{display:flex;gap:8px;align-items:center}.month-switch a{display:grid;place-items:center;min-width:44px;height:44px;border:1px solid #26364d;border-radius:14px;color:#eaf5ff;text-decoration:none;background:#0d1725}.month-switch .today-link{padding:0 16px}.calendar-shell{border:1px solid #26364d;border-radius:24px;overflow:hidden;background:#0a1320;box-shadow:0 22px 70px rgba(0,0,0,.25)}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.calendar-weekdays span{padding:14px;text-align:center;color:#63d5ff;font-weight:700;border-bottom:1px solid #26364d}.calendar-day{appearance:none;border:0;border-right:1px solid #1e2b3d;border-bottom:1px solid #1e2b3d;background:#0c1624;color:#f4f8fb;min-height:118px;padding:10px;text-align:left;cursor:pointer;transition:.18s ease}.calendar-day:hover{background:#112236}.calendar-day.is-today{box-shadow:inset 0 0 0 2px #23c5f3}.calendar-day.muted{opacity:.25;cursor:default}.day-number{font-weight:800;color:#aab6c5}.day-shifts{display:grid;gap:6px;margin-top:10px}.calendar-shift{display:flex;align-items:center;gap:6px;background:color-mix(in srgb,var(--shift-color) 22%,#0a1420);border-left:4px solid var(--shift-color);padding:6px 8px;border-radius:8px;font-size:.78rem;white-space:nowrap;overflow:hidden}.calendar-shift b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--shift-color);color:#06111a}.shift-dialog{width:min(520px,calc(100% - 28px));border:1px solid #30415b;border-radius:24px;background:#0b1522;color:#fff;padding:0;box-shadow:0 30px 100px rgba(0,0,0,.6)}.shift-dialog::backdrop{background:rgba(2,7,13,.8);backdrop-filter:blur(5px)}.shift-dialog form{padding:24px;display:grid;gap:16px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start}.dialog-head span,.card-label{font-size:.72rem;letter-spacing:.2em;color:#35cfff;font-weight:800}.dialog-head h2{margin:6px 0 0}.dialog-head button{border:0;background:transparent;color:#fff;font-size:2rem;cursor:pointer}.shift-dialog label,.stack-form label{display:grid;gap:7px;color:#aeb9c8;font-weight:700;font-size:.86rem}.shift-dialog select,.shift-dialog textarea,.stack-form input,.stack-form select{width:100%;background:#0f1d2d;color:#fff;border:1px solid #2a3a50;border-radius:12px;padding:12px}.primary-button,.danger-button,.mini-button{border:0;border-radius:12px;padding:12px 16px;font-weight:800;cursor:pointer}.primary-button{background:linear-gradient(135deg,#13bce9,#298df1);color:white}.danger-button{background:#35151a;color:#ff7e7e;border:1px solid #6b2931}.delete-shift-form{border-top:1px solid #26364d}.settings-grid{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(420px,1.4fr);gap:24px}.form-card,.type-list-card{background:#0b1522;border:1px solid #26364d;border-radius:24px;padding:24px}.form-card h2,.type-list-card h2{margin-top:0}.stack-form{display:grid;gap:16px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-row:has(label:nth-child(3)){grid-template-columns:1fr 1fr .75fr}.list-head{display:flex;justify-content:space-between;align-items:center}.list-head span{color:#8291a4}.type-list{display:grid;gap:10px;margin-top:18px}.type-row{display:grid;grid-template-columns:12px 60px 1fr auto;align-items:center;gap:12px;padding:14px;background:#0e1a29;border:1px solid #223249;border-radius:14px}.type-row.inactive{opacity:.45}.type-color{width:12px;height:42px;border-radius:8px}.type-code{font-size:1.1rem;font-weight:900}.type-info{display:grid}.type-info small{color:#8797aa;margin-top:3px}.mini-button{background:#15243a;color:#bcd4ea;padding:8px 10px}.empty-state{padding:28px;text-align:center;color:#8291a4}.action-card{text-decoration:none;color:inherit}
@media(max-width:850px){.page-head{align-items:flex-start;flex-direction:column}.settings-grid{grid-template-columns:1fr}.calendar-day{min-height:94px;padding:7px}.calendar-shift{font-size:.7rem;padding:5px}.form-row,.form-row:has(label:nth-child(3)){grid-template-columns:1fr}}
@media(max-width:560px){.dashboard-main{padding-left:14px;padding-right:14px}.calendar-shell{border-radius:16px}.calendar-weekdays span{padding:10px 2px;font-size:.78rem}.calendar-day{min-height:78px;padding:5px}.day-number{font-size:.8rem}.calendar-shift{padding:4px 5px;border-left-width:3px}.calendar-shift b{display:none}.type-row{grid-template-columns:8px 48px 1fr}.type-row form{grid-column:2/4}.mini-button{width:100%}}
/* Dashboard 0.4 – lebendige, kompakte Schichtzentrale */
.live-panel{max-width:420px;display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #48d59735;border-radius:18px;background:#0d201c88;color:#c8f4df;font-size:.78rem}.live-panel strong{font-weight:700;line-height:1.35}.compact-people .person-card{min-height:0}.person-card.compact{padding:19px}.compact .person-symbol{width:43px;height:43px}.compact .person-identity h3{font-size:1.18rem}.compact-shift{margin-top:16px}.compact-shift .shift-code{font-size:1.85rem}.compact-empty{min-height:68px;margin-top:15px;padding:14px}.status-orb{position:absolute;right:16px;top:16px;width:10px;height:10px;border-radius:50%;background:#738196;box-shadow:0 0 0 6px #73819618;z-index:2}.status-orb.working{background:#48d597;box-shadow:0 0 0 6px #48d59718,0 0 18px #48d59788}.status-orb.upcoming{background:#ffb13b;box-shadow:0 0 0 6px #ffb13b18}.status-orb.free{background:#19b9ef;box-shadow:0 0 0 6px #19b9ef18}.status-orb.warning{background:#ff4d36;box-shadow:0 0 0 6px #ff4d3618}.weather-card{background:linear-gradient(135deg,#132131dd,#0f1824dd)}.weather-card .feature-icon{font-size:1.35rem}.reveal{opacity:0;transform:translateY(10px);animation:dashboardReveal .38s ease forwards;animation-delay:var(--delay,0ms)}@keyframes dashboardReveal{to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;animation:none}}
.member-hint{display:flex;gap:8px;flex-wrap:wrap;margin-top:-5px}.member-hint span{font-size:.68rem;padding:5px 9px;border-radius:999px;border:1px solid color-mix(in srgb,var(--hint-color) 42%,transparent);background:color-mix(in srgb,var(--hint-color) 10%,transparent);color:var(--hint-color)}
@media(max-width:800px){.dashboard-hero{gap:16px}.live-panel{order:-1;max-width:none;width:100%;box-sizing:border-box}.people-grid.compact-people{gap:12px}.person-card.compact{padding:16px}.compact .person-topline{flex-direction:row;align-items:center}.compact .person-status{max-width:48%;text-align:right;justify-content:flex-end}.compact-shift{flex-direction:row;align-items:end}.dashboard-grid{grid-template-columns:1fr}.feature-card{padding:18px}.quick-actions{grid-template-columns:1fr}.weather-card{min-height:0}}
@media(max-width:430px){.dashboard-hero h1{font-size:2.05rem}.live-panel{align-items:flex-start}.compact .person-topline{align-items:flex-start}.compact .person-status{font-size:.62rem;padding:6px 8px}.compact-shift .shift-code{font-size:1.65rem}.compact-shift .shift-time{font-size:.86rem}}

/* Benutzerverwaltung 0.4.1 */
.account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:22px}.account-card{position:relative;background:linear-gradient(145deg,rgba(18,29,45,.96),rgba(9,16,27,.98));border:1px solid rgba(148,163,184,.14);border-top:3px solid var(--member-color);border-radius:22px;padding:22px;box-shadow:0 18px 50px rgba(0,0,0,.22)}.account-card-head{display:flex;align-items:center;gap:14px;margin-bottom:20px}.member-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:color-mix(in srgb,var(--member-color) 18%,transparent);color:var(--member-color);font-size:22px;font-weight:800}.account-card h2{margin:0;font-size:1.25rem}.account-card-head p{margin:3px 0 0;color:#8fa0b8}.account-state{margin-left:auto;border-radius:999px;padding:6px 10px;font-size:.72rem;font-weight:800;letter-spacing:.03em}.account-state.ready{background:rgba(34,197,94,.12);color:#68dc8d}.account-state.pending{background:rgba(245,158,11,.13);color:#f7bb51}.account-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.account-summary div{background:rgba(255,255,255,.035);border:1px solid rgba(148,163,184,.1);border-radius:14px;padding:12px}.account-summary span{display:block;color:#8190a6;font-size:.72rem;margin-bottom:5px}.account-summary strong{display:block;overflow:hidden;text-overflow:ellipsis;font-size:.92rem}.setup-note{background:rgba(25,185,239,.07);border:1px solid rgba(25,185,239,.18);border-radius:14px;padding:13px 14px;margin-bottom:16px;color:#b9d9e7}.account-edit summary{cursor:pointer;color:#73d8fa;font-weight:700;margin:4px 0 16px}.account-form{display:grid;gap:14px}.account-form label{display:grid;gap:7px;font-size:.82rem;color:#aebbd0;font-weight:650}.account-form input{width:100%;box-sizing:border-box;background:#080f1a;color:#f2f6fb;border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:12px 13px;outline:none}.account-form input:focus{border-color:var(--member-color);box-shadow:0 0 0 3px color-mix(in srgb,var(--member-color) 14%,transparent)}.form-two-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-help{margin:-3px 0 0;color:#74849c;font-size:.76rem;line-height:1.5}.account-form .primary-button{justify-self:start}
@media(max-width:900px){.account-grid{grid-template-columns:1fr}.account-summary,.form-two-columns{grid-template-columns:1fr}}
@media(max-width:560px){.account-card{padding:17px;border-radius:18px}.account-card-head{align-items:flex-start;flex-wrap:wrap}.account-state{margin-left:0}.account-summary{gap:8px}.account-form .primary-button{width:100%}}
.widget-dashboard{display:grid;gap:18px}.dashboard-widget{min-width:0}.widget-dashboard>.dashboard-widget:has(.feature-card){display:inline-block;width:calc(50% - 11px);vertical-align:top}.widget-dashboard>.dashboard-widget:has(.weather-card){margin-left:18px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:28px}.page-header h1{font-size:2rem;margin:.15em 0}.widget-config-list{display:grid;gap:12px;max-width:900px}.widget-config-row{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:15px;border:1px solid var(--line);background:#0d1723cc;padding:17px;border-radius:17px;touch-action:none}.widget-config-row.dragging{opacity:.55;border-color:var(--blue)}.widget-config-row p{margin:5px 0;color:var(--muted);font-size:.82rem}.widget-config-row code{font-size:.68rem;color:#6f8498}.drag-handle{font-size:1.5rem;color:#718599;cursor:grab;text-align:center}.switch input{display:none}.switch span{display:block;width:48px;height:27px;border-radius:99px;background:#2a394a;position:relative;cursor:pointer}.switch span:after{content:"";position:absolute;width:21px;height:21px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.2s}.switch input:checked+span{background:linear-gradient(90deg,#168ac3,var(--blue))}.switch input:checked+span:after{transform:translateX(21px)}.form-actions{margin-top:22px}.form-actions .primary-button{width:auto}.widget-dashboard .actions-heading{margin-top:10px}@media(max-width:800px){.widget-dashboard>.dashboard-widget:has(.feature-card){display:block;width:100%}.widget-dashboard>.dashboard-widget:has(.weather-card){margin-left:0}.page-header{flex-direction:column}.widget-config-row{grid-template-columns:34px 1fr auto;padding:14px}.widget-config-row p{line-height:1.4}}

/* Version 0.6.0 – Dashboard Grid, mobiler Editor und PWA */
.dashboard-toolbar{display:flex;justify-content:flex-end;margin:0 0 14px}.dashboard-edit-button,.topbar-settings{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:#d9e8f4;border:1px solid #2a3b50;background:#0d1723cc;border-radius:12px;padding:10px 13px;font-size:.82rem;font-weight:800}.topbar-settings{width:38px;height:38px;justify-content:center;padding:0;font-size:1.05rem}.widget-dashboard{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;align-items:start}.dashboard-widget{grid-column:span 6;min-width:0}.dashboard-widget--greeting,.dashboard-widget--people,.dashboard-widget--quick-actions{grid-column:1/-1}.dashboard-widget--common-free,.dashboard-widget--weather{grid-column:span 6}.widget-dashboard>.dashboard-widget:has(.feature-card){display:block;width:auto}.widget-dashboard>.dashboard-widget:has(.weather-card){margin-left:0}.dashboard-widget .dashboard-hero,.dashboard-widget .people-section,.dashboard-widget .actions-heading{margin-top:0}.dashboard-widget--quick-actions .quick-actions{margin-bottom:0}.editor-tip{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;margin-bottom:18px;border:1px solid #1b728f66;background:#0a2230aa;border-radius:16px}.editor-tip>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#19b9ef18;color:var(--blue);font-size:1.2rem}.editor-tip p{margin:5px 0 0;color:var(--muted);font-size:.82rem}.widget-config-copy{min-width:0}.sticky-save{position:sticky;bottom:18px;z-index:3;margin-top:22px;display:flex;justify-content:flex-end;padding:10px;border-radius:16px;background:#07101be8;backdrop-filter:blur(14px);border:1px solid #263446}.sticky-save .primary-button{min-width:220px}.mobile-nav{grid-template-columns:repeat(4,1fr)}
@media(max-width:800px){.topbar-settings{display:inline-flex}.topbar-user form,.topbar-user>span{display:none}.dashboard-toolbar{display:none}.widget-dashboard{grid-template-columns:1fr;gap:14px}.dashboard-widget,.dashboard-widget--greeting,.dashboard-widget--people,.dashboard-widget--common-free,.dashboard-widget--weather,.dashboard-widget--quick-actions{grid-column:1}.dashboard-widget--greeting{order:0}.dashboard-widget--people{order:1}.dashboard-widget--common-free{order:2}.dashboard-widget--weather{order:3}.dashboard-widget--quick-actions{order:4}.widget-editor-header .ghost-button{display:none}.widget-config-list{padding-bottom:92px}.widget-config-row{border-radius:18px;min-height:82px}.drag-handle{font-size:1.8rem;touch-action:none}.sticky-save{position:fixed;left:12px;right:12px;bottom:calc(74px + env(safe-area-inset-bottom));margin:0}.sticky-save .primary-button{width:100%;min-width:0}.mobile-nav{padding-bottom:env(safe-area-inset-bottom);height:calc(68px + env(safe-area-inset-bottom))}.dashboard-main{padding-bottom:calc(92px + env(safe-area-inset-bottom))}}
@media(min-width:801px){.topbar-settings{display:none}}
@media(max-width:430px){.topbar{padding-left:16px;padding-right:16px}.topbar-brand small{display:none}.topbar-brand>span{font-size:1rem}.topbar-brand img{width:44px;height:44px}.topbar-user{gap:9px}.widget-config-row{grid-template-columns:32px 1fr auto;gap:10px}.widget-config-row p{font-size:.76rem}.switch span{width:44px;height:25px}.switch span:after{width:19px;height:19px}.switch input:checked+span:after{transform:translateX(19px)}}
/* Import foundation 0.7.0 */
.import-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:24px;margin-bottom:34px}.panel-card{background:linear-gradient(145deg,rgba(15,30,45,.96),rgba(8,17,29,.96));border:1px solid #25384d;border-radius:24px;padding:26px;box-shadow:0 18px 45px rgba(0,0,0,.18)}.panel-title{display:flex;gap:15px;align-items:center;margin-bottom:24px}.panel-title h2,.panel-card h2{margin:3px 0 0}.panel-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:rgba(25,185,239,.12);border:1px solid rgba(25,185,239,.35);font-size:24px}.stack-form{display:grid;gap:17px}.stack-form label{display:grid;gap:8px;font-weight:700}.stack-form input,.stack-form select,.review-input input,.required-choice select{width:100%;box-sizing:border-box;background:#091422;border:1px solid #2b4057;color:#f7fbff;border-radius:13px;padding:13px 14px;font:inherit}.file-drop{border:1px dashed #35516c;border-radius:18px;padding:24px;text-align:center;cursor:pointer;background:rgba(8,20,34,.75)}.file-drop input{display:none}.file-drop strong,.file-drop span{display:block}.file-drop span{color:#8da0b6;font-weight:400;margin-top:5px}.upload-preview{border-radius:18px;overflow:hidden;border:1px solid #263c52;max-height:360px}.upload-preview img{width:100%;height:100%;object-fit:contain;display:block;background:#050a10}.rule-list{display:grid;gap:14px;margin-top:20px}.rule-list>div{display:grid;gap:5px;padding:15px;border-radius:15px;background:rgba(4,12,22,.55);border:1px solid #22364b}.rule-list span{color:#98aabc;line-height:1.55}.history-section{margin-top:24px}.history-list{display:grid;gap:10px}.history-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:15px 18px;border:1px solid #22364b;border-radius:16px;background:#0b1725;color:inherit;text-decoration:none}.history-row:hover{border-color:#3c5d7b}.history-row small{display:block;color:#8799ad;margin-top:4px}.history-person{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:color-mix(in srgb,var(--member-color) 18%,#0b1725);border:1px solid var(--member-color)}.status-pill{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800;font-style:normal}.status-review{color:#ffd88a;background:rgba(217,151,30,.13);border:1px solid rgba(217,151,30,.34)}.status-confirmed{color:#76e5ad;background:rgba(30,184,112,.12);border:1px solid rgba(30,184,112,.32)}.status-failed{color:#ff9284;background:rgba(255,77,54,.12);border:1px solid rgba(255,77,54,.3)}.review-grid{display:grid;grid-template-columns:minmax(210px,280px) minmax(540px,1fr);gap:24px;align-items:start}.image-review-panel,.review-panel{min-width:0}.plan-thumbnail{position:sticky;top:90px;background:#07111d;border:1px solid #25384d;border-radius:18px;padding:10px}.plan-thumbnail-button{display:block;width:100%;padding:0;border:0;background:transparent;color:#9fdff4;cursor:zoom-in}.plan-thumbnail img{display:block;width:100%;height:180px;object-fit:cover;object-position:center;border-radius:11px;background:#02060b}.plan-thumbnail-button span,.plan-thumbnail>a{display:block;text-align:center;padding:8px 5px 2px;font-size:12px}.plan-thumbnail>a{color:#4fcdf5}.plan-dialog{width:min(94vw,1500px);height:min(90vh,1000px);padding:45px 16px 16px;border:1px solid #35516c;border-radius:18px;background:#050b13;color:#fff}.plan-dialog::backdrop{background:rgba(0,0,0,.82)}.plan-dialog img{width:100%;height:100%;object-fit:contain}.plan-dialog-close{position:absolute;right:12px;top:8px;border:0;background:transparent;color:#fff;font-size:30px;cursor:pointer}.review-panel{background:#0b1725;border:1px solid #25384d;border-radius:22px;padding:20px}.review-summary{display:flex;gap:14px;align-items:center;justify-content:space-between;margin-bottom:17px;color:#98aabc}.day-review-list{display:grid;gap:8px;max-height:68vh;overflow:auto;padding-right:5px}.day-review-row{display:grid;grid-template-columns:60px 1fr;gap:12px;align-items:center;padding:11px;border:1px solid #21354a;border-radius:14px;background:#08131f}.day-review-row.needs-review{border-color:rgba(224,157,39,.55);background:rgba(70,45,7,.15)}.day-review-row time{text-align:center;border-right:1px solid #203448}.day-review-row time b{font-size:22px;display:block}.day-review-row time span{text-transform:uppercase;color:#8194a8;font-size:11px}.review-input{display:grid;gap:5px}.review-input small{color:#8497aa}.required-choice{display:grid;gap:7px;color:#ffd88a}.review-actions,.confirm-import-form{margin-top:18px}.confirm-import-form{display:grid;gap:9px;padding-top:18px;border-top:1px solid #203448}.confirm-import-form small{color:#8295aa}.primary-button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:900px){.import-layout,.review-grid{grid-template-columns:1fr}.plan-thumbnail{position:relative;top:auto;max-width:360px}.plan-thumbnail img{height:140px}.day-review-list{max-height:none}.review-panel{padding:14px}.image-review-panel{order:0}}
@media(max-width:620px){.panel-card{padding:18px;border-radius:19px}.history-row{grid-template-columns:auto 1fr}.history-row .status-pill{grid-column:2;justify-self:start}.review-summary{align-items:flex-start;flex-direction:column}.day-review-row{grid-template-columns:48px 1fr}.day-review-row time b{font-size:19px}}
.page-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:28px}.page-head h1{margin:.3rem 0}.page-head p{color:var(--muted);max-width:760px}.status-chip{padding:10px 16px;border:1px solid rgba(25,185,239,.3);border-radius:999px;color:#6edcff;background:rgba(25,185,239,.08);white-space:nowrap}.settings-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}.settings-card{background:rgba(15,28,43,.82);border:1px solid rgba(116,151,186,.22);border-radius:24px;padding:24px;margin-bottom:20px}.settings-card h2{margin-top:0}.update-list{list-style:none;padding:0;display:grid;gap:12px;margin:18px 0}.update-list li{display:grid;gap:4px;padding:14px;border:1px dashed rgba(116,151,186,.25);border-radius:14px}.update-list span,.settings-card p{color:var(--muted)}.ok-text{color:#6ee7a8!important}.error-text{color:#ff7b72!important}@media(max-width:850px){.settings-grid{grid-template-columns:1fr}.page-head{display:block}.status-chip{display:inline-block;margin-top:12px}}
.analyzer-card{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:18px;margin-bottom:18px;border:1px solid rgba(25,185,239,.34);border-radius:18px;background:linear-gradient(135deg,rgba(17,69,93,.35),rgba(7,18,30,.78))}.analyzer-card h2{margin:3px 0 7px}.analyzer-card p{margin:0;color:#98aabc;line-height:1.5}.analysis-progress{grid-column:1/-1}.analysis-progress>div{height:8px;background:#07111d;border-radius:999px;overflow:hidden;border:1px solid #284158}.analysis-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#18b9ef,#ff5848);transition:width .25s ease}.analysis-progress small{display:block;margin-top:7px;color:#9eb2c6}.analyzer-card.analysis-error{border-color:rgba(255,88,72,.55)}
@media(max-width:620px){.analyzer-card{grid-template-columns:1fr}.analyzer-card .primary-button{width:100%}}

/* Kraftwerk importer calibration v0.8.4 */
.analyzer-card{align-items:flex-start;flex-wrap:wrap}.analyzer-copy{flex:1;min-width:260px}.analyzer-buttons{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.calibration-panel{width:100%;padding:18px;border:1px solid rgba(37,199,244,.25);border-radius:18px;background:rgba(4,15,27,.72)}.calibration-help{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}.calibration-help span{color:var(--muted);font-size:.9rem}.calibration-panel canvas{display:block;width:100%;max-height:460px;object-fit:contain;border-radius:12px;background:#060d16}.calibration-controls{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:14px;margin-top:15px}.calibration-controls label{display:grid;gap:7px;font-size:.78rem;color:var(--muted)}.calibration-controls output{font-weight:700;color:#fff}.calibration-controls input{width:100%;accent-color:#25c7f4}.text-button{margin-top:12px;border:0;background:transparent;color:#55d6ff;text-decoration:underline;cursor:pointer}.cell-preview-pair{display:flex;gap:5px;width:106px;flex:0 0 106px}.cell-preview-canvas{width:50px;height:34px;object-fit:cover;border:1px solid rgba(148,163,184,.24);border-radius:7px;background:#fff}.day-review-row.needs-review .cell-preview-canvas{border-color:rgba(245,176,35,.62)}
@media(max-width:900px){.calibration-controls{grid-template-columns:1fr 1fr}.cell-preview-pair{width:82px;flex-basis:82px}.cell-preview-canvas{width:38px;height:30px}}
@media(max-width:620px){.analyzer-buttons{width:100%}.analyzer-buttons button{flex:1}.calibration-controls{grid-template-columns:1fr}.cell-preview-pair{display:none}}
/* SchichtPlan 1.1.0 – Kalenderfarben, Filter und Statistik */
.calendar-view-tools{display:flex;gap:.55rem;flex-wrap:wrap;margin:0 0 1rem}.calendar-view-tools button{border:1px solid #26384d;background:#0c1827;color:#aebdd0;border-radius:999px;padding:.55rem .9rem;cursor:pointer}.calendar-view-tools button.active{background:#123d55;color:#eafaff;border-color:#20c9f4}.calendar-shift{background:color-mix(in srgb,var(--shift-color) 30%,#0b1825);border-left-color:var(--shift-color)}
.calendar-shift.code-f,.shift-code-pill.code-f{--shift-color:#21c7f3}.calendar-shift.code-s,.shift-code-pill.code-s{--shift-color:#f59e0b}.calendar-shift.code-n,.shift-code-pill.code-n{--shift-color:#8b5cf6}.calendar-shift.code-d1,.calendar-shift.code-d2,.shift-code-pill.code-d1,.shift-code-pill.code-d2{--shift-color:#38bdf8}.calendar-shift.code-u,.calendar-shift.code-ud,.shift-code-pill.code-u,.shift-code-pill.code-ud{--shift-color:#ef4444}.calendar-shift.code-fd,.shift-code-pill.code-fd{--shift-color:#22c55e}.calendar-shift.code-sd,.calendar-shift.code-nd,.shift-code-pill.code-sd,.shift-code-pill.code-nd{--shift-color:#d946ef}.calendar-shift.is-free,.shift-code-pill.code-frei{--shift-color:#64748b;opacity:.78;background:rgba(100,116,139,.16)}
.calendar-shift[hidden]{display:none!important}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.stats-card{background:linear-gradient(145deg,#0d1928,#0a1421);border:1px solid #20344a;border-radius:20px;padding:1.2rem;box-shadow:0 16px 45px rgba(0,0,0,.2)}.stats-card-head{display:flex;align-items:center;gap:.8rem;border-bottom:1px solid #20344a;padding-bottom:1rem}.stats-card-head>strong{margin-left:auto;font-size:1.2rem;color:#e7f6ff}.stats-card-head small{letter-spacing:.16em;color:#7f91a8}.stats-card-head h2{margin:.15rem 0 0}.stat-bars{padding:.85rem 0}.stat-row{display:grid;grid-template-columns:52px 1fr 36px;gap:.7rem;align-items:center;padding:.45rem 0}.shift-code-pill{background:color-mix(in srgb,var(--shift-color) 25%,#0b1724);border:1px solid color-mix(in srgb,var(--shift-color) 55%,transparent);color:#eefaff;border-radius:8px;padding:.3rem;text-align:center;font-weight:800}.stat-row b{font-size:.88rem}.stat-row i{display:block;height:6px;background:#172638;border-radius:999px;overflow:hidden;margin-top:.35rem}.stat-row i em{display:block;height:100%;background:var(--person-accent);border-radius:inherit}.stats-foot{display:flex;justify-content:space-between;border-top:1px solid #20344a;padding-top:.8rem;color:#aebdd0}.stats-foot strong{color:#fff}.empty-copy{color:#7f91a8}@media(max-width:850px){.stats-grid{grid-template-columns:1fr}}
.pwa-install{position:fixed;right:1rem;bottom:1rem;z-index:50;border:1px solid #2a5169;background:#0d2635;color:#eafaff;border-radius:12px;padding:.7rem 1rem;box-shadow:0 10px 30px rgba(0,0,0,.35);cursor:pointer}
/* SchichtPlan 1.1.1 – Monats- und Importlöschung */
.calendar-head-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:flex-end}.danger-outline-button{border:1px solid rgba(248,113,113,.5);background:rgba(127,29,29,.12);color:#fca5a5;border-radius:11px;padding:.68rem .9rem;font-weight:750;cursor:pointer}.danger-outline-button:hover{background:rgba(127,29,29,.25);border-color:#ef4444;color:#fff}.danger-outline-button.compact{padding:.5rem .7rem;font-size:.78rem;white-space:nowrap}.destructive-dialog{max-width:520px}.danger-copy{color:#f3b4b4;line-height:1.55;background:rgba(127,29,29,.12);border:1px solid rgba(248,113,113,.25);border-radius:12px;padding:.85rem}.confirm-check{display:flex!important;align-items:flex-start;gap:.65rem!important;padding:.75rem 0}.confirm-check input{width:auto!important;margin-top:.2rem}.history-row-actions{padding:0;overflow:hidden}.history-main{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:15px 18px;color:inherit;text-decoration:none;min-width:0}.history-delete-form{display:flex;align-items:center;gap:.7rem;padding:10px 14px;border-top:1px solid #22364b;background:rgba(4,12,20,.45);justify-content:flex-end}.history-delete-form label{display:flex;align-items:center;gap:.45rem;color:#91a4b7;font-size:.78rem}.history-delete-form input{width:auto}.history-row-actions:hover{border-color:#3c5d7b}@media(max-width:700px){.calendar-head-actions{justify-content:flex-start;margin-top:1rem}.history-main{grid-template-columns:auto 1fr}.history-main .status-pill{grid-column:2;justify-self:start}.history-delete-form{align-items:flex-start;flex-direction:column}.history-delete-form .danger-outline-button{width:100%}}

/* 1.2.0 – editierbare Schichttypen */
.type-actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.type-actions form{margin:0}.type-edit-dialog{width:min(650px,calc(100% - 28px))}.shift-color-preview{display:flex;align-items:center;gap:.9rem;padding:.9rem 1rem;border:1px solid #2a3a50;border-radius:14px;background:#0d1a29}.shift-color-preview>span{width:12px;height:52px;border-radius:999px;box-shadow:0 0 18px color-mix(in srgb,currentColor 40%,transparent)}.shift-color-preview div{display:grid;gap:.25rem}.shift-color-preview strong{font-size:1.2rem}.shift-color-preview small{color:#91a3b7;line-height:1.4}.calendar-shift:not(.is-free){background:color-mix(in srgb,var(--shift-color) 34%,#0b1825);border-left-color:var(--shift-color)}.calendar-shift:not(.is-free) b{background:var(--shift-color)}
@media(max-width:700px){.type-row{grid-template-columns:8px 52px 1fr}.type-actions{grid-column:2/4;justify-content:stretch}.type-actions>*{flex:1}.type-actions .mini-button{width:100%}}

/* 1.3.0 – semantische Schichttypen */
.semantic-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem 1rem;padding:.9rem 1rem;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:rgba(15,23,42,.45)}
.semantic-options label{display:flex;align-items:center;gap:.6rem;font-size:.92rem;color:#cbd5e1}
.semantic-options input{width:1.05rem;height:1.05rem;accent-color:#20c5f4}
@media(max-width:720px){.semantic-options{grid-template-columns:1fr}}
/* SchichtPlan 2.0.0 */
.calendar-shift i{margin-left:auto;font-style:normal;font-size:.72rem}.day-detail-dialog{width:min(720px,calc(100% - 24px))}.existing-detail{padding:1rem;border:1px solid #253a50;border-radius:15px;background:#091522;margin-bottom:1rem}.detail-status{display:flex;gap:.8rem;align-items:center}.detail-status strong{font-size:1.35rem}.existing-detail dl{display:grid;grid-template-columns:auto 1fr;gap:.35rem 1rem;margin:.8rem 0 0}.existing-detail dt{color:#8295aa}.time-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.change-history{border-top:1px solid #27394c;margin-top:1rem;padding-top:1rem}.change-history h3{margin:.2rem 0 .7rem}.change-history #historyList{display:grid;gap:.5rem}.change-history #historyList>div{display:flex;justify-content:space-between;gap:1rem;padding:.65rem;border-radius:10px;background:#0b1928;color:#cbd5e1}.change-history time{color:#8094aa;font-size:.78rem}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;margin:1rem 0}.metric-grid div{padding:.8rem;border:1px solid #23384d;border-radius:13px;background:#0a1725;text-align:center}.metric-grid b{display:block;font-size:1.25rem}.metric-grid span{font-size:.72rem;color:#8da0b5}.stat-row small{display:block;color:#8397ac;margin-top:.15rem}.vivendi-pro-card{padding:1rem;border:1px solid rgba(168,85,247,.35);border-radius:15px;background:rgba(88,28,135,.12);margin-bottom:1rem;display:grid;gap:.45rem}.vivendi-pro-card span{color:#aebdd0}.quick-codes{display:flex;gap:.45rem;flex-wrap:wrap}.quick-codes button{border:1px solid #4a376b;background:#1b1530;color:#ddd6fe;border-radius:9px;padding:.4rem .65rem;cursor:pointer}@media(max-width:650px){.time-grid,.metric-grid{grid-template-columns:1fr 1fr}.change-history #historyList>div{flex-direction:column}}
/* SchichtPlan 2.0.1 */
.vivendi-pro-card .analyzer-buttons{justify-content:flex-end;margin:.35rem 0}.vivendi-pro-card .analysis-progress{margin:.35rem 0 .65rem}

/* 2.1.0: einheitliche Monatswahl und Doppelimport-Hinweis */
.month-picker-field{border:0;padding:0;margin:0;display:grid;gap:8px}.month-picker-field>legend{padding:0;margin-bottom:8px;color:#aeb9c8;font-weight:700;font-size:.86rem}.month-picker{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(110px,.65fr);gap:10px}.month-picker label{gap:5px!important}.month-picker label>span{font-size:.74rem;color:#7f93aa;font-weight:700}.existing-month-warning{border:1px solid rgba(245,178,55,.55);background:rgba(112,70,8,.18);border-radius:15px;padding:14px 15px;color:#ffe0a0}.existing-month-warning strong{display:block;margin-bottom:5px}.existing-month-warning p{margin:0;color:#d8c49b;line-height:1.45}.existing-month-warning>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.existing-month-warning .mini-button{text-decoration:none;border:1px solid rgba(245,178,55,.35)}
@media(max-width:560px){.month-picker{grid-template-columns:1fr 110px}.existing-month-warning>div{display:grid}.existing-month-warning .mini-button{text-align:center}}

.viewer-note{margin:8px 18px;padding:10px 12px;border:1px solid rgba(139,92,246,.35);border-radius:12px;color:#c4b5fd;background:rgba(139,92,246,.08);font-size:.82rem}
.viewer-account-heading{margin-top:34px}.checkbox-row{display:flex!important;align-items:center;gap:10px}.checkbox-row input{width:auto!important}
.readonly-details{display:grid;gap:12px}.readonly-person-day{padding:16px;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:rgba(15,23,42,.55)}.readonly-person-day h3{margin:0 0 8px}.readonly-person-day strong{display:block;font-size:1.25rem}.readonly-person-day span,.readonly-person-day p{color:#94a3b8}

/* Sprint 2: getrennte Personen- und Schichtfarben */
.person-card .shift-code {
    color: var(--shift-accent, #94a3b8);
    text-shadow: 0 0 18px color-mix(
        in srgb,
        var(--shift-accent, #94a3b8) 24%,
        transparent
    );
}

.person-card .shift-main > div:first-child strong {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.person-card .shift-main > div:first-child strong::before {
    content: "";
    width: 8px;
    height: 8px;
    flex: 0 0 8px;
    border-radius: 50%;
    background: var(--shift-accent, #94a3b8);
    box-shadow: 0 0 0 5px color-mix(
        in srgb,
        var(--shift-accent, #94a3b8) 14%,
        transparent
    );
}

/* Sprint 4: Benutzerprofil */

.topbar-profile-link {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    padding: 4px 8px 4px 4px;
    border-radius: 13px;
    color: inherit;
    text-decoration: none;
    transition: background .18s ease, transform .18s ease;
}

.topbar-profile-link:hover {
    background: rgba(255, 255, 255, .055);
    transform: translateY(-1px);
}

.topbar-profile-link > span {
    display: grid;
    line-height: 1.15;
}

.topbar-profile-link > span small {
    margin-top: 3px;
    color: #75879a;
    font-size: .62rem;
    font-weight: 650;
}

.user-avatar {
    overflow: hidden;
}

.user-avatar.has-image {
    padding: 0;
}

.user-avatar img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.profile-page-head {
    margin-bottom: 22px;
}

.profile-grid {
    display: grid;
    grid-template-columns: minmax(230px, .72fr) minmax(0, 1.4fr);
    gap: 18px;
    align-items: start;
}

.profile-card {
    position: relative;
    overflow: hidden;
    padding: 23px;
    border: 1px solid var(--line);
    border-radius: 21px;
    background:
        linear-gradient(
            145deg,
            rgba(19, 32, 48, .96),
            rgba(10, 19, 30, .96)
        );
    box-shadow: 0 16px 34px rgba(0, 0, 0, .18);
}

.profile-overview-card {
    grid-row: span 2;
    text-align: center;
}

.profile-large-avatar {
    width: 112px;
    height: 112px;
    display: grid;
    place-items: center;
    margin: 7px auto 18px;
    overflow: hidden;
    border: 1px solid rgba(72, 213, 151, .32);
    border-radius: 32px;
    background:
        linear-gradient(
            145deg,
            rgba(72, 213, 151, .2),
            rgba(25, 185, 239, .08)
        );
    color: #89e5b8;
    font-size: 2.1rem;
    font-weight: 850;
    box-shadow:
        0 18px 34px rgba(0, 0, 0, .25),
        0 0 0 7px rgba(72, 213, 151, .045);
}

.profile-large-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-overview-copy h2 {
    margin: 10px 0 5px;
    font-size: 1.45rem;
}

.profile-overview-copy p {
    margin: 0;
    color: #8294a7;
}

.profile-role {
    display: inline-flex;
    padding: 6px 10px;
    border: 1px solid rgba(72, 213, 151, .18);
    border-radius: 999px;
    background: rgba(72, 213, 151, .08);
    color: #75dca8;
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .045em;
    text-transform: uppercase;
}

.profile-security-note {
    display: flex;
    align-items: center;
    gap: 11px;
    margin-top: 25px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, .065);
    border-radius: 15px;
    background: rgba(255, 255, 255, .025);
    text-align: left;
}

.profile-security-note > span {
    width: 31px;
    height: 31px;
    display: grid;
    place-items: center;
    flex: 0 0 31px;
    border-radius: 10px;
    background: rgba(72, 213, 151, .11);
    color: #6fdda7;
}

.profile-security-note div {
    display: grid;
    gap: 3px;
}

.profile-security-note strong {
    font-size: .76rem;
}

.profile-security-note small {
    color: #788a9d;
    font-size: .67rem;
    line-height: 1.45;
}

.profile-section-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 21px;
}

.profile-section-heading > div {
    display: flex;
    align-items: center;
    gap: 11px;
}

.profile-section-heading > div > span {
    width: 30px;
    height: 30px;
    display: grid;
    place-items: center;
    border-radius: 9px;
    background: rgba(25, 185, 239, .1);
    color: #64d2f6;
    font-size: .68rem;
    font-weight: 850;
}

.profile-section-heading h2 {
    margin: 0;
    font-size: 1.08rem;
}

.profile-section-heading p {
    margin: 5px 0 0;
    color: #75879a;
    font-size: .7rem;
    text-align: right;
}

.profile-form {
    display: grid;
    gap: 15px;
}

.profile-form label {
    display: grid;
    gap: 7px;
}

.profile-form label > span {
    color: #a8b7c5;
    font-size: .71rem;
    font-weight: 750;
}

.profile-form input[type="text"],
.profile-form input[type="email"],
.profile-form input[type="password"],
.profile-form input[type="file"] {
    width: 100%;
    box-sizing: border-box;
}

.profile-upload-field small {
    color: #708397;
    font-size: .65rem;
}

.profile-password-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.profile-checkbox {
    display: flex !important;
    align-items: center;
    gap: 9px !important;
    width: fit-content;
    cursor: pointer;
}

.profile-checkbox input {
    width: 17px;
    height: 17px;
    accent-color: #48d597;
}

.profile-form-actions {
    display: flex;
    justify-content: flex-end;
    padding-top: 4px;
}

@media (max-width: 880px) {
    .profile-grid {
        grid-template-columns: 1fr;
    }

    .profile-overview-card {
        grid-row: auto;
    }

    .profile-password-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 650px) {
    .topbar-profile-link > span {
        display: none;
    }

    .profile-card {
        padding: 18px;
    }

    .profile-section-heading {
        display: grid;
    }

    .profile-section-heading p {
        text-align: left;
    }
}


/* Web-Updater */
.update-candidate{margin-top:22px;padding:20px;border:1px solid rgba(25,185,239,.35);border-radius:18px;background:rgba(25,185,239,.06)}.update-candidate h3{margin:0 0 4px}.update-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.update-facts div{padding:12px;border-radius:12px;background:rgba(5,15,25,.45)}.update-facts dt{font-size:.78rem;color:var(--muted);text-transform:uppercase}.update-facts dd{margin:4px 0 0}.install-form{display:grid;gap:14px;margin-top:18px}.check-row{display:flex!important;align-items:center;gap:10px}.check-row input{width:auto!important}.release-notes{white-space:pre-wrap;max-height:260px;overflow:auto;padding:14px;border-radius:12px;background:#07111d;color:#cde6f7}.history-table{overflow:auto}.history-table table{width:100%;border-collapse:collapse}.history-table th,.history-table td{text-align:left;padding:12px;border-bottom:1px solid rgba(116,151,186,.18);vertical-align:top}.history-table small,.history-message{display:block;color:var(--muted);margin-top:4px}.history-status{display:inline-block;padding:4px 8px;border-radius:999px;font-size:.78rem}.status-success,.status-rollback{background:rgba(44,201,120,.14);color:#6ee7a8}.status-failed,.status-rollback_failed{background:rgba(255,123,114,.14);color:#ff9a92}.status-rolled_back{background:rgba(246,190,60,.14);color:#ffd36a}.compact{padding:8px 10px;font-size:.82rem}@media(max-width:650px){.update-facts{grid-template-columns:1fr}.history-table table{min-width:760px}}
/* Web-Updater 2.0 */
.update-candidate-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.signature-badge{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:.76rem;font-weight:800;white-space:nowrap}.signature-verified{background:rgba(44,201,120,.14);color:#6ee7a8}.signature-unsigned{background:rgba(246,190,60,.14);color:#ffd36a}.update-progress{position:fixed;inset:0;z-index:9999;background:rgba(2,8,15,.78);backdrop-filter:blur(6px);display:grid;place-items:center}.update-progress[hidden]{display:none}.update-progress-card{width:min(430px,calc(100vw - 32px));padding:28px;border-radius:22px;background:#0b1724;border:1px solid rgba(72,213,151,.35);box-shadow:0 24px 80px rgba(0,0,0,.45);text-align:center}.update-spinner{width:46px;height:46px;margin:0 auto 16px;border:4px solid rgba(255,255,255,.12);border-top-color:#48d597;border-radius:50%;animation:update-spin .8s linear infinite}.update-progress-bar{height:8px;margin:18px 0;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden}.update-progress-bar span{display:block;height:100%;width:45%;border-radius:inherit;background:linear-gradient(90deg,#48d597,#19b9ef);animation:update-progress 1.8s ease-in-out infinite}@keyframes update-spin{to{transform:rotate(360deg)}}@keyframes update-progress{0%{transform:translateX(-110%)}100%{transform:translateX(240%)}}

/* Sprint 6.3 · Ticket #016 · Sidebar Visual Polish */
.app-grid{grid-template-columns:248px minmax(0,1fr)}
.sidebar{
    position:sticky;
    top:74px;
    height:calc(100vh - 74px);
    min-height:0;
    padding:18px 14px 14px;
    gap:0;
    overflow:hidden;
    border-right:1px solid rgba(73,112,145,.28);
    background:
        radial-gradient(circle at 15% 0,rgba(25,185,239,.09),transparent 30%),
        linear-gradient(180deg,rgba(8,17,29,.97),rgba(6,13,23,.98));
    box-shadow:14px 0 40px rgba(0,0,0,.12);
}
.sidebar-scroll{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    padding:4px 3px 18px;
    scrollbar-width:thin;
    scrollbar-color:rgba(71,113,145,.38) transparent;
}
.sidebar-scroll::-webkit-scrollbar{width:5px}
.sidebar-scroll::-webkit-scrollbar-thumb{background:rgba(71,113,145,.38);border-radius:99px}
.sidebar-group{display:grid;gap:8px}
.sidebar-system-group{margin-top:24px;padding-top:20px;border-top:1px solid rgba(74,106,135,.18)}
.sidebar-label{
    display:flex;
    align-items:center;
    gap:10px;
    padding:0 11px 2px;
    margin:0;
    color:#6f8499;
    font-size:.64rem;
    font-weight:900;
    line-height:1;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.sidebar-label.second{margin-top:0}
.sidebar-label::after{content:"";height:1px;flex:1;background:linear-gradient(90deg,rgba(68,105,137,.28),transparent)}
.sidebar-nav{display:grid;gap:5px}
.sidebar a.sidebar-nav-item{
    position:relative;
    isolation:isolate;
    min-height:46px;
    display:flex;
    align-items:center;
    gap:12px;
    padding:7px 11px 7px 8px;
    overflow:hidden;
    border:1px solid transparent;
    border-radius:14px;
    color:#aebdcb;
    font-size:.88rem;
    font-weight:720;
    letter-spacing:-.01em;
    transition:color .18s ease,border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease;
}
.sidebar a.sidebar-nav-item::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    opacity:0;
    background:linear-gradient(90deg,rgba(25,185,239,.1),rgba(25,185,239,.025));
    transition:opacity .18s ease;
}
.sidebar a.sidebar-nav-item:hover{
    color:#ecf8ff;
    border-color:rgba(76,131,169,.22);
    background:rgba(20,39,57,.48);
    transform:translateX(2px);
}
.sidebar a.sidebar-nav-item:hover::before{opacity:1}
.sidebar a.sidebar-nav-item.active{
    color:#fff;
    border-color:rgba(25,185,239,.38);
    background:linear-gradient(100deg,rgba(9,99,151,.38),rgba(17,46,68,.72) 72%,rgba(255,77,54,.055));
    box-shadow:0 10px 28px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.035),0 0 0 1px rgba(25,185,239,.04);
}
.sidebar a.sidebar-nav-item.active::before{opacity:1;background:radial-gradient(circle at 17% 50%,rgba(25,185,239,.17),transparent 55%)}
.sidebar-nav-icon{
    position:relative;
    flex:0 0 32px;
    width:32px;
    height:32px;
    display:grid;
    place-items:center;
    border:1px solid rgba(82,119,150,.22);
    border-radius:10px;
    color:#7f96aa;
    background:rgba(255,255,255,.025);
    transition:color .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;
}
.sidebar-nav-icon svg{width:17px;height:17px;display:block;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.sidebar-nav-icon svg path:first-child:last-child{fill:none}
.sidebar a.sidebar-nav-item:hover .sidebar-nav-icon{color:#8cdfff;border-color:rgba(25,185,239,.28);background:rgba(25,185,239,.07)}
.sidebar a.sidebar-nav-item.active .sidebar-nav-icon{
    color:#b9efff;
    border-color:rgba(25,185,239,.46);
    background:linear-gradient(145deg,rgba(25,185,239,.17),rgba(8,104,157,.13));
    box-shadow:0 0 18px rgba(25,185,239,.08),inset 0 1px 0 rgba(255,255,255,.07);
}
.sidebar-nav-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-active-marker{
    position:absolute;
    right:7px;
    width:4px;
    height:18px;
    border-radius:99px;
    opacity:0;
    transform:scaleY(.35);
    background:linear-gradient(180deg,#59d8ff,#12aadd);
    box-shadow:0 0 12px rgba(25,185,239,.75);
    transition:opacity .18s ease,transform .18s ease;
}
.sidebar a.sidebar-nav-item.active .sidebar-active-marker{opacity:1;transform:scaleY(1)}
.sidebar-module-icon{font-size:1rem;font-weight:900}
.viewer-note{
    display:flex;
    align-items:center;
    gap:9px;
    margin:2px 6px 0;
    padding:11px 12px;
    border:1px solid rgba(72,213,151,.2);
    border-radius:12px;
    color:#9eb1c1;
    background:rgba(72,213,151,.055);
    font-size:.78rem;
    font-weight:700;
}
.viewer-note-dot{width:7px;height:7px;border-radius:50%;background:#48d597;box-shadow:0 0 0 4px rgba(72,213,151,.1)}
.sidebar-foot{
    position:relative;
    flex:0 0 auto;
    display:grid;
    grid-template-columns:36px minmax(0,1fr) 9px;
    align-items:center;
    gap:10px;
    margin-top:0;
    padding:12px 11px;
    border:1px solid rgba(65,100,130,.22);
    border-radius:15px;
    background:linear-gradient(145deg,rgba(14,29,43,.84),rgba(7,16,27,.88));
    box-shadow:0 12px 25px rgba(0,0,0,.14),inset 0 1px 0 rgba(255,255,255,.025);
}
.sidebar-foot-logo{
    width:36px;height:36px;display:grid;place-items:center;border-radius:11px;
    color:#c3f2ff;font-size:.69rem;font-weight:950;letter-spacing:.04em;
    border:1px solid rgba(25,185,239,.35);
    background:linear-gradient(145deg,rgba(25,185,239,.17),rgba(9,92,139,.16));
}
.sidebar-foot-copy{display:grid;gap:3px;min-width:0}
.sidebar-foot-copy strong{font-size:.76rem;line-height:1;color:#eaf6fd}
.sidebar-foot-copy small{font-size:.64rem;color:#6f8498}
.sidebar-foot-status{width:8px;height:8px;border-radius:50%;background:#48d597;box-shadow:0 0 0 4px rgba(72,213,151,.09),0 0 13px rgba(72,213,151,.45)}
@media(max-width:900px){
    .app-grid{grid-template-columns:1fr}
    .sidebar{display:none}
}
@media(prefers-reduced-motion:reduce){
    .sidebar a.sidebar-nav-item,.sidebar-nav-icon,.sidebar-active-marker{transition:none}
}


/* Sprint 6.3 · Ticket #017 · Sidebar Color & Developer Console Fix */
.sidebar a.sidebar-nav-item.active{
    border-color:rgba(54,156,205,.42);
    background:linear-gradient(100deg,rgba(15,82,119,.58),rgba(12,36,55,.9) 74%,rgba(10,29,45,.94));
    box-shadow:0 10px 26px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.035),0 0 0 1px rgba(48,157,208,.045);
}
.sidebar a.sidebar-nav-item.active::before{
    opacity:1;
    background:radial-gradient(circle at 18% 50%,rgba(50,181,229,.14),transparent 58%);
}
.sidebar a.sidebar-nav-item.active .sidebar-nav-icon{
    color:#c9f4ff;
    border-color:rgba(54,177,226,.45);
    background:linear-gradient(145deg,rgba(36,157,207,.16),rgba(10,88,128,.13));
}
.sidebar-active-marker{
    background:linear-gradient(180deg,#64dcff,#1aa7dc);
    box-shadow:0 0 10px rgba(34,172,221,.6);
}
.sidebar-module-icon svg{
    width:17px;
    height:17px;
    display:block;
    fill:none;
    stroke:currentColor;
    stroke-width:1.75;
    stroke-linecap:round;
    stroke-linejoin:round;
}

/* Sprint 6.3 · Ticket #018 · Sidebar Readability & Final Polish */
.app-grid{grid-template-columns:276px minmax(0,1fr)}
.sidebar{padding-left:16px;padding-right:16px}
.sidebar-scroll{padding-left:2px;padding-right:2px}
.sidebar-group{gap:10px}
.sidebar-system-group{margin-top:28px;padding-top:23px}
.sidebar-label{padding-left:10px;padding-right:10px;margin-bottom:2px}
.sidebar a.sidebar-nav-item{
    min-height:48px;
    gap:13px;
    padding:7px 15px 7px 8px;
    font-size:.9rem;
}
.sidebar-nav-icon{flex-basis:34px;width:34px;height:34px}
.sidebar-nav-text{
    display:block;
    flex:1 1 auto;
    width:auto;
    max-width:none;
    min-width:0;
    overflow:visible;
    text-overflow:clip;
    white-space:normal;
    line-height:1.22;
    word-break:normal;
}
.sidebar a.sidebar-nav-item.active{
    border-color:rgba(53,156,204,.35);
    background:linear-gradient(100deg,rgba(14,74,109,.54),rgba(10,31,48,.9));
    box-shadow:0 8px 22px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.03);
}
.sidebar a.sidebar-nav-item.active::before{background:radial-gradient(circle at 18% 50%,rgba(50,181,229,.11),transparent 60%)}
.sidebar-active-marker{
    right:9px;
    width:3px;
    height:12px;
    background:#39c2ee;
    box-shadow:0 0 8px rgba(40,184,229,.42);
}
.sidebar-foot{grid-template-columns:38px minmax(0,1fr) 8px;padding:12px}
.sidebar-foot-copy strong{font-size:.78rem}
.sidebar-foot-copy small{font-size:.62rem;letter-spacing:.01em}
@media(max-width:1100px) and (min-width:901px){
    .app-grid{grid-template-columns:258px minmax(0,1fr)}
    .sidebar a.sidebar-nav-item{font-size:.86rem;gap:11px;padding-right:12px}
}

/* Sprint 6.3 · Ticket #019 · Hero & Sidebar Polish */
.app-grid{
    align-items:stretch;
}
.sidebar{
    position:relative;
    top:auto;
    height:auto;
    min-height:calc(100vh - 74px);
    align-self:stretch;
}
.evolution-hero h1,
.evolution-hero--assistant h1,
.evolution-assistant-copy h1{
    color:#f4f9fd!important;
    text-shadow:0 1px 0 rgba(255,255,255,.02),0 10px 30px rgba(0,0,0,.16)!important;
}
.evolution-hero .evolution-kicker,
.evolution-hero .evolution-eyebrow{
    color:#4bc9f3!important;
}
.evolution-hero .evolution-smart-summary{
    color:#c4d7e5!important;
}
@media(max-width:900px){
    .sidebar{display:none}
}

/* Sprint 6.6 · Ticket #030 · Desktop Import History Polish */
@media (min-width: 901px) {
    .history-section {
        margin-top: 32px;
    }

    .history-section .section-heading {
        margin-bottom: 14px;
    }

    .history-list {
        gap: 12px;
    }

    .history-row-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: stretch;
        min-height: 72px;
        padding: 0;
        overflow: hidden;
        border-color: #263c52;
        border-radius: 18px;
        background: linear-gradient(100deg, rgba(12, 29, 45, .98), rgba(7, 18, 30, .98));
        box-shadow: 0 10px 28px rgba(0, 0, 0, .12);
        transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
    }

    .history-row-actions:hover {
        border-color: rgba(57, 194, 238, .5);
        transform: translateY(-1px);
        box-shadow: 0 14px 34px rgba(0, 0, 0, .18);
    }

    .history-main {
        display: grid;
        grid-template-columns: 48px minmax(210px, 1fr) auto;
        align-items: center;
        gap: 16px;
        min-width: 0;
        padding: 12px 16px;
        background: transparent;
    }

    .history-main .history-person {
        width: 46px;
        height: 46px;
        border-radius: 14px;
        font-size: 1.15rem;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
    }

    .history-main > span:not(.history-person) {
        min-width: 0;
    }

    .history-main b {
        display: block;
        overflow: hidden;
        color: #f5f9fd;
        font-size: .92rem;
        line-height: 1.25;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .history-main small {
        overflow: hidden;
        margin-top: 4px;
        color: #8fa4b8;
        font-size: .76rem;
        line-height: 1.3;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .history-main .status-pill {
        justify-self: end;
        min-width: 94px;
        justify-content: center;
        padding: 7px 12px;
    }

    .history-delete-form {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        gap: 16px;
        min-width: 330px;
        height: 100%;
        padding: 12px 14px 12px 18px;
        border-top: 0;
        border-left: 1px solid #22364b;
        background: rgba(3, 11, 19, .48);
    }

    .history-delete-form label {
        gap: 8px;
        color: #9aadc0;
        font-size: .76rem;
        white-space: nowrap;
        cursor: pointer;
    }

    .history-delete-form input[type="checkbox"] {
        width: 16px;
        height: 16px;
        margin: 0;
        accent-color: #31bce9;
        cursor: pointer;
    }

    .history-delete-form .danger-outline-button.compact {
        min-height: 36px;
        padding: 8px 12px;
        border-radius: 10px;
        font-size: .76rem;
    }
}

@media (min-width: 901px) and (max-width: 1180px) {
    .history-delete-form {
        min-width: 270px;
        gap: 10px;
    }

    .history-main {
        grid-template-columns: 44px minmax(160px, 1fr) auto;
        gap: 12px;
        padding-inline: 13px;
    }
}

/* Sprint 6.7 / Ticket #031 – Import Assistant Quality & Diff */
.import-quality-card{margin-bottom:18px;padding:18px;border:1px solid rgba(58,205,244,.34);border-radius:20px;background:linear-gradient(145deg,rgba(12,43,65,.78),rgba(7,18,30,.92));box-shadow:0 18px 40px rgba(0,0,0,.16)}
.import-quality-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.import-quality-head h2{margin:3px 0 0}.quality-grade{display:inline-flex;align-items:center;min-height:34px;padding:0 13px;border-radius:999px;font-size:.78rem;font-weight:850;white-space:nowrap}.quality-excellent{color:#7bf0bd;background:rgba(24,184,119,.12);border:1px solid rgba(24,184,119,.4)}.quality-good{color:#9cddff;background:rgba(37,185,239,.12);border:1px solid rgba(37,185,239,.38)}.quality-review{color:#ffd582;background:rgba(224,157,39,.12);border:1px solid rgba(224,157,39,.4)}
.import-quality-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.import-quality-grid>div{min-width:0;padding:13px 14px;border:1px solid rgba(126,157,184,.18);border-radius:14px;background:rgba(5,15,26,.52)}.import-quality-grid span{display:block;color:#8fa4b9;font-size:.76rem;text-transform:uppercase;letter-spacing:.09em}.import-quality-grid strong{display:block;margin-top:5px;font-size:1.16rem;color:#f4f9ff}.import-quality-hint{margin:14px 0 0;color:#9bafc2;line-height:1.5}
.day-review-row.will-change{border-color:rgba(51,196,241,.5);box-shadow:inset 3px 0 0 rgba(51,196,241,.8)}.import-day-state{display:flex;align-items:center;gap:7px;min-height:20px;margin-bottom:2px}.import-day-state span{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;font-size:.68rem;font-weight:800}.old-code{color:#aab9c9;background:rgba(134,153,175,.1);border:1px solid rgba(134,153,175,.2)}.change-code{color:#78dcff;background:rgba(37,185,239,.12);border:1px solid rgba(37,185,239,.35)}
@media(max-width:900px){.import-quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.import-quality-card{padding:15px;border-radius:18px}.import-quality-head{align-items:flex-start;flex-direction:column;gap:10px}.import-quality-grid{gap:8px}.import-quality-grid>div{padding:11px}.import-day-state{flex-wrap:wrap}}

/* 3.9.13 – Schichttypen nach Mitglied und dauerhaftes Löschen */
.shift-type-settings{grid-template-columns:minmax(300px,.72fr) minmax(620px,1.65fr)}
.member-type-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:18px}
.member-type-column,.general-type-section{min-width:0;border:1px solid #223249;border-radius:18px;padding:14px;background:rgba(8,20,32,.45)}
.member-type-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 2px 10px;border-bottom:1px solid rgba(116,151,186,.16)}
.member-type-head>div{display:flex;align-items:center;gap:9px;min-width:0}.member-type-head>div>span{width:9px;height:30px;border-radius:999px;background:var(--member-color,#94a3b8)}
.member-type-head h3{margin:0;font-size:1rem}.member-type-head small{color:#8291a4;white-space:nowrap}.member-type-column .type-list,.general-type-section .type-list{margin-top:12px}
.member-type-column .type-row{grid-template-columns:9px 48px minmax(90px,1fr);align-items:start}.member-type-column .type-actions{grid-column:2/4;justify-content:flex-start}
.general-type-section{--member-color:#94a3b8;margin-top:16px}.general-type-section .type-row{grid-template-columns:9px 55px 1fr auto}
.mini-danger{background:#35151a;color:#ff9292;border:1px solid #6b2931}.mini-danger:hover{background:#4a1c23;color:#ffd0d0}.empty-state.compact{padding:20px 10px}
@media(max-width:1150px){.shift-type-settings{grid-template-columns:1fr}.member-type-column .type-row{grid-template-columns:9px 52px 1fr}.member-type-column .type-actions{grid-column:auto}}
@media(max-width:820px){.member-type-columns{grid-template-columns:1fr}.general-type-section .type-row,.member-type-column .type-row{grid-template-columns:8px 52px 1fr}.general-type-section .type-actions,.member-type-column .type-actions{grid-column:2/4;justify-content:stretch}.general-type-section .type-actions>*,.member-type-column .type-actions>*{flex:1}.general-type-section .type-actions .mini-button,.member-type-column .type-actions .mini-button{width:100%}}

/* Build 110: eindeutige Schichttypfarben */
.color-duplicate-warning{display:grid;gap:4px;padding:12px 14px;border:1px solid rgba(245,158,11,.42);border-radius:13px;background:rgba(245,158,11,.10);color:#ffd98a}.color-duplicate-warning[hidden]{display:none}.color-duplicate-warning strong{font-size:.88rem}.color-duplicate-warning span{font-size:.78rem;color:#e9c977}.stack-form input[type=color][aria-invalid=true]{outline:2px solid #f59e0b;outline-offset:2px}.type-color{box-shadow:0 0 16px color-mix(in srgb,currentColor 28%,transparent)}

/* Build 111 · finaler Schichttypen-Editor */
.shift-type-live-preview{--preview-color:#38bdf8;display:grid;grid-template-columns:9px 56px 1fr;align-items:center;gap:12px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--preview-color) 38%,#2a3a50);border-radius:16px;background:color-mix(in srgb,var(--preview-color) 12%,#0d1a29);box-shadow:inset 0 0 30px color-mix(in srgb,var(--preview-color) 5%,transparent)}
.shift-type-live-preview .preview-stripe{width:9px;height:52px;border-radius:999px;background:var(--preview-color);box-shadow:0 0 20px color-mix(in srgb,var(--preview-color) 48%,transparent)}
.shift-type-live-preview div{display:contents}.shift-type-live-preview strong{font-size:1.25rem;color:#fff}.shift-type-live-preview b{font-size:.92rem;color:#eef7ff}.shift-type-live-preview small{grid-column:3;color:#91a3b7;margin-top:-7px}
.shift-color-fieldset{min-width:0;margin:0;padding:13px 14px 14px;border:1px solid #2a3a50;border-radius:15px;background:#0d1928}.shift-color-fieldset legend{padding:0 7px;color:#aeb9c8;font-size:.86rem;font-weight:800}
.shift-color-palette{display:grid;grid-template-columns:repeat(12,minmax(24px,1fr));gap:8px}.shift-color-swatch{position:relative;display:grid;place-items:center;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--swatch) 58%,#52657b);border-radius:9px;background:#111e2d;cursor:pointer;padding:3px;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,opacity .15s ease}.shift-color-swatch span{display:block;width:100%;height:100%;border-radius:6px;background:var(--swatch)}.shift-color-swatch:hover{transform:translateY(-2px);border-color:#fff;z-index:2}.shift-color-swatch.is-selected{border-color:#fff;box-shadow:0 0 0 2px #0b1522,0 0 0 4px var(--swatch),0 0 18px color-mix(in srgb,var(--swatch) 50%,transparent)}.shift-color-swatch.is-used:not(.is-selected){opacity:.42}.shift-color-swatch i{position:absolute;display:grid;place-items:center;inset:1px;border-radius:7px;background:rgba(5,10,18,.55);color:#fff;font-size:1rem;font-style:normal;font-weight:900;text-shadow:0 1px 3px #000}.selected-color-name{margin-top:10px;color:#8192a7;font-size:.78rem}.selected-color-name strong{color:#dbeafe}
.type-edit-dialog .shift-color-palette{grid-template-columns:repeat(12,minmax(22px,1fr))}
@media(max-width:700px){.shift-color-palette,.type-edit-dialog .shift-color-palette{grid-template-columns:repeat(8,minmax(28px,1fr));gap:7px}.shift-type-live-preview{grid-template-columns:8px 48px 1fr}.shift-color-fieldset{padding:12px}.type-edit-dialog form{padding:18px}}
@media(max-width:430px){.shift-color-palette,.type-edit-dialog .shift-color-palette{grid-template-columns:repeat(6,minmax(30px,1fr))}.shift-color-swatch{border-radius:8px}.shift-type-live-preview{grid-template-columns:7px 42px 1fr;padding:12px}.shift-type-live-preview strong{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){.brand-animation-canvas{opacity:.55}}
