*{box-sizing:border-box;margin:0;padding:0;}

@font-face{font-family:'Rajdhani';src:url('../../fonts/Rajdhani-Regular.ttf') format('truetype');font-weight:400;}
@font-face{font-family:'Rajdhani';src:url('../../fonts/Rajdhani-Bold.ttf') format('truetype');font-weight:700;}
@font-face{font-family:'Ubuntu';src:url('../../fonts/Ubuntu-Regular.ttf') format('truetype');font-weight:400;}
@font-face{font-family:'Ubuntu';src:url('../../fonts/Ubuntu-Bold.ttf') format('truetype');font-weight:700;}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Regular.ttf') format('truetype');font-weight:400;}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Bold.ttf') format('truetype');font-weight:700;}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Black.ttf') format('truetype');font-weight:900;}
body{font-family:'Ubuntu',sans-serif;background:#212830;color:#E4E4E4;}

*{box-sizing:border-box;margin:0;padding:0;}

@font-face{font-family:'Rajdhani';src:url('../../fonts/Rajdhani-Regular.ttf') format('truetype');font-weight:400;}
@font-face{font-family:'Rajdhani';src:url('../../fonts/Rajdhani-Bold.ttf') format('truetype');font-weight:700;}
@font-face{font-family:'Ubuntu';src:url('../../fonts/Ubuntu-Regular.ttf') format('truetype');font-weight:400;}
@font-face{font-family:'Ubuntu';src:url('../../fonts/Ubuntu-Bold.ttf') format('truetype');font-weight:700;}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Regular.ttf') format('truetype');font-weight:400;}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Bold.ttf') format('truetype');font-weight:700;}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Black.ttf') format('truetype');font-weight:900;}

body{font-family:'Ubuntu',sans-serif;background:#212830;color:#E4E4E4;}
.dashboard{display:flex;min-height:100vh;}
.sidebar{width:300px;background:#27313B;padding:30px 20px;display:flex;flex-direction:column;gap:26px;border-right:1px solid rgba(255,255,255,0.06);}
.sidebar-header{display:flex;align-items:center;gap:12px;margin-bottom:18px;}
.sidebar-header .logo{width:55px;height:auto;}
.sidebar-logo-link{display:flex;align-items:center;gap:12px;text-decoration:none;}
.logo-text{display:flex;flex-direction:column;line-height:1;}
.logo-title{font-family:'Rajdhani',sans-serif;font-size:22px;font-weight:700;color:#ffffff;letter-spacing:1px;}
.logo-sub{font-family:'Rajdhani',sans-serif;font-size:12px;font-weight:700;color:#FF6249;letter-spacing:2px;}
.menu-group{display:flex;flex-direction:column;}
.menu-title{display:flex;align-items:center;justify-content:space-between;font-family:'Rajdhani',sans-serif;font-size:18px;font-weight:700;color:#ffffff;cursor:pointer;padding:10px 12px;border-radius:8px;}
.menu-title:hover{background:#27313B;}
.menu-title-left{display:flex;align-items:center;gap:10px;}
.menu-title-left svg{width:18px;height:18px;fill:#FF6249;}
.menu-arrow{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid #888;}
.menu-group.open .menu-arrow{transform:rotate(180deg);}
.menu-items{display:none;flex-direction:column;margin-top:6px;}
.menu-group.open .menu-items{display:flex;}
.menu-items a{padding:10px 12px;border-radius:8px;font-size:14px;color:#E4E4E4;text-decoration:none;transition:background .2s;}
.menu-items a:hover{background:#27313B;}
.menu-items a.active{background:transparent;color:#FF6249;font-weight:700;}
.menu-items span{padding:10px 12px;font-size:13px;opacity:0.45;}
.menu-group.disabled{pointer-events:none;opacity:0.35;}
.content{flex:1;padding:60px 48px;}
.dash-title{font-family:'Rajdhani',sans-serif;font-size:36px;font-weight:700;margin-bottom:26px;}
.dash-empty{opacity:.7;}



.event-actions{display:flex;align-items:center;gap:10px;}
.btn-danger{padding:0;border:none;background:transparent;color:#FF6249;font-size:18px;cursor:pointer;}
.btn-danger:hover{color:#ff7a64;}
.dash-card{max-width:1100px;background:#27313B;border-radius:16px;padding:32px;border-top:1px solid #FF6249;}
.event-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;background:#2B3641;border-radius:12px;border-bottom:1px solid #FF6249;}.event-row:hover{background:#2F3B47;}
.event-list ul{list-style:none;display:flex;flex-direction:column;gap:16px;margin-top:10px;}
.event-main{display:flex;flex-direction:column;gap:4px;}
.event-name{font-size:17px;font-weight:700;color:#ffffff;}
.event-id{font-size:12px;color:#b6bcc4;}
.event-id code{font-family:ui-monospace,Menlo,Consolas,monospace;color:#FF6249;background:rgba(255,98,73,0.08);padding:2px 6px;border-radius:4px;}
.delete-form{margin:0;}
.btn-primary{padding:10px 20px;border-radius:999px;background:#FF6249;color:#fff;font-size:13px;font-weight:700;text-decoration:none;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;}
.btn-primary:hover{filter:brightness(1.05);}


.dash-card-narrow{max-width:900px;margin:0 auto;}
.dash-title-center{text-align:center;}
.event-form{display:flex;flex-direction:column;gap:18px;}
.form-group select{padding:12px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#212830;color:#E4E4E4;font-size:14px;}
.form-group select:focus{outline:none;border-color:#FF6249;}
.form-group{display:flex;flex-direction:column;gap:6px;}
.form-group label{font-size:13px;font-weight:700;}
.form-group input{padding:12px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:#212830;color:#E4E4E4;font-size:14px;}
.form-group input:focus{outline:none;border-color:#FF6249;}
.form-hint{font-size:12px;opacity:.6;}
.form-actions{margin-top:20px;display:flex;justify-content:center;}


.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:1200;}
.modal.open{display:flex;}
.modal-overlay{position:absolute;inset:0;background:rgba(0,0,0,.65);}
.modal-box{position:relative;width:520px;max-width:calc(100% - 40px);background:#27313B;border-radius:16px;border-top:2px solid #FF6249;box-shadow:0 25px 60px rgba(0,0,0,.55);animation:modalIn .18s ease;}
.modal-head{padding:18px 22px;font-family:'Rajdhani',sans-serif;font-size:18px;font-weight:700;color:#ffffff;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;}
.modal-close{background:none;border:none;color:#FF6249;font-size:22px;cursor:pointer;}
.modal-close:hover{color:#ff7a64;}
.modal-body{padding:24px 26px;}
.modal-foot{padding:16px 22px;border-top:1px solid rgba(255,255,255,.06);display:flex;justify-content:flex-end;gap:12px;}
@keyframes modalIn{from{transform:translateY(8px) scale(.97);opacity:0;}to{transform:translateY(0) scale(1);opacity:1;}}

/*******KALKULATION****************/

.planner-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:20px;}
.planner-box{background:#212830;border-radius:16px;padding:32px;box-shadow:0 8px 24px rgba(0,0,0,.35);}
.planner-title{font-family:'Rajdhani',sans-serif;font-size:26px;font-weight:700;margin-bottom:14px;color:#FF6249;}
.planner-row{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;}
.planner-row label{font-size:13px;font-weight:700;color:#E4E4E4;}
.planner-input{padding:10px 12px;border-radius:8px;border:1px solid rgba(255,255,255,0.25);background:#212830;color:#E4E4E4;font-size:14px;}
.planner-input:focus{outline:none;border-color:#FF6249;}
.planner-list{display:flex;flex-direction:column;gap:8px;margin-top:16px;}
.planner-row-line{position:relative;display:flex;align-items:center;justify-content:space-between;padding:10px 44px 10px 14px;background:#2a303a;border-radius:6px;font-size:14px;white-space:nowrap;}
.planner-row-line.end{margin-top:8px;}
.planner-col-left{font-weight:700;color:#ffffff;}
.planner-col-center{text-align:center;opacity:.9;}
.planner-col-right{display:flex;align-items:center;gap:6px;color:#9fd3ff;}
.planner-time-icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:14px;opacity:.7;}
.ko-list{list-style:none;margin:8px 0 0 0;padding:0;display:flex;flex-direction:column;gap:8px;}
.ko-list li{position:relative;padding:10px 44px 10px 14px;background:#2a303a;border-radius:6px;font-size:14px;line-height:1.35;}
.ko-list li::after{content:"⏱";position:absolute;right:14px;top:50%;transform:translateY(-50%);opacity:.6;font-size:14px;}
@media(max-width:900px){.planner-grid{grid-template-columns:1fr;}}

/**** KOSTEN *********************/

.cost-grid{display:flex;flex-direction:column;gap:10px;}
.cost-row{display:flex;justify-content:space-between;font-size:15px;}
.cost-label{color:#cfcfcf;}
.cost-value{font-weight:600;color:#ffffff;}
.cost-divider{height:1px;background:rgba(255,255,255,0.15);margin:10px 0;}
.cost-total{font-size:17px;}

.planner-inputs{display:flex;flex-direction:column;gap:16px;margin-bottom:20px;}
.planner-input-euro{display:flex;align-items:center;gap:8px;}
.planner-input-euro span{font-size:14px;font-weight:700;color:#E4E4E4;}
.planner-radio-group{display:flex;gap:16px;margin-top:6px;font-size:13px;color:#E4E4E4;}
.planner-radio-group label{display:flex;align-items:center;gap:6px;cursor:pointer;}
