.se-portal{--se:#b51fc2;--dark:#17171b;--muted:#6f6f78;font-family:inherit;max-width:1180px;margin:32px auto;color:var(--dark)}
.se-portal *{box-sizing:border-box}.se-login-box{max-width:520px;background:#fff;border:1px solid #eee;border-radius:18px;padding:32px;box-shadow:0 12px 40px rgba(0,0,0,.08)}
.se-login-box input[type=text],.se-login-box input[type=password]{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px}.se-login-box input[type=submit]{background:var(--se);color:#fff;border:0;padding:12px 20px;border-radius:8px;cursor:pointer}
.se-portal-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.se-portal h2{font-size:34px;margin:4px 0}.se-kicker{font-weight:800;letter-spacing:.08em;font-size:12px;color:var(--se)}
.se-btn{display:inline-block;border:0;background:var(--se);color:#fff!important;padding:11px 18px;border-radius:9px;text-decoration:none;font-weight:700;cursor:pointer}.se-btn-light{background:#f2f2f4;color:#222!important}
.se-notice{padding:14px 18px;border-radius:10px;background:#f5f5f7;margin:15px 0}.se-notice.success{background:#eef9f0;border-left:4px solid #2f9b4d}
.se-horse-card{background:#fff;border:1px solid #e8e8eb;border-radius:20px;margin:0 0 28px;overflow:hidden;box-shadow:0 10px 35px rgba(0,0,0,.06)}
.se-horse-title{display:flex;gap:22px;align-items:center;padding:24px;background:linear-gradient(135deg,#faf7fb,#fff)}.se-horse-title h3{font-size:30px;margin:4px 0 8px}.se-horse-photo{width:120px;height:120px;object-fit:cover;border-radius:16px}.se-badge{display:inline-block;background:#f1e6f3;padding:7px 10px;border-radius:8px;font-weight:700}
.se-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#eee}.se-data-item{background:#fff;padding:18px 22px;min-height:96px}.se-data-item span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700;margin-bottom:7px}.se-data-item strong{font-size:16px;line-height:1.45}
.se-change-box{margin:22px;border:1px solid #e6e1e8;border-radius:12px;overflow:hidden}.se-change-box summary{cursor:pointer;padding:16px 18px;font-weight:800;background:#faf8fb}.se-change-form{padding:18px}.se-change-form label{display:block;font-weight:700;margin-bottom:6px}.se-change-form select,.se-change-form textarea{width:100%;padding:11px;border:1px solid #d9d9df;border-radius:8px}
.se-history{padding:0 22px 22px}.se-history h4{margin:0 0 10px}.se-history-row{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:10px 0;border-top:1px solid #eee}.se-history-row small{color:var(--muted)}.se-history-row em{font-style:normal;font-size:12px;font-weight:800;padding:5px 8px;border-radius:20px}.status-offen{background:#fff3ce}.status-uebernommen{background:#e1f6e7}.status-abgelehnt{background:#fde2e2}
@media(max-width:700px){.se-portal{margin:18px 12px}.se-portal-head{align-items:flex-start}.se-portal h2{font-size:28px}.se-horse-title{align-items:flex-start}.se-horse-photo{width:84px;height:84px}.se-data-grid{grid-template-columns:1fr}.se-history-row{grid-template-columns:1fr auto}.se-history-row em{grid-column:1/-1;width:max-content}.se-horse-title h3{font-size:24px}}

/* Stallteam Tagesübersicht */
.se-staff-portal{max-width:1100px;margin:0 auto}
.se-progress{height:12px;background:#eee;border-radius:999px;overflow:hidden;margin:18px 0 6px}
.se-progress span{display:block;height:100%;background:linear-gradient(90deg,#6f2c91,#a43aa4);border-radius:999px}
.se-progress-label{font-size:13px;font-weight:700;text-align:right;color:#555}
.se-shift-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.se-shift-tabs a{display:inline-block;padding:9px 14px;border-radius:999px;text-decoration:none;background:#f1edf4;color:#4e3656;font-weight:700}
.se-shift-tabs a.active{background:#742b87;color:#fff}
.se-staff-alert{display:flex;gap:10px;align-items:center;justify-content:space-between;background:#fff4d9;border:1px solid #f0d382;border-radius:12px;padding:13px 16px;margin:15px 0 22px}
.se-staff-alert span{font-size:14px;color:#665322}
.se-task-list{display:grid;gap:16px}
.se-task-horse{background:#fff;border:1px solid #e8e3eb;border-radius:16px;overflow:hidden;box-shadow:0 6px 20px rgba(20,10,25,.04)}
.se-task-horse-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px 20px;background:#faf8fb;border-bottom:1px solid #eee8f0}
.se-task-horse-head h3{margin:2px 0 0;font-size:23px}
.se-task-note{max-width:52%;padding:10px 12px;background:#fff1f5;border-left:4px solid #a43aa4;border-radius:8px;font-size:14px}
.se-task-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px 18px;margin:0;border-bottom:1px solid #f0edf1}
.se-task-row:last-child{border-bottom:0}
.se-task-row.is-done{background:#f6faf6;opacity:.72}
.se-task-check{width:34px;height:34px;border:2px solid #7b3989;border-radius:9px;background:#fff;color:#fff;font-size:20px;line-height:28px;font-weight:800;cursor:pointer}
.se-task-row.is-done .se-task-check{background:#7b3989}
.se-task-content{display:flex;flex-direction:column;gap:3px}
.se-task-content strong{font-size:15px}
.se-task-content span{color:#444}
.se-task-row.is-done .se-task-content span{text-decoration:line-through}
.se-task-shift{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;background:#f1edf4;border-radius:999px;padding:6px 9px;color:#694376}
.se-task-meta{white-space:nowrap;color:#666}
@media(max-width:720px){
 .se-task-horse-head{display:block}.se-task-note{max-width:none;margin-top:12px}
 .se-task-row{grid-template-columns:40px 1fr;gap:8px 10px}.se-task-shift,.se-task-meta{grid-column:2}.se-task-meta{margin-top:-4px}
 .se-staff-alert{display:block}.se-staff-alert span{display:block;margin-top:5px}
}

.se-weekly-block{margin:24px 0 30px;padding:20px;border:1px solid #e6e6ea;border-radius:16px;background:#fff}.se-weekly-head h3{margin:2px 0 16px}.se-weekly-row.is-important{border-left:4px solid #a3158d}.se-weekly-row.is-important .se-task-content strong:after{content:" · WICHTIG";font-size:.72em;letter-spacing:.05em;color:#a3158d}.se-weekly-row{margin-bottom:10px}.se-weekly-row:last-child{margin-bottom:0}
