/* PrivatTermine – Designversion 2.0 */
:root{--ink:#222036;--muted:#77758a;--paper:#f7f6fb;--white:#fff;--purple:#6d5dfb;--purple-dark:#5142d9;--purple-soft:#eeecff;--line:#e9e7ef;--rose:#ec5b87;--shadow:0 18px 45px rgba(37,31,75,.09);--radius:20px}*{box-sizing:border-box}html{font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--paper)}body{margin:0;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.17em;margin:0 0 12px;text-transform:uppercase}.eyebrow.purple{color:var(--purple)}.muted{color:var(--muted)}.brand{display:flex;align-items:center;gap:12px;font-weight:800;font-size:1.08rem}.brand-mark{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:var(--purple);color:#fff;font-size:.77rem;box-shadow:0 7px 16px rgba(109,93,251,.3)}
.login-shell{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr;background:#fff}.login-story{position:relative;overflow:hidden;background:linear-gradient(145deg,#24213f,#312a5b);color:#fff;padding:48px 64px;display:flex;flex-direction:column}.brand-light .brand-mark{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.25)}.story-content{position:relative;z-index:1;margin:auto 0;max-width:570px}.story-content h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(4rem,7vw,7.2rem);line-height:.88;letter-spacing:-.055em;margin:0 0 34px}.story-content h1 em{color:#a89eff;font-weight:400}.story-content>p:not(.eyebrow){max-width:450px;color:#c9c5df;line-height:1.7;font-size:1.05rem}.story-date{display:flex;align-items:center;gap:13px;margin-top:48px}.story-date strong{font:400 4.6rem/1 Georgia,serif}.story-date span{font-size:.72rem;letter-spacing:.13em;line-height:1.55;color:#bdb7d9}.domain-label{font-size:.67rem;letter-spacing:.14em;color:#817b9c}.story-orbit{position:absolute;border:1px solid rgba(255,255,255,.09);border-radius:50%}.orbit-one{width:560px;height:560px;right:-170px;top:-160px}.orbit-two{width:370px;height:370px;right:-90px;top:-60px}.login-panel{display:grid;place-items:center;padding:50px;background:radial-gradient(circle at 100% 0,#f0eeff,transparent 35%)}.login-card{width:min(420px,100%)}.login-card h2{font:400 2.5rem/1.1 Georgia,serif;margin:0 0 10px}.login-card>label,.form-grid>label,.inline-form>label{display:flex;flex-direction:column;gap:8px;font-size:.78rem;font-weight:700;margin-top:22px}.login-card input,.form-grid input,.form-grid select,.form-grid textarea,.inline-form input,.inline-form select,.toolbar-card input,.toolbar-card select,.range-fields input{width:100%;border:1px solid #dddae7;border-radius:11px;background:#fff;padding:13px 14px;outline:none;color:var(--ink);transition:.2s}.login-card input:focus,.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus,.inline-form input:focus,.inline-form select:focus,.toolbar-card input:focus,.toolbar-card select:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--purple-soft)}.password-wrap{position:relative}.password-wrap input{padding-right:46px}.reveal{position:absolute;right:5px;top:5px;border:0;background:transparent;padding:10px;color:var(--muted)}.button{border:0;border-radius:11px;padding:12px 17px;font-weight:750;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s;white-space:nowrap}.button:hover{transform:translateY(-1px)}.button.primary{background:var(--purple);color:#fff;box-shadow:0 7px 18px rgba(109,93,251,.22)}.button.primary:hover{background:var(--purple-dark)}.button.wide{width:100%;margin-top:28px;justify-content:space-between}.button.subtle{background:#fff;border:1px solid var(--line);color:var(--ink)}.button.dark{background:var(--ink);color:#fff}.button.danger{background:#fff0f3;color:#c7385c}.login-hint{text-align:center;color:var(--muted);font-size:.75rem;line-height:1.6;margin-top:22px}.mobile-brand{display:none}
.app-shell{min-height:100vh;display:grid;grid-template-columns:252px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:252px;padding:30px 24px 22px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:20}.sidebar nav{display:flex;flex-direction:column;gap:7px;margin-top:48px}.nav-item{border:0;background:transparent;color:#7b7989;border-radius:11px;padding:13px 14px;text-align:left;font-weight:650;display:flex;align-items:center;gap:13px}.nav-item span{width:21px;text-align:center;font-size:1.15rem}.nav-item.active{background:var(--purple-soft);color:var(--purple)}.sidebar-quote{margin:auto 8px 25px;background:linear-gradient(140deg,#f1efff,#faf9ff);padding:20px;border-radius:16px;color:#5d577c}.sidebar-quote span{font:2rem Georgia;color:var(--purple)}.sidebar-quote p{font:italic .83rem/1.5 Georgia;margin:0}.profile-button{border:0;background:transparent;display:flex;align-items:center;gap:10px;text-align:left;padding:8px}.profile-button>span:nth-child(2){min-width:0;flex:1}.profile-button strong,.profile-button small{display:block;overflow:hidden;text-overflow:ellipsis}.profile-button strong{font-size:.82rem}.profile-button small{font-size:.68rem;color:var(--muted);margin-top:3px}.avatar{width:38px;height:38px;border-radius:50%;background:linear-gradient(145deg,#473f74,#927fdf);color:#fff;display:grid;place-items:center;font-size:.72rem;font-weight:800}.main-area{grid-column:2}.topbar{height:68px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.86);backdrop-filter:blur(15px);display:flex;align-items:center;justify-content:flex-end;padding:0 4.5vw;position:sticky;top:0;z-index:10}.top-actions{display:flex;align-items:center;gap:20px;color:var(--muted);font-size:.76rem}.text-button{border:0;background:transparent;color:var(--purple);font-weight:700}.menu-button,.mobile-title{display:none}.content{max-width:1320px;margin:auto;padding:48px 4.5vw 80px}.page{display:none}.page.active{display:block}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:35px}.page-heading h1{font:400 2.9rem/1.05 Georgia,serif;margin:0 0 9px}.page-heading p:last-child{margin:0}.next-card{min-height:190px;border-radius:var(--radius);padding:34px 42px;color:#fff;background:linear-gradient(115deg,rgba(38,34,71,.96),rgba(75,64,135,.93)),radial-gradient(circle at 85%,#7a68e9,transparent);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.next-card:after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-80px;top:-170px}.next-card h2{font:400 2rem Georgia,serif;margin:0 0 10px}.next-card p:last-child{color:#c8c4db;margin:0}.countdown{position:relative;z-index:1;width:120px;height:120px;border:1px solid rgba(255,255,255,.2);border-radius:50%;display:grid;place-content:center;text-align:center;background:rgba(255,255,255,.06)}.countdown strong{font:400 2.8rem/1 Georgia}.countdown span{font-size:.6rem;letter-spacing:.18em;margin-top:6px}.toolbar-card{display:grid;grid-template-columns:minmax(250px,1fr) 200px auto;gap:14px;margin:25px 0;padding:11px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:0 8px 25px rgba(37,31,75,.04)}.search-wrap{position:relative}.search-wrap span{position:absolute;left:14px;top:10px;font-size:1.3rem;color:var(--muted)}.toolbar-card .search-wrap input{padding-left:43px}.toolbar-card input,.toolbar-card select{border:0;background:#faf9fc}.view-switch{display:flex;background:#f1eff5;padding:4px;border-radius:10px}.view-switch button{border:0;background:transparent;border-radius:8px;padding:8px 12px;color:var(--muted);font-size:.76rem;font-weight:700}.view-switch button.active{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.08)}.date-navigation{display:flex;align-items:center;gap:10px;margin:24px 0 15px}.icon-button{border:1px solid var(--line);background:#fff;border-radius:9px;width:38px;height:38px;color:var(--ink)}.period-label{border:0;background:transparent;min-width:170px;font:400 1.25rem Georgia,serif}.date-navigation .button.subtle{margin-left:auto;padding:9px 14px}.range-fields{display:flex;align-items:flex-end;gap:10px;margin-left:10px}.range-fields label{font-size:.67rem;color:var(--muted)}.range-fields input{display:block;margin-top:4px;padding:8px}.range-fields .button{padding:9px 13px}.calendar-card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.weekday{padding:12px;text-align:center;font-size:.65rem;font-weight:800;letter-spacing:.1em;color:var(--muted);border-bottom:1px solid var(--line)}.calendar-day{min-height:112px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px;overflow:hidden}.calendar-day:nth-child(7n){border-right:0}.calendar-day.outside{background:#fbfafc;color:#bbb}.calendar-day.today .day-number{background:var(--purple);color:#fff}.day-number{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;font-size:.74rem;margin-bottom:5px}.calendar-event{display:block;width:100%;border:0;border-left:3px solid var(--event);background:color-mix(in srgb,var(--event) 10%,white);color:var(--ink);border-radius:5px;padding:5px 6px;margin-top:4px;text-align:left;font-size:.67rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appointment-list{display:flex;flex-direction:column;gap:11px;margin-top:18px}.date-group-title{margin:24px 0 8px;font:400 1.15rem Georgia,serif}.appointment-row{display:grid;grid-template-columns:68px 1fr auto;gap:18px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 17px;transition:.2s}.appointment-row:hover{transform:translateY(-1px);box-shadow:0 10px 25px rgba(37,31,75,.06)}.date-tile{text-align:center;border-right:1px solid var(--line);padding-right:15px}.date-tile strong{display:block;font:400 1.75rem Georgia}.date-tile span{font-size:.62rem;font-weight:800;letter-spacing:.1em;color:var(--muted)}.appointment-main{min-width:0}.appointment-main h3{font-size:.93rem;margin:0 0 5px}.appointment-main p{font-size:.74rem;color:var(--muted);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.appointment-side{display:flex;align-items:center;gap:12px}.type-pill{border-radius:20px;padding:6px 9px;font-size:.65rem;font-weight:700}.appointment-thumb{width:48px;height:48px;border-radius:9px;object-fit:cover}.edit-button{border:0;background:transparent;font-size:1.25rem;color:var(--muted);padding:8px}.empty-state{text-align:center;background:#fff;border:1px dashed #d9d6e5;border-radius:16px;padding:45px;color:var(--muted)}
.card,.table-card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 8px 30px rgba(37,31,75,.04)}.inline-form{display:grid;grid-template-columns:1fr 120px 180px auto;gap:16px;align-items:end;padding:22px}.inline-form>label{margin:0}.inline-form input,.inline-form select{padding:11px}.types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:15px;margin-top:24px}.type-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;display:flex;align-items:center;gap:14px}.type-icon{width:45px;height:45px;border-radius:13px;display:grid;place-items:center;font-size:1.25rem}.type-card>div:nth-child(2){flex:1}.type-card h3{font-size:.9rem;margin:0 0 4px}.type-card p{font-size:.67rem;color:var(--muted);margin:0}.type-card button{border:0;background:transparent;color:#b74865;font-size:1rem}.info-note{margin-top:24px;border-left:4px solid var(--purple);background:var(--purple-soft);padding:16px 20px;border-radius:0 12px 12px 0;font-size:.8rem}.info-note p{margin:6px 0 0;color:#625d7d;line-height:1.5}.user-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:22px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px}.stat-card strong{display:block;font:400 2rem Georgia}.stat-card span{font-size:.7rem;color:var(--muted)}.table-card{overflow:hidden}.user-row{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:20px;align-items:center;padding:17px 22px;border-bottom:1px solid var(--line)}.user-row:last-child{border:0}.user-identity{display:flex;align-items:center;gap:12px}.user-identity strong,.user-identity small{display:block}.user-identity small{color:var(--muted);font-size:.7rem;margin-top:3px}.status{font-size:.68rem;font-weight:750}.status:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#27ac77;margin-right:7px}.status.inactive:before{background:#aaa}.role-label{font-size:.72rem;color:var(--muted)}
.modal{width:min(700px,calc(100% - 28px));border:0;border-radius:20px;padding:0;box-shadow:0 30px 90px rgba(22,19,45,.25)}.modal::backdrop{background:rgba(25,22,45,.55);backdrop-filter:blur(4px)}.modal form{padding:28px}.small-modal{width:min(570px,calc(100% - 28px))}.modal-head{display:flex;justify-content:space-between;align-items:flex-start}.modal-head h2{font:400 1.8rem Georgia;margin:0}.close-button{border:0;background:#f4f2f7;border-radius:50%;width:34px;height:34px;font-size:1.4rem;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid.single{grid-template-columns:1fr}.form-grid>label{margin-top:20px}.form-grid small{color:var(--muted);font-weight:400}.span-2{grid-column:span 2}.checkbox-label{flex-direction:row!important;align-items:center;background:#f8f7fb;border-radius:12px;padding:13px}.checkbox-label input{width:18px}.checkbox-label strong,.checkbox-label small{display:block}.checkbox-label small{font-weight:400;color:var(--muted);margin-top:3px}.image-picker input{padding:0;border:0}.image-picker span{font-size:.67rem;color:var(--muted);font-weight:400}.existing-image{margin-top:14px;display:flex;align-items:center;gap:12px}.existing-image img{width:90px;height:60px;object-fit:cover;border-radius:9px}.existing-image button{border:0;background:#fff0f3;color:#c7385c;border-radius:8px;padding:7px}.modal-actions{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}.toast{position:fixed;right:25px;top:22px;z-index:100;padding:13px 18px;background:var(--ink);color:#fff;border-radius:10px;box-shadow:var(--shadow);font-size:.8rem;transform:translateY(-90px);opacity:0;transition:.25s}.toast.show{transform:translateY(0);opacity:1}.toast.error{background:#b93658}
@media(max-width:1024px){.login-shell{grid-template-columns:1fr}.login-story{display:none}.login-panel{min-height:100vh;padding:28px}.mobile-brand{display:flex;margin-bottom:55px}.app-shell{display:block}.sidebar{transform:translateX(-105%);transition:.25s;box-shadow:var(--shadow)}.sidebar.open{transform:translateX(0)}.main-area{grid-column:auto}.topbar{justify-content:space-between;padding:0 20px}.menu-button{display:block}.mobile-title{display:block;font-weight:800}.content{padding:34px 20px 70px}.toolbar-card{grid-template-columns:1fr 1fr}.search-wrap{grid-column:span 2}.view-switch{justify-self:end}.calendar-day{min-height:90px}.inline-form{grid-template-columns:1fr 1fr}.inline-form .button{grid-column:span 2}.user-row{grid-template-columns:1fr auto}.user-row>.role-label,.user-row>.status{display:none}}
@media(max-width:600px){.page-heading{align-items:flex-start;flex-direction:column}.page-heading h1{font-size:2.35rem}.page-heading .button{width:100%}.next-card{padding:25px;min-height:170px}.next-card h2{font-size:1.55rem}.countdown{width:88px;height:88px;flex:none}.countdown strong{font-size:2rem}.toolbar-card{grid-template-columns:1fr}.search-wrap{grid-column:auto}.view-switch{justify-self:stretch}.view-switch button{flex:1}.toolbar-card select{display:none}.date-navigation{flex-wrap:wrap}.period-label{min-width:130px;flex:1}.date-navigation .button.subtle{margin-left:0}.range-fields{width:100%;margin:8px 0 0;flex-wrap:wrap}.calendar-card{overflow-x:auto}.calendar-grid{min-width:650px}.calendar-day{min-height:85px}.appointment-row{grid-template-columns:54px 1fr;padding:12px}.appointment-side{grid-column:2}.appointment-side .type-pill{display:none}.inline-form{grid-template-columns:1fr}.inline-form .button{grid-column:auto}.types-grid{grid-template-columns:1fr}.user-stats{grid-template-columns:repeat(3,1fr)}.stat-card{padding:14px}.stat-card strong{font-size:1.6rem}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.modal form{padding:21px}.modal-actions{grid-template-columns:auto 1fr auto}.modal-actions .button.subtle{display:none}.modal-actions .button.primary{grid-column:auto}.appointment-thumb{display:none}}

/* Visual refresh */
svg{width:1.15em;height:1.15em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.brand-mark svg{width:21px;height:21px;stroke-width:1.7}.button svg{width:17px;height:17px}.icon-button svg{width:18px;height:18px;display:block;margin:auto}.login-story{background-image:linear-gradient(90deg,rgba(27,21,39,.94) 0%,rgba(32,23,44,.76) 47%,rgba(32,23,44,.15) 100%),url('/images/memory-hero.webp');background-size:cover;background-position:center}.login-story:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(25,18,34,.58),transparent 45%);pointer-events:none}.login-story>*{position:relative;z-index:2}.brand-light .brand-mark{background:rgba(255,255,255,.1);box-shadow:0 8px 25px rgba(0,0,0,.18);backdrop-filter:blur(10px)}.story-content{padding:38px 0}.story-content h1{text-shadow:0 3px 30px rgba(0,0,0,.22)}.story-content>p:not(.eyebrow){color:#e0d9e4}.story-date{width:max-content;padding:11px 18px 11px 0;border-top:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.14)}.login-panel{background:radial-gradient(circle at 90% 8%,rgba(220,211,255,.62),transparent 31%),linear-gradient(145deg,#fff,#faf9fd)}.login-card{background:rgba(255,255,255,.72);padding:38px;border:1px solid rgba(255,255,255,.9);border-radius:26px;box-shadow:0 30px 80px rgba(45,34,78,.09);backdrop-filter:blur(18px)}.login-card h2{letter-spacing:-.025em}.login-card input{background:rgba(255,255,255,.86)}
.sidebar{background:linear-gradient(180deg,#fff 0%,#fcfbff 100%);box-shadow:12px 0 45px rgba(44,35,78,.025)}.sidebar .brand-mark{border-radius:13px;background:linear-gradient(145deg,#7b69ff,#5746dd)}.nav-item{position:relative;transition:background .2s,color .2s,transform .2s}.nav-item:hover{background:#f6f4ff;color:var(--purple);transform:translateX(2px)}.nav-item.active:before{content:"";position:absolute;left:-24px;width:4px;height:26px;background:var(--purple);border-radius:0 4px 4px 0}.nav-item span svg{width:19px;height:19px}.sidebar-quote{position:relative;overflow:hidden;border:1px solid #e8e3ff}.sidebar-quote:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-45px;bottom:-45px;background:rgba(109,93,251,.09)}.topbar{box-shadow:0 5px 24px rgba(39,31,68,.025)}.content{position:relative}.content:before{content:"";position:fixed;width:430px;height:430px;right:-210px;top:120px;background:radial-gradient(circle,rgba(109,93,251,.07),transparent 68%);pointer-events:none}.page-heading h1{letter-spacing:-.035em}.page-heading .muted{font-size:.9rem}.button.primary{background:linear-gradient(135deg,#7665ff,#5d4ce0);box-shadow:0 10px 24px rgba(100,82,230,.25)}
.next-card{min-height:215px;background-image:linear-gradient(90deg,rgba(35,27,52,.98) 0%,rgba(48,36,67,.93) 48%,rgba(41,29,49,.35) 100%),url('/images/memory-hero.webp');background-size:cover;background-position:center 54%;border:1px solid rgba(255,255,255,.08);box-shadow:0 25px 55px rgba(38,27,59,.18)}.next-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.035),transparent 45%);pointer-events:none}.next-card h2{font-size:2.15rem}.countdown{background:rgba(28,20,39,.36);border-color:rgba(255,255,255,.28);box-shadow:inset 0 0 0 7px rgba(255,255,255,.035);backdrop-filter:blur(10px)}.toolbar-card{border-color:#e5e1ef;box-shadow:0 12px 38px rgba(41,32,71,.06)}.search-wrap span{top:11px}.search-wrap span svg{width:19px;height:19px}.calendar-card,.card,.table-card{box-shadow:0 15px 45px rgba(42,33,72,.055)}.calendar-day{transition:background .18s}.calendar-day:hover{background:#fbfaff}.calendar-event{transition:transform .15s,box-shadow .15s}.calendar-event:hover{transform:translateX(2px);box-shadow:0 4px 10px color-mix(in srgb,var(--event) 18%,transparent)}.appointment-row{border-color:#e6e3ec;box-shadow:0 4px 16px rgba(42,33,72,.025)}.appointment-row:hover{box-shadow:0 15px 35px rgba(42,33,72,.08);border-color:#dbd5eb}.date-tile strong{color:#3c365c}.type-pill{border:1px solid currentColor}.types-grid{gap:18px}.type-card{position:relative;padding:22px;border-color:#e5e1ec;box-shadow:0 8px 25px rgba(43,33,75,.04);transition:transform .2s,box-shadow .2s;overflow:hidden}.type-card:after{content:"";position:absolute;inset:auto 0 0;height:3px;background:var(--type-color,#6d5dfb);opacity:.65}.type-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(43,33,75,.09)}.type-icon{background:color-mix(in srgb,var(--type-color) 12%,white);color:var(--type-color);border:1px solid color-mix(in srgb,var(--type-color) 22%,white)}.type-icon svg{width:23px;height:23px}.stat-card{position:relative;overflow:hidden;box-shadow:0 8px 25px rgba(43,33,75,.035)}.stat-card:after{content:"";position:absolute;width:60px;height:60px;border-radius:50%;right:-25px;top:-25px;background:var(--purple-soft)}.modal{box-shadow:0 40px 110px rgba(27,21,49,.32)}.modal-head{padding-bottom:5px}.image-picker{border:1px dashed #cfc8e4;border-radius:13px;padding:14px;background:#faf9ff}.avatar{box-shadow:0 5px 14px rgba(74,61,125,.2)}
@media(max-width:1024px){.login-card{padding:30px}.login-panel{background-image:linear-gradient(rgba(255,255,255,.91),rgba(255,255,255,.96)),url('/images/memory-hero.webp');background-size:cover;background-position:center}.mobile-brand{margin-bottom:38px}}
@media(max-width:600px){.login-card{padding:24px;border-radius:21px}.next-card{background-position:63% center}.next-card>div:first-child{max-width:63%}.sidebar{box-shadow:20px 0 60px rgba(33,25,59,.18)}}

/* Responsive layout corrections – Designversion 2.1 */
html,body{max-width:100%;overflow-x:hidden}.app-shell{grid-template-columns:252px minmax(0,1fr);width:100%;max-width:100%}.main-area,.content,.page,.page.active,.toolbar-card,.calendar-card,.appointment-list,.table-card{min-width:0;max-width:100%}.main-area{width:100%}.content{width:100%}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));width:100%}.calendar-day,.weekday,.appointment-row,.appointment-main,.appointment-side{min-width:0}.appointment-side{max-width:100%}.appointment-side>*{flex-shrink:0}.appointment-main{overflow:hidden}.range-fields{min-width:0}.modal{max-height:calc(100dvh - 28px);overflow-y:auto}
.sidebar-backdrop{display:none;position:fixed;inset:0;border:0;background:rgba(27,21,46,.42);backdrop-filter:blur(2px);z-index:19;opacity:0;transition:opacity .2s}.menu-open{overflow:hidden}
@media(max-width:1240px) and (min-width:1025px){.content{padding-left:32px;padding-right:32px}.toolbar-card{grid-template-columns:minmax(0,1fr) minmax(160px,190px)}.toolbar-card .view-switch{grid-column:1/-1;justify-self:end}.date-navigation{flex-wrap:wrap}.range-fields{flex-basis:100%;margin-left:0}.next-card{padding-left:32px;padding-right:32px}}
@media(max-width:1024px){.sidebar{width:min(300px,86vw)}.sidebar-backdrop.open{display:block;opacity:1}.content{width:100%;max-width:100%;padding-left:clamp(16px,3vw,28px);padding-right:clamp(16px,3vw,28px)}.calendar-card{width:100%}.page-heading{margin-bottom:28px}.topbar{width:100%}.date-navigation{flex-wrap:wrap}.range-fields{flex-basis:100%;width:100%;margin-left:0}.range-fields label{flex:1;min-width:145px}.range-fields .button{flex:none}.inline-form{min-width:0}.inline-form>*{min-width:0}}
@media(max-width:720px){.content{padding-top:28px}.page-heading h1{font-size:2.45rem}.next-card{padding:26px 28px}.toolbar-card{grid-template-columns:1fr}.search-wrap{grid-column:auto}.toolbar-card select{display:block}.view-switch{width:100%;justify-self:stretch}.view-switch button{flex:1}.calendar-card{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-color:#b9b0df #f1eff7;scrollbar-width:thin}.calendar-grid{width:700px;min-width:700px}.calendar-card::-webkit-scrollbar{height:9px}.calendar-card::-webkit-scrollbar-track{background:#f1eff7}.calendar-card::-webkit-scrollbar-thumb{background:#b9b0df;border-radius:9px;border:2px solid #f1eff7}.calendar-day{min-height:92px}.appointment-row{grid-template-columns:58px minmax(0,1fr) auto;gap:12px}.appointment-side{gap:6px}.type-pill{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inline-form{grid-template-columns:1fr}.inline-form .button{grid-column:auto}.user-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.stat-card{min-width:0}}
@media(max-width:600px){.calendar-card{max-width:calc(100vw - 32px)}.calendar-grid{width:660px;min-width:660px}.appointment-row{grid-template-columns:52px minmax(0,1fr)}.appointment-side{grid-column:2;justify-content:flex-end}.date-navigation .period-label{font-size:1.08rem}.range-fields label{min-width:calc(50% - 5px)}.range-fields .button{width:100%}.modal{width:calc(100% - 18px);max-height:calc(100dvh - 18px)}.top-actions #todayLabel{display:none}.top-actions{gap:8px}}
@media(max-width:430px){.content{padding-left:16px;padding-right:16px}.page-heading h1{font-size:2.15rem}.next-card{padding:22px;min-height:178px}.next-card>div:first-child{max-width:68%}.next-card h2{font-size:1.35rem}.next-card p:last-child{font-size:.75rem;line-height:1.45}.countdown{width:76px;height:76px}.countdown strong{font-size:1.75rem}.calendar-card{max-width:calc(100vw - 32px)}.user-stats{grid-template-columns:1fr}.stat-card{display:flex;align-items:center;gap:12px;padding:13px 16px}.stat-card strong{font-size:1.5rem}.page-heading .button{width:100%}.modal-actions{grid-template-columns:auto 1fr}.modal-actions .button.primary{grid-column:1/-1;width:100%}.user-row{padding:14px}.user-row .button{padding:9px 10px;font-size:.72rem}}

/* Terminliste – Designversion 2.2 */
.list-filter-card{display:grid;grid-template-columns:minmax(240px,1fr) minmax(150px,190px) minmax(170px,220px);gap:16px;padding:16px;align-items:end}.list-filter-card>label{display:flex;flex-direction:column;gap:7px;font-size:.69rem;font-weight:750;color:var(--muted)}.list-filter-card input,.list-filter-card select{width:100%;border:0;background:#f8f7fb;border-radius:10px;padding:12px 13px;color:var(--ink);outline:none}.list-filter-card input:focus,.list-filter-card select:focus{box-shadow:0 0 0 3px var(--purple-soft)}.list-filter-card .search-wrap span{top:10px}.list-filter-card .search-wrap input{padding-left:43px}.list-period-navigation{display:flex;align-items:center;gap:10px;margin:24px 0 8px}.list-period-navigation>strong{min-width:190px;text-align:center;font:400 1.3rem Georgia,serif}.list-period-navigation .button{margin-left:8px;padding:9px 14px}.result-count{margin-left:auto;color:var(--muted);font-size:.75rem;font-weight:700;background:#fff;border:1px solid var(--line);padding:8px 12px;border-radius:20px}.dedicated-list{margin-top:8px}.list-row{grid-template-columns:68px minmax(0,1fr) auto;padding-top:16px;padding-bottom:16px}.list-row-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 13px;margin-top:9px;color:var(--muted);font-size:.65rem}.list-row-meta>span:not(.repeat-label){position:relative}.list-row-meta>span:not(:first-child):not(.repeat-label):before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:#bbb4c8;margin:0 10px 2px 0}.repeat-label{display:inline-flex;align-items:center;gap:5px;color:var(--purple);font-weight:750}.repeat-label svg{width:13px;height:13px}.type-dot{width:10px;height:10px;border-radius:50%;box-shadow:0 0 0 4px rgba(109,93,251,.08)}.compact-button{padding:8px 11px;font-size:.7rem}.empty-state{display:flex;flex-direction:column;align-items:center}.empty-icon{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:var(--purple-soft);color:var(--purple);margin-bottom:14px}.empty-icon svg{width:25px;height:25px}.empty-state strong{color:var(--ink)}
@media(max-width:900px){.list-filter-card{grid-template-columns:1fr 1fr}.list-filter-card .search-wrap{grid-column:1/-1}.list-period-navigation{flex-wrap:wrap}.result-count{margin-left:auto}.list-row .appointment-side{grid-column:auto}}
@media(max-width:650px){.list-filter-card{grid-template-columns:1fr}.list-filter-card .search-wrap{grid-column:auto}.list-period-navigation>strong{min-width:0;flex:1}.list-period-navigation .button{order:2;width:100%;margin-left:0}.result-count{order:3;margin-left:0}.list-row{grid-template-columns:52px minmax(0,1fr)}.list-row .appointment-side{grid-column:2;justify-content:flex-end}.list-row-meta>span:last-child{display:none}.list-row .appointment-thumb{display:none}.view-switch button{padding-left:7px;padding-right:7px}}

/* E-Mail-Benachrichtigungen – Designversion 2.3 */
.notification-panel{border:1px solid #ddd8eb;border-radius:14px;background:#faf9fd;padding:16px;margin:20px 0 0}.notification-panel legend{padding:0 8px;color:var(--ink);font-size:.8rem;font-weight:800;display:flex;align-items:center;gap:7px}.notification-panel legend svg{width:17px;height:17px;color:var(--purple)}.smtp-note{margin:0 0 13px;padding:10px 12px;border-radius:9px;background:#fff5dc;color:#806018;font-size:.7rem;line-height:1.45}.smtp-note.ready{background:#e9f8f1;color:#237452}.recipient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.recipient-option{display:flex;align-items:center;gap:9px;border:1px solid #e4e0ec;border-radius:10px;background:#fff;padding:10px;cursor:pointer;min-width:0}.recipient-option:has(input:checked){border-color:#aa9eff;background:#f2f0ff;box-shadow:0 0 0 2px rgba(109,93,251,.08)}.recipient-option.disabled{opacity:.55;cursor:not-allowed}.recipient-option input{width:17px;flex:none}.recipient-option span{min-width:0}.recipient-option strong,.recipient-option small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipient-option strong{font-size:.74rem}.recipient-option small{margin-top:3px;color:var(--muted);font-size:.62rem;font-weight:400}.notify-time{display:grid!important;grid-template-columns:auto minmax(180px,260px);align-items:center;gap:12px!important;margin-top:14px!important}.notify-time select{padding:9px!important}.notification-panel>small{display:block;color:var(--muted);font-size:.64rem;margin-top:9px}.profile-email-section{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 12px;align-items:end;background:#f8f7fc;border-radius:13px;padding:15px;margin-top:20px}.profile-email-section label{display:flex;flex-direction:column;gap:7px;font-size:.75rem;font-weight:700}.profile-email-section input{border:1px solid #ddd8e8;border-radius:9px;padding:11px;background:#fff}.profile-email-section small{grid-column:1/-1;color:var(--muted);font-size:.65rem}.profile-divider{display:flex;align-items:center;gap:10px;margin:24px 0 0;color:var(--muted);font-size:.68rem;font-weight:750;text-transform:uppercase;letter-spacing:.1em}.profile-divider:after{content:"";height:1px;background:var(--line);flex:1}
@media(max-width:600px){.recipient-grid{grid-template-columns:1fr}.notify-time{grid-template-columns:1fr}.profile-email-section{grid-template-columns:1fr}.profile-email-section .button{width:100%}.profile-email-section small{grid-column:auto}}

/* Office- und JSON-Export – Designversion 2.4 */
.export-bar{display:grid;grid-template-columns:minmax(170px,1fr) repeat(3,minmax(135px,170px));gap:10px;align-items:stretch;margin:20px 0 8px;padding:14px;background:linear-gradient(135deg,#f7f5ff,#fff);border:1px solid #e3deef;border-radius:15px}.export-bar>div{display:flex;flex-direction:column;justify-content:center;padding-left:4px}.export-bar>div>strong{font-size:.82rem}.export-bar>div>small{color:var(--muted);font-size:.65rem;margin-top:4px}.export-button{border:1px solid #e2deea;background:#fff;border-radius:11px;padding:10px 11px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;text-align:left;color:var(--ink);transition:transform .18s,box-shadow .18s,border-color .18s}.export-button:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(39,31,68,.09);border-color:#cfc8df}.export-button:disabled{opacity:.55;cursor:wait;transform:none}.export-button>svg:first-child{width:22px;height:22px}.export-button.excel>svg:first-child{color:#23824e}.export-button.word>svg:first-child{color:#2867b2}.export-button.json>svg:first-child{color:#7955c7}.export-button span strong,.export-button span small{display:block}.export-button span strong{font-size:.73rem}.export-button span small{font-size:.6rem;color:var(--muted);margin-top:2px}.export-button .download-icon{width:14px;height:14px;color:#9b96a8}
@media(max-width:900px){.export-bar{grid-template-columns:repeat(3,minmax(0,1fr))}.export-bar>div{grid-column:1/-1;padding-bottom:3px}}
@media(max-width:540px){.export-bar{grid-template-columns:1fr}.export-bar>div{grid-column:auto}.export-button{padding:12px}}

/* Persönliches Profil – Designversion 2.5 */
.avatar{overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover;display:block}.profile-contact-section{display:grid;gap:14px;background:#f8f7fc;border-radius:14px;padding:16px;margin-top:20px}.profile-picture-row{display:flex;align-items:center;gap:15px;padding-bottom:14px;border-bottom:1px solid #e6e2ed}.profile-picture-preview{width:76px;height:76px;border-radius:22px;flex:none;overflow:hidden;display:grid;place-items:center;background:linear-gradient(145deg,#473f74,#927fdf);color:#fff;font-weight:800;font-size:1.05rem;box-shadow:0 9px 24px rgba(64,51,111,.2)}.profile-picture-preview img{width:100%;height:100%;object-fit:cover}.profile-picture-row>div{display:flex;align-items:center;flex-wrap:wrap;gap:7px 12px}.profile-picture-row>div>strong{width:100%;font-size:.82rem}.profile-picture-row small{width:100%;color:var(--muted);font-size:.62rem}.profile-file-button{display:inline-flex;align-items:center;border:1px solid #d9d4e4;background:#fff;border-radius:9px;padding:8px 11px;font-size:.68rem;font-weight:750;cursor:pointer}.profile-file-button:hover{border-color:var(--purple);color:var(--purple)}.profile-file-button input{display:none}.profile-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-contact-grid label{display:flex;flex-direction:column;gap:7px;font-size:.72rem;font-weight:750}.profile-contact-grid input{width:100%;border:1px solid #ddd8e8;border-radius:9px;padding:11px;background:#fff;outline:none}.profile-contact-grid input:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--purple-soft)}.profile-contact-section>.button{justify-self:end}.profile-contact-section>small{color:var(--muted);font-size:.62rem}.user-identity .avatar img{width:100%;height:100%;object-fit:cover}
@media(max-width:560px){.profile-contact-grid{grid-template-columns:1fr}.profile-contact-section>.button{width:100%;justify-self:stretch}.profile-picture-row{align-items:flex-start}}

/* Terminart-Symbole – Designversion 2.6 */
.calendar-event{display:flex;align-items:center;gap:5px}.calendar-event svg{width:12px;height:12px;flex:none}.calendar-event span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.type-pill{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.type-pill svg{width:13px;height:13px;flex:none}.type-meta{display:inline-flex;align-items:center;gap:5px;font-weight:750}.type-meta svg{width:13px;height:13px;flex:none}.appointment-main .type-meta{overflow:visible}

/* Titelbild – Designversion 2.7 */
.login-story{background-image:linear-gradient(90deg,rgba(27,21,39,.78) 0%,rgba(32,23,44,.54) 47%,rgba(32,23,44,.08) 100%),url('/images/termine-erinnerungen-hero.webp');background-position:center}.login-story:after{background:linear-gradient(0deg,rgba(25,18,34,.42),transparent 45%)}.story-content>p:not(.eyebrow){color:#f1edf3}.next-card{background-image:linear-gradient(90deg,rgba(35,27,52,.98) 0%,rgba(48,36,67,.88) 48%,rgba(41,29,49,.28) 100%),url('/images/termine-erinnerungen-hero.webp')}
@media(max-width:1024px){.login-panel{background-image:linear-gradient(rgba(255,255,255,.9),rgba(255,255,255,.96)),url('/images/termine-erinnerungen-hero.webp');background-position:68% center}}

/* Moderne Farbwelt und Aktionssymbole – Designversion 2.8 */
:root{--ink:#20233c;--muted:#66708c;--paper:#f4f7ff;--purple:#635bff;--purple-dark:#4b42e7;--purple-soft:#ebeaff;--line:#dfe5f5;--rose:#f0527d;--cyan:#12b8b0;--blue:#2878ff;--amber:#ffb020;--shadow:0 18px 48px rgba(50,63,125,.11)}
html{background:var(--paper)}body{background:radial-gradient(circle at 88% 4%,rgba(39,190,181,.1),transparent 28%),radial-gradient(circle at 38% 18%,rgba(99,91,255,.08),transparent 31%),var(--paper)}
.brand-mark{background:linear-gradient(145deg,var(--purple),#8d59e8 55%,#18b8b2);box-shadow:0 9px 24px rgba(99,91,255,.3)}
.sidebar{background:linear-gradient(180deg,#fff 0%,#f8f7ff 62%,#eefbfa 100%);border-right-color:#dce4f6;box-shadow:12px 0 40px rgba(56,67,128,.055)}
.nav-item{color:#596682;transition:background .18s,color .18s,transform .18s}.nav-item:hover{background:#f0f3ff;color:var(--purple);transform:translateX(2px)}.nav-item.active{color:#fff;background:linear-gradient(120deg,var(--purple),#7557df 58%,#198fc5);box-shadow:0 10px 24px rgba(99,91,255,.23)}.nav-item.active svg{filter:drop-shadow(0 2px 3px rgba(21,18,85,.22))}
.sidebar-quote{background:linear-gradient(140deg,#eeeaff,#e6faf7);border:1px solid #d8dcf5;color:#4d5378}.sidebar-quote span{color:#e44e87}.profile-button{border-radius:13px}.profile-button:hover{background:rgba(255,255,255,.72)}
.topbar{border-bottom-color:#dfe7f6;background:rgba(249,251,255,.84)}.content{position:relative}.page-heading h1{color:#272a4a;letter-spacing:-.035em}.eyebrow.purple{color:#5a52e8}
.button{min-height:40px;box-shadow:none}.button svg,.text-button svg,.profile-file-button svg{width:17px;height:17px;flex:none}.button.primary{background:linear-gradient(120deg,var(--purple),#7b52e6 55%,#4672ed);box-shadow:0 9px 22px rgba(99,91,255,.24)}.button.primary:hover{background:linear-gradient(120deg,#5148f2,#6944d6 55%,#2867df);box-shadow:0 12px 25px rgba(83,74,228,.29)}.button.subtle{background:#f7f9ff;border-color:#d9e2f5;color:#405174}.button.subtle:hover{background:#edf1ff;border-color:#bccaf0;color:#5148e8}.button.dark{background:linear-gradient(120deg,#27365d,#285f83);box-shadow:0 8px 18px rgba(34,70,104,.18)}.button.danger{background:#fff0f4;border:1px solid #ffd1dd;color:#d33261}.button.danger:hover{background:#ffe3eb}.button.wide>span{display:inline-flex;align-items:center;gap:8px}.button.wide>svg{width:18px;height:18px}
.text-button{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border-radius:9px}.text-button:hover{background:var(--purple-soft)}.reveal svg{width:19px;height:19px}.close-button{display:grid;place-items:center;background:#f0f2ff;color:#5d58a7}.close-button:hover{background:#e3e5ff;color:var(--purple)}.close-button svg{width:17px;height:17px}
.card,.table-card,.calendar-card,.toolbar-card,.appointment-row,.stat-card{border-color:#dde5f5;background:rgba(255,255,255,.94)}.toolbar-card{background:linear-gradient(120deg,rgba(255,255,255,.97),rgba(240,245,255,.96));box-shadow:0 14px 36px rgba(55,73,139,.08)}.toolbar-card input,.toolbar-card select,.list-filter-card input,.list-filter-card select{background:#f1f5ff}.search-wrap span{color:#625be5}
.view-switch{background:#e8edfb}.view-switch button{color:#62708f}.view-switch button.active{color:#fff;background:linear-gradient(120deg,var(--purple),#347bdc);box-shadow:0 5px 13px rgba(81,83,194,.22)}
.icon-button{border-color:#d6e0f4;background:#f8faff;color:#4f5fd0;transition:.18s}.icon-button:hover{background:linear-gradient(145deg,#eceaff,#e7f7ff);border-color:#b9c7eb;transform:translateY(-1px)}.period-label{color:#303654}.date-navigation .button.subtle,.list-period-navigation .button.subtle{background:#eef2ff;color:#514bd7}
.calendar-day{background:#fff}.calendar-day:nth-child(7n),.calendar-day:nth-child(7n-1){background:#fbf9ff}.calendar-day.today{background:#f0f4ff}.calendar-day.today .day-number{background:linear-gradient(145deg,var(--purple),#238dcc);box-shadow:0 5px 12px rgba(75,84,208,.23)}.weekday{color:#5e6d90;background:#f6f8ff}.calendar-event{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--event) 14%,transparent)}
.appointment-row:hover{border-color:#c8d4f1;box-shadow:0 15px 34px rgba(54,71,135,.1)}.date-tile strong{color:#3e4bb2}.edit-button{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#eff2ff;color:#5a54d9}.edit-button:hover{background:#e3e3ff}.edit-button svg{width:16px;height:16px}.type-pill{border-width:0;box-shadow:inset 0 0 0 1px currentColor}
.inline-form{background:linear-gradient(135deg,#fff,#f4f1ff 52%,#eefbf9)}.type-card{background:linear-gradient(145deg,#fff,#fafbff)}.type-delete{width:34px;height:34px!important;border-radius:9px!important;display:grid;place-items:center;background:#fff0f4!important}.type-delete:hover{background:#ffe2ea!important}.type-delete svg{width:15px;height:15px}.info-note{border-left-color:#14aaa5;background:linear-gradient(110deg,#e7faf7,#f0efff)}
.stat-card:nth-child(1){background:linear-gradient(145deg,#fff,#eeeaff)}.stat-card:nth-child(2){background:linear-gradient(145deg,#fff,#e5faf5)}.stat-card:nth-child(3){background:linear-gradient(145deg,#fff,#fff2df)}.stat-card:nth-child(1) strong{color:var(--purple)}.stat-card:nth-child(2) strong{color:#079a83}.stat-card:nth-child(3) strong{color:#e88b14}.role-label{color:#554fd1;background:#eeedff;border-radius:20px;padding:6px 10px;width:max-content}.status:before{box-shadow:0 0 0 4px #e2f7ef}.status.inactive:before{background:#ef8a55;box-shadow:0 0 0 4px #fff0e8}
.modal{background:#fbfcff}.modal-head{border-bottom:1px solid #e5e9f6;padding-bottom:16px}.modal::backdrop{background:rgba(28,31,70,.52)}.checkbox-label,.profile-contact-section,.notification-panel{background:linear-gradient(120deg,#f5f6ff,#f0faf9);border:1px solid #e0e6f5}.recipient-option:has(input:checked){border-color:#7771f2;background:#edecff}.modal-actions{border-top-color:#dfe5f3}
.export-bar{background:linear-gradient(125deg,#f0efff,#eaf9f7 55%,#fff7e8);border-color:#d8e2f2}.export-button.excel{border-color:#cde9da;background:#f5fff9}.export-button.word{border-color:#ccdcf5;background:#f5f9ff}.export-button.json{border-color:#ddd2f5;background:#faf7ff}.profile-file-button{gap:7px;background:#f4f6ff;border-color:#d6def2;color:#4f55b3}.existing-image button{display:inline-flex;align-items:center;gap:6px}.existing-image button svg{width:14px;height:14px}
.toast{background:linear-gradient(120deg,#303d72,#5155bd)}
@media(max-width:1024px){.login-panel{background-color:#f4f7ff}.sidebar{box-shadow:18px 0 50px rgba(38,48,101,.18)}}

/* Kommende Termine – Slider 3.0 */
.upcoming-slider{position:relative;min-height:270px;border-radius:24px;overflow:hidden;background:#313650;box-shadow:0 24px 55px rgba(38,45,91,.2);isolation:isolate}.slider-stage{position:relative;min-height:270px}.upcoming-slide{--slide-color:#635bff;position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1fr) 270px;align-items:center;gap:24px;padding:34px 76px 48px;background:radial-gradient(circle at 84% 32%,color-mix(in srgb,var(--slide-color) 78%,white) 0,transparent 27%),linear-gradient(118deg,color-mix(in srgb,var(--slide-color) 34%,#182440) 0%,color-mix(in srgb,var(--slide-color) 62%,#273052) 56%,color-mix(in srgb,var(--slide-color) 72%,#1d2741) 100%);color:#fff;opacity:0;visibility:hidden;transform:translateX(34px) scale(.985);transition:opacity .52s ease,transform .52s ease,visibility .52s}.upcoming-slide:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,17,38,.25),transparent 65%);z-index:-1}.upcoming-slide.active{opacity:1;visibility:visible;transform:none;z-index:1}.slide-copy{min-width:0;position:relative;z-index:2}.slide-copy .eyebrow{color:#fff;opacity:.8;margin-bottom:10px}.slide-copy h2{font:400 clamp(1.8rem,3vw,2.65rem)/1.05 Georgia,serif;letter-spacing:-.03em;margin:0 0 14px;text-shadow:0 3px 18px rgba(10,16,36,.18)}.slide-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px}.slide-meta span{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;font-weight:750;color:rgba(255,255,255,.9)}.slide-meta svg{width:15px;height:15px}.slide-note{max-width:590px;margin:13px 0 0;color:rgba(255,255,255,.75);font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slide-details{display:inline-flex;align-items:center;gap:7px;margin-top:19px;border:1px solid rgba(255,255,255,.28);border-radius:11px;padding:9px 12px;background:rgba(255,255,255,.11);backdrop-filter:blur(9px);color:#fff;font-size:.7rem;font-weight:780;transition:.18s}.slide-details:hover{background:#fff;color:#30365d;transform:translateY(-1px)}.slide-details svg{width:15px;height:15px}
.slide-art{position:relative;height:190px;display:grid;place-items:center}.art-icon{width:116px;height:116px;border-radius:34px;display:grid;place-items:center;background:rgba(255,255,255,.17);border:1px solid rgba(255,255,255,.35);box-shadow:0 25px 45px rgba(13,20,43,.18),inset 0 1px 0 rgba(255,255,255,.25);backdrop-filter:blur(12px);transform:rotate(4deg)}.art-icon svg{width:68px;height:68px;stroke-width:1.35}.art-sparkle{position:absolute;right:26px;top:10px;width:35px;height:35px;color:#fff;opacity:.85}.art-sparkle svg{width:100%;height:100%}.art-orbit{position:absolute;border:1px solid rgba(255,255,255,.24);border-radius:50%}.art-orbit.orbit-a{width:176px;height:176px}.art-orbit.orbit-b{width:220px;height:110px;transform:rotate(-22deg)}.slide-art-heart .art-icon{border-radius:50% 50% 46% 46%}.slide-art-cake .art-icon{transform:rotate(-3deg)}.slide-art-candle .art-icon{background:rgba(255,224,160,.18)}.slide-countdown{position:absolute;right:0;bottom:3px;min-width:72px;border-radius:18px;padding:10px 12px;text-align:center;background:rgba(17,24,49,.46);border:1px solid rgba(255,255,255,.24);backdrop-filter:blur(9px)}.slide-countdown strong{display:block;font:400 1.75rem/1 Georgia,serif}.slide-countdown span{display:block;margin-top:4px;font-size:.52rem;font-weight:850;letter-spacing:.16em}.slider-empty{grid-template-columns:1fr 220px}.slider-empty>div:first-child>p:last-child{color:rgba(255,255,255,.76)}.slider-empty .slide-art>svg{width:90px;height:90px;opacity:.8}
.slider-arrow,.slider-toggle{position:absolute;z-index:5;display:grid;place-items:center;border:1px solid rgba(255,255,255,.24);background:rgba(21,28,55,.38);color:#fff;backdrop-filter:blur(10px);transition:.18s}.slider-arrow{top:50%;width:40px;height:40px;border-radius:50%;transform:translateY(-50%)}.slider-arrow:hover,.slider-toggle:hover{background:rgba(255,255,255,.95);color:#343a6c}.slider-arrow:disabled,.slider-toggle:disabled{opacity:.32;cursor:default}.slider-prev{left:16px}.slider-next{right:16px}.slider-arrow svg,.slider-toggle svg{width:17px;height:17px}.slider-controls{position:absolute;z-index:5;left:0;right:0;bottom:15px;display:flex;justify-content:center;align-items:center;pointer-events:none}.slider-dots{display:flex;align-items:center;gap:7px;pointer-events:auto}.slider-dot{width:8px;height:8px;padding:0;border:0;border-radius:10px;background:rgba(255,255,255,.42);transition:.22s}.slider-dot.active{width:27px;background:#fff}.slider-toggle{pointer-events:auto;right:17px;bottom:-4px;width:30px;height:30px;border-radius:9px}
@media(max-width:720px){.upcoming-slider,.slider-stage{min-height:300px}.upcoming-slide{grid-template-columns:minmax(0,1fr) 145px;padding:30px 58px 52px}.slide-copy h2{font-size:1.75rem}.slide-art{height:160px}.art-icon{width:94px;height:94px;border-radius:28px}.art-icon svg{width:53px;height:53px}.art-orbit.orbit-a{width:135px;height:135px}.art-orbit.orbit-b{width:165px;height:88px}.slide-countdown{right:-5px;bottom:0}.slide-note{max-width:360px}}
@media(max-width:520px){.upcoming-slider,.slider-stage{min-height:350px}.upcoming-slide{display:block;padding:30px 48px 58px}.slide-copy{position:relative;z-index:2}.slide-copy h2{max-width:78%;font-size:1.65rem}.slide-meta{display:grid;gap:7px}.slide-note{max-width:78%;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.slide-art{position:absolute;right:18px;top:28px;width:100px;height:130px;opacity:.9}.art-icon{width:76px;height:76px;border-radius:23px}.art-icon svg{width:43px;height:43px}.art-orbit.orbit-a{width:105px;height:105px}.art-orbit.orbit-b{width:125px;height:65px}.art-sparkle{right:0;width:25px;height:25px}.slide-countdown{right:5px;bottom:-28px;min-width:62px;padding:8px}.slide-countdown strong{font-size:1.4rem}.slider-arrow{width:34px;height:34px}.slider-prev{left:8px}.slider-next{right:8px}.slider-toggle{right:12px}.slider-empty{padding-right:120px}.slider-empty .slide-art{display:grid}}
@media(prefers-reduced-motion:reduce){.upcoming-slide,.slider-dot{transition:none}}

/* Passwortstatus in der Benutzerverwaltung – Version 3.1 */
.user-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-card:nth-child(4){background:linear-gradient(145deg,#fff,#e7f4ff)}.stat-card:nth-child(4) strong{color:#2471ce}.user-row{grid-template-columns:minmax(250px,1.6fr) auto auto auto auto}.password-status{display:inline-flex;align-items:center;gap:6px;width:max-content;border-radius:20px;padding:7px 10px;font-size:.67rem;font-weight:780;white-space:nowrap}.password-status svg{width:14px;height:14px}.password-status.assigned{color:#087d64;background:#e4f8f1;border:1px solid #c3eddf}.password-status.missing{color:#b35b21;background:#fff0e4;border:1px solid #ffd9bd}#passwordHelp{line-height:1.4}
@media(max-width:1024px){.user-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.user-row{grid-template-columns:minmax(0,1fr) auto}.user-row>.password-status{grid-column:1;margin-left:50px}.user-row>.button{grid-column:2;grid-row:1/3}}
@media(max-width:720px){.user-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.user-stats{grid-template-columns:1fr}.user-row{gap:10px}.user-row>.user-identity{grid-column:1/-1}.user-row>.password-status{grid-column:1;margin-left:0}.user-row>.button{grid-column:2;grid-row:2}}

/* Moderne Seitenköpfe – Designversion 3.2 */
.page-heading{position:relative;isolation:isolate;overflow:hidden;align-items:center;margin-bottom:30px;padding:25px 28px 24px 32px;border:1px solid #dce4f5;border-radius:22px;background:linear-gradient(118deg,rgba(255,255,255,.98),rgba(241,243,255,.96) 58%,rgba(232,249,247,.96));box-shadow:0 14px 38px rgba(53,67,130,.075)}.page-heading:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:5px;border-radius:0 6px 6px 0;background:linear-gradient(180deg,#635bff,#a64fdf 53%,#12b8b0)}.page-heading:after{content:"";position:absolute;z-index:-1;width:210px;height:210px;right:-78px;top:-115px;border-radius:50%;background:radial-gradient(circle,rgba(99,91,255,.14),rgba(18,184,176,.055) 52%,transparent 70%)}.page-heading>div{position:relative;z-index:1;min-width:0}.page-heading h1{font-family:"Aptos Display","Segoe UI Variable Display","Segoe UI",sans-serif;font-size:clamp(2.15rem,4vw,3.15rem);font-weight:760;line-height:1;letter-spacing:-.047em;color:#252a50;margin:0 0 10px}.page-heading .eyebrow{display:inline-flex;align-items:center;width:max-content;margin-bottom:11px;padding:6px 9px;border-radius:8px;background:#ebeaff;color:#554de0;font-family:"Segoe UI Variable Text","Segoe UI",sans-serif;font-size:.61rem;letter-spacing:.145em}.page-heading .eyebrow:before{content:"";width:6px;height:6px;margin-right:7px;border-radius:50%;background:linear-gradient(145deg,#635bff,#13b5af);box-shadow:0 0 0 3px rgba(99,91,255,.1)}.page-heading p:last-child{max-width:650px;color:#64708d;font-size:.8rem;line-height:1.5}.page-heading>.button{position:relative;z-index:2;border-radius:13px;padding:13px 18px}
@media(max-width:720px){.page-heading{align-items:flex-start;padding:22px 22px 21px 26px;border-radius:18px}.page-heading h1{font-size:2.25rem}.page-heading:after{right:-110px}.page-heading>.button{align-self:center}}
@media(max-width:430px){.page-heading{display:grid;gap:18px;padding:20px 18px 18px 22px}.page-heading h1{font-size:2rem}.page-heading>.button{width:100%}}

/* Illustrationen und Detailgestaltung – Designversion 3.3 */
.page-heading-illustrated{min-height:176px}.page-heading-illustrated .heading-main{flex:1}.page-heading-illustrated:after{width:280px;height:280px;right:35px;top:-170px}.heading-chips{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:15px}.heading-chips span{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid rgba(99,91,255,.12);border-radius:20px;background:rgba(255,255,255,.66);color:#58627f;font-size:.63rem;font-weight:740;box-shadow:0 4px 12px rgba(56,68,126,.045)}.heading-chips svg{width:13px;height:13px;color:#625be6}.heading-visual{position:relative!important;z-index:1!important;width:170px;height:126px;min-width:170px!important;flex:none;margin:0 6px;display:grid;place-items:center}.heading-visual .visual-orbit{position:absolute;width:118px;height:118px;border:1px dashed rgba(99,91,255,.24);border-radius:50%;animation:heading-orbit 24s linear infinite}.visual-card{position:absolute;display:grid;place-items:center;width:76px;height:76px;border:1px solid rgba(255,255,255,.82);border-radius:23px;box-shadow:0 16px 34px rgba(58,57,136,.17);backdrop-filter:blur(8px)}.visual-card svg{width:38px;height:38px;stroke-width:1.5}.visual-card.card-back{transform:translate(-33px,9px) rotate(-11deg);background:linear-gradient(145deg,#dff9f5,#bcefe7);color:#078d82}.visual-card.card-front{transform:translate(24px,-12px) rotate(8deg);background:linear-gradient(145deg,#efedff,#d9d5ff);color:#5b52e0}.visual-badge{position:absolute;right:14px;bottom:12px;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#ff7aa0,#f24e80);color:#fff;box-shadow:0 9px 20px rgba(240,78,128,.28)}.visual-badge svg{width:19px;height:19px}.heading-types .visual-card.card-back{background:linear-gradient(145deg,#fff2d8,#ffd99b);color:#c47a10}.heading-types .visual-card.card-front{background:linear-gradient(145deg,#f0eaff,#d9cbff);color:#764fd0}.heading-types .visual-badge{background:linear-gradient(145deg,#ff729a,#e84278)}.heading-users .visual-card.card-back{background:linear-gradient(145deg,#e4f8f1,#bfeadd);color:#078063}.heading-users .visual-card.card-front{background:linear-gradient(145deg,#e7efff,#cbdcff);color:#3b65c5}.heading-users .visual-badge{background:linear-gradient(145deg,#6d65ff,#4941d8)}
@keyframes heading-orbit{to{transform:rotate(360deg)}}
.field-caption{display:inline-flex;align-items:center;gap:6px}.field-caption svg{width:14px;height:14px;color:#625be6}.list-filter-card{position:relative;overflow:hidden;background:linear-gradient(120deg,#fff,#f5f7ff 62%,#edfaf8)}.list-filter-card:after{content:"";position:absolute;right:-22px;bottom:-38px;width:100px;height:100px;border-radius:50%;background:rgba(18,184,176,.08);pointer-events:none}.list-period-navigation{padding:4px 2px}.list-period-navigation>strong{font-family:"Aptos Display","Segoe UI Variable Display","Segoe UI",sans-serif;font-weight:720;color:#30365d}.result-count{color:#514bd7;background:#eeedff;border-color:#dcd8ff}
.export-bar>div:first-child{position:relative;padding-left:43px}.export-bar>div:first-child:before{content:"";position:absolute;left:2px;top:50%;width:31px;height:31px;transform:translateY(-50%);border-radius:10px;background:linear-gradient(145deg,#6b63fa,#3e83dd);box-shadow:0 7px 16px rgba(82,90,218,.2)}.export-bar>div:first-child:after{content:"↓";position:absolute;left:12px;top:50%;transform:translateY(-54%);color:#fff;font-size:1.05rem;font-weight:800}
.inline-form.card{position:relative;overflow:hidden;border-color:#dcdff2;box-shadow:0 14px 36px rgba(58,68,126,.07)}.inline-form.card:before{content:"";position:absolute;right:-42px;top:-58px;width:130px;height:130px;border-radius:50%;background:radial-gradient(circle,rgba(118,79,208,.13),transparent 68%);pointer-events:none}.types-grid .type-card{min-height:105px;background:linear-gradient(145deg,#fff 25%,color-mix(in srgb,var(--type-color) 6%,white));border-color:color-mix(in srgb,var(--type-color) 16%,#e5e1ec)}.types-grid .type-card:before{content:"";position:absolute;width:75px;height:75px;right:-36px;top:-34px;border-radius:50%;background:color-mix(in srgb,var(--type-color) 9%,transparent)}.type-icon{box-shadow:0 8px 19px color-mix(in srgb,var(--type-color) 15%,transparent)}.info-note strong{display:flex;align-items:center;gap:7px}.info-note strong:before{content:"✦";display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:#fff;color:#625be6;box-shadow:0 5px 12px rgba(64,71,137,.09)}
.user-stats .stat-card{display:flex;align-items:center;gap:14px;min-height:102px;padding:17px 18px}.user-stats .stat-card:after{width:72px;height:72px;right:-30px;top:-30px}.stat-icon{position:relative;z-index:1;width:42px;height:42px;display:grid;place-items:center;flex:none;border-radius:13px;background:rgba(255,255,255,.72);box-shadow:0 8px 20px rgba(50,61,121,.09)}.stat-icon svg{width:21px;height:21px}.stat-card:nth-child(1) .stat-icon{color:#635bff}.stat-card:nth-child(2) .stat-icon{color:#079a83}.stat-card:nth-child(3) .stat-icon{color:#d88716}.stat-card:nth-child(4) .stat-icon{color:#2471ce}.user-stats .stat-card strong{font-family:"Aptos Display","Segoe UI Variable Display","Segoe UI",sans-serif;font-weight:760}.user-table-card{box-shadow:0 16px 40px rgba(52,67,128,.075)}.user-table-head{display:grid;grid-template-columns:minmax(250px,1.6fr) auto auto auto auto;gap:20px;align-items:center;padding:11px 22px;background:linear-gradient(90deg,#f0f2ff,#edf9f7);border-bottom:1px solid #dce4f2;color:#68738d;font-size:.6rem;font-weight:820;letter-spacing:.09em;text-transform:uppercase}.user-table-head span:not(:first-child){min-width:82px}.user-row{transition:background .18s,transform .18s}.user-row:hover{background:#fafbff}.user-identity .avatar{outline:3px solid rgba(99,91,255,.08)}
@media(max-width:1100px){.heading-visual{width:135px;min-width:135px!important;transform:scale(.88)}.page-heading-illustrated>.button{padding-left:13px;padding-right:13px}.user-table-head{display:none}}
@media(max-width:850px){.heading-visual{display:none}.page-heading-illustrated{min-height:0}.page-heading-illustrated:after{right:-90px}.heading-chips{margin-top:12px}}
@media(max-width:720px){.user-stats .stat-card{min-height:88px}.export-bar>div:first-child{padding-left:43px}}
@media(max-width:430px){.heading-chips{gap:6px}.heading-chips span{font-size:.58rem}.page-heading-illustrated>.button{width:100%}.user-stats .stat-card{display:flex}.export-bar>div:first-child{padding-left:43px}}
@media(prefers-reduced-motion:reduce){.heading-visual .visual-orbit{animation:none}}

/* Kompaktes Login für niedrige Fenster – Version 3.3.1 */
.login-shell{height:100dvh;min-height:0;overflow:hidden}.login-panel{min-height:0;height:100dvh;padding:clamp(18px,4vh,38px)}.login-card{padding:clamp(24px,4vh,34px);max-height:calc(100dvh - 36px);overflow:auto;scrollbar-width:thin;scrollbar-color:#c7c1e8 transparent}.login-card .mobile-brand{margin-bottom:clamp(18px,4vh,32px)}.login-card>label{margin-top:clamp(13px,2.5vh,20px)}.login-card .button.wide{margin-top:clamp(18px,3.5vh,26px)}
@media(max-width:1024px){.login-panel{min-height:0;height:100dvh;padding:18px}.login-card{width:min(400px,100%);padding:clamp(22px,3.5vh,30px);border-radius:22px}.mobile-brand{margin-bottom:clamp(18px,4vh,30px)}}
@media(max-height:700px){.login-panel{padding:14px}.login-card{padding:22px 26px;max-height:calc(100dvh - 28px)}.login-card .mobile-brand{margin-bottom:17px}.login-card .eyebrow{margin-bottom:7px}.login-card h2{font-size:2rem;margin-bottom:7px}.login-card>p.muted{font-size:.78rem;margin:0}.login-card>label{margin-top:13px;gap:6px}.login-card input{padding:11px 13px}.login-card .reveal{top:3px}.login-card .button.wide{margin-top:18px;min-height:42px}}
@media(max-height:560px){.login-card{padding:17px 22px}.login-card .mobile-brand{margin-bottom:11px}.login-card .mobile-brand .brand-mark{width:33px;height:33px}.login-card .eyebrow{font-size:.62rem;margin-bottom:5px}.login-card h2{font-size:1.65rem}.login-card>p.muted{font-size:.72rem}.login-card>label{margin-top:9px;font-size:.7rem}.login-card input{padding:9px 11px}.login-card .button.wide{margin-top:13px;min-height:38px;padding:9px 14px}}
@media(max-width:430px){.login-panel{padding:10px}.login-card{max-height:calc(100dvh - 20px);padding-left:20px;padding-right:20px}}
