:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#eef2ff;background:#0b1020;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top,#18213e,#0b1020 45%);min-height:100vh}.wrap{max-width:1120px;margin:auto;padding:20px}.top{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.brand h1{margin:0;font-size:clamp(26px,5vw,42px)}.muted{color:#aeb7d0}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.card{grid-column:span 6;background:#111831dd;border:1px solid #273252;border-radius:20px;padding:18px;box-shadow:0 12px 30px #0004}.wide{grid-column:span 12}.third{grid-column:span 4}.hero{background:linear-gradient(135deg,#202c55,#171e39)}h2,h3{margin-top:0}button,.btn,input,select,textarea{font:inherit;border-radius:12px;border:1px solid #354268;background:#151d38;color:#fff;padding:11px 13px}.btn,button{cursor:pointer;font-weight:700;text-decoration:none;display:inline-block}.primary{background:#e9edff;color:#10162a}.danger{background:#542339}.ok{background:#183d32}.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.item{padding:12px 0;border-top:1px solid #26304d}.item:first-of-type{border-top:0}.badge{font-size:12px;border:1px solid #3c496e;border-radius:999px;padding:4px 8px}.big{font-size:26px;font-weight:800}.brain textarea{width:100%;min-height:90px;margin-bottom:8px}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.formgrid input,.formgrid select{width:100%}.footer{text-align:center;color:#8792ad;padding:28px 10px 50px;font-size:13px}.nav{display:flex;gap:8px;overflow:auto;padding-bottom:8px}.nav a{white-space:nowrap}.alert{border-color:#76563c;background:#2a211a}.critical{border-color:#873c52;background:#2d1821}@media(max-width:760px){.card,.third{grid-column:span 12}.wrap{padding:12px}.top{align-items:flex-start;flex-direction:column}.formgrid{grid-template-columns:1fr}.desktop-hide{display:block}}@media(min-width:761px){.desktop-hide{display:none}}
.userbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.auth-page{display:grid;place-items:center;min-height:100vh;padding:20px}.auth-wrap{width:min(100%,460px)}.auth-card{background:#111831ee;border:1px solid #273252;border-radius:24px;padding:28px;box-shadow:0 18px 50px #0007}.auth-card h1{margin:.2rem 0}.auth-logo{font-size:52px}.auth-form{display:grid;gap:14px;margin-top:24px}.auth-form label{display:grid;gap:7px;font-weight:700}.auth-form input{width:100%}.auth-submit{width:100%;margin-top:4px}.auth-error{border:1px solid #873c52;background:#2d1821;border-radius:12px;padding:12px;margin:16px 0}.auth-note{font-size:13px;color:#aeb7d0;margin-top:18px;line-height:1.5}@media(max-width:760px){.userbar{justify-content:flex-start}.auth-card{padding:20px}}
.brain-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.brain-head h2{margin-bottom:6px}.brain-actions{margin-top:4px}.voice-btn{background:#242f59}.voice-btn.listening{background:#60314a;border-color:#a95b7d;animation:pulseMic 1.2s infinite}.speech-status{font-size:13px;margin-top:8px;line-height:1.45}.brain-card{margin-top:14px;padding:16px;border:1px solid #2c395e;border-radius:16px;background:#0d1429}.brain-meta{margin-bottom:9px}.brain-raw{font-size:18px;font-weight:700;line-height:1.45;margin:8px 0 14px}.brain-sort-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.brain-sort-form label{display:grid;gap:6px;font-size:13px;color:#b9c2da}.brain-sort-form input,.brain-sort-form select{width:100%}.brain-sort-form .row,.brain-sort-form .sort-warning,.brain-sort-form .checkline{grid-column:1/-1}.checkline{display:flex!important;align-items:center;gap:9px!important;color:#d7def1!important}.checkline input{width:auto!important}.sort-warning{border:1px solid #76563c;background:#2a211a;border-radius:12px;padding:10px;color:#ead5bb;font-size:13px}.archive-form{margin-top:8px}.empty-note{padding:16px;border:1px dashed #344265;border-radius:14px;color:#aeb7d0;margin-top:12px}@keyframes pulseMic{0%,100%{box-shadow:0 0 0 0 rgba(169,91,125,.25)}50%{box-shadow:0 0 0 8px rgba(169,91,125,0)}}@media(max-width:760px){.brain-head{flex-direction:column}.brain-sort-form{grid-template-columns:1fr}.brain-sort-form .row,.brain-sort-form .sort-warning,.brain-sort-form .checkline{grid-column:auto}.brain-actions button{flex:1 1 100%}.brain-raw{font-size:16px}}
/* 1.2.0 – Kalender, Schlafplanung und Zeitkonto */
.calendar-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.calendar-title{font-size:18px;font-weight:800;min-width:145px;text-align:center}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-weekdays{margin:14px 0 6px;color:#aeb7d0;font-size:12px;font-weight:800;text-align:center}.calendar-day{min-height:112px;border:1px solid #273252;background:#0d1429;border-radius:13px;padding:8px;overflow:hidden}.calendar-day.empty{opacity:.25;background:transparent;border-style:dashed}.calendar-day.today{border-color:#8798d9;box-shadow:inset 0 0 0 1px #8798d9}.day-number{font-weight:900;margin-bottom:6px}.cal-event{font-size:11px;line-height:1.25;padding:5px 6px;border-radius:7px;margin:4px 0;overflow:hidden;text-overflow:ellipsis}.shift-planned{background:#1c3152}.shift-sick{background:#4b2936}.shift-vacation{background:#374321}.shift-off{background:#303344}.task-event{background:#222b48}.tiny{font-size:11px}.planning-card{background:linear-gradient(135deg,#171f3c,#181730)}.timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:16px 0}.timeline-step{display:flex;gap:9px;align-items:flex-start;background:#0c1328;border:1px solid #2d395d;border-radius:14px;padding:12px}.timeline-step>span{font-size:25px}.timeline-step b,.timeline-step small{display:block}.timeline-step small{color:#aeb7d0;margin-top:4px;line-height:1.35}.alert-box{border:1px solid #76563c;background:#2a211a;border-radius:12px;padding:12px;color:#ead5bb}.settings-form label{display:grid;gap:6px;color:#b9c2da;font-size:13px}.account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.account-grid>div{background:#0d1429;border:1px solid #2d395d;border-radius:14px;padding:12px}.account-grid small,.account-grid b{display:block}.account-grid b{font-size:22px;margin-top:3px}.account-grid .minus{border-color:#67394b}.account-grid .plus{border-color:#2c604f}.stat-badges{margin:12px 0}.shift-item{display:flex;justify-content:space-between;gap:12px;align-items:center}.small-input{width:110px}.med-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.med-item{border:1px solid #26304d;border-radius:14px;padding:13px}.med-item:first-of-type{border-top:1px solid #26304d}
@media(max-width:760px){.calendar-head{flex-direction:column}.calendar-grid{gap:3px}.calendar-day{min-height:78px;padding:5px;border-radius:9px}.day-number{font-size:12px}.cal-event{font-size:9px;padding:4px}.timeline{grid-template-columns:1fr}.account-grid{grid-template-columns:1fr 1fr}.account-grid>div:last-child{grid-column:1/-1}.shift-item{align-items:flex-start;flex-direction:column}.med-grid{grid-template-columns:1fr}.calendar-title{min-width:auto}.calendar-weekdays{font-size:10px}}

/* 1.2.1 – iPhone/PWA hotfix */
html{background:#0b1020;min-height:100%;overscroll-behavior-y:none}
body{min-height:100dvh;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);padding-bottom:env(safe-area-inset-bottom)}
.pwa-browser-hint{display:none;margin:0 0 14px;padding:12px 14px;border:1px solid #55689e;border-radius:14px;background:#16213f;color:#e7ecff;line-height:1.4}
.pwa-browser-hint b{display:block;margin-bottom:3px}
@media(max-width:760px){
  .wrap{width:100%;max-width:100%;padding:12px max(12px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overflow-x:hidden}
  .card{min-width:0;padding:16px;border-radius:18px}
  .row>*{max-width:100%}
  .item>.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
  .item>.row>*{width:100%;text-align:center}
  .item>.row>*:last-child:nth-child(3){grid-column:1/-1}
  input,select,textarea,button,.btn{max-width:100%}
  .top{padding-top:max(4px,env(safe-area-inset-top))}
}
@media (display-mode: standalone){.pwa-browser-hint{display:none!important}}
