:root{--navy:#091a2b;--panel:#13283b;--ivory:#f5eddd;--muted:#b0bdc7;--gold:#e5bd77;--line:#e5bd7738}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{background:var(--navy);color:var(--ivory);-webkit-font-smoothing:antialiased;margin:0;font-family:Arial,Helvetica,sans-serif}button,input,textarea,select{font:inherit}a{color:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}:is(a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible){outline:2px solid var(--gold);outline-offset:4px}button svg,a svg{flex-shrink:0}.site-shell,.admin-shell{background-image:linear-gradient(90deg,#091a2b1f,#091a2b47),url(/images/festlicher-hintergrund.png);background-position:top;background-size:cover;background-attachment:fixed;min-height:100vh}.site-header{justify-content:space-between;align-items:center;gap:24px;max-width:1344px;margin:auto;padding:47px 54px 28px;display:flex}.logo{filter:brightness(0)saturate()invert(93%)sepia(9%)saturate(398%)hue-rotate(338deg)brightness(102%)contrast(93%);width:310px;height:auto;display:block}.header-date{letter-spacing:2.4px;color:var(--gold);align-items:center;gap:9px;font-size:10px;display:flex}.invitation-layout{grid-template-columns:1.12fr 1fr;align-items:start;gap:72px;max-width:1240px;margin:auto;padding:48px 34px 76px;display:grid}.invitation{padding-top:25px}.eyebrow{letter-spacing:2px;color:var(--gold);align-items:center;gap:12px;font-size:10px;font-weight:600;line-height:1.6;display:flex}.eyebrow>span{background:var(--gold);width:28px;height:1px;display:inline-block}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-1.9px;margin:29px 0 25px;font-family:Georgia,Times New Roman,serif;font-size:clamp(44px,4.4vw,64px);font-weight:400;line-height:1.11}h1 em{color:var(--gold);font-weight:400}.invitation-copy{color:#c4cdd3;max-width:440px;font-size:16px;line-height:1.8}.event-details{gap:28px;margin-top:38px;display:grid}.detail-row{gap:18px;display:flex}.detail-row>svg{color:var(--gold);flex-shrink:0;margin-top:3px}.detail-row>div{flex-direction:column;gap:7px;display:flex}.detail-label{letter-spacing:2px;color:var(--gold);margin-bottom:3px;font-size:9px;font-weight:600}.detail-row strong{font-size:16px;font-weight:500}.detail-row span:not(.detail-label){color:var(--muted);font-size:15px}.text-link{color:var(--gold);background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:12px;line-height:1.6;text-decoration:none;display:inline-flex}.text-link:hover{text-decoration:underline}.detail-row .text-link{margin-top:5px}.companions-note{border-top:1px solid var(--line);gap:17px;max-width:420px;margin:32px 0 29px;padding:24px 0 0;display:flex}.companions-note>svg{color:var(--gold);flex-shrink:0;margin-top:3px}.companions-note p{margin:0;font-size:15px;line-height:1.65}.companions-note span{color:var(--muted);font-size:14px}.signature{color:var(--gold);margin-top:28px;font-family:Georgia,serif;font-size:23px;font-style:italic}.signature span{color:var(--muted);margin-top:10px;font:12px Arial,sans-serif;display:block}.rsvp-panel{background:linear-gradient(135deg,#172e41fa,#0f2335fa);border:1px solid #e5bd7747;border-radius:5px;padding:30px 32px 24px;scroll-margin-top:24px;box-shadow:0 24px 65px #020a143b}.panel-topline{color:var(--gold);justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.panel-topline .eyebrow{letter-spacing:2.1px;font-size:9px}h2{letter-spacing:-.5px;margin:0 0 13px;font:400 34px/1.15 Georgia,serif}.form-intro{color:var(--muted);margin-bottom:26px;font-size:13px;line-height:1.75}.form-intro strong{color:var(--ivory);font-weight:500}form label,legend{margin:0 0 9px;font-size:12px;font-weight:500;line-height:1.5;display:block}label>span[aria-hidden],legend>span{color:var(--gold)}input,textarea,select{color:var(--ivory);background:#0b1c2d99;border:1px solid #486075;border-radius:3px;width:100%;padding:12px 13px;font-size:14px;transition:border-color .15s}input::placeholder,textarea::placeholder{color:#8e9ca9}input:focus,textarea:focus,select:focus{border-color:var(--gold)}textarea{resize:vertical;min-height:88px;line-height:1.6}fieldset{border:0;margin:23px 0;padding:0}.attendance-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.attendance-choice{cursor:pointer;color:var(--muted);border:1px solid #486075;border-radius:3px;justify-content:center;align-items:center;gap:8px;margin:0;padding:14px 7px;font-size:12px;display:flex;position:relative}.attendance-choice input{opacity:0;width:1px;height:1px;padding:0;position:absolute}.attendance-choice:has(input:focus-visible){outline:2px solid var(--gold);outline-offset:4px}.attendance-choice.selected{border-color:var(--gold);color:var(--gold);background:#e5bd7710}.optional{color:var(--muted);float:right;font-size:10px;font-weight:400}.primary-btn{color:#132337;background:linear-gradient(115deg,#edcd93,#dcb473);border:1px solid #f0d49f;border-radius:3px;justify-content:space-between;align-items:center;gap:15px;width:100%;min-height:49px;margin-top:22px;padding:16px 18px;font-size:13px;font-weight:600;display:flex}.primary-btn:hover:not(:disabled){background:#f0d49f}.privacy-note{color:#9aabb9;align-items:flex-start;gap:8px;margin:16px 0 0;font-size:10px;line-height:1.6;display:flex}.privacy-note svg{flex-shrink:0;margin-top:1px}.privacy-note a{color:#b5c2cb;text-underline-offset:3px;display:inline}.companions-fields{border-top:1px solid #ffffff12;margin-bottom:23px;padding-top:18px}.counter{width:154px;height:43px;margin:12px 0 17px;display:flex}.counter button{color:var(--ivory);background:#0b1c2d99;border:1px solid #486075;place-items:center;width:45px;display:grid}.counter input{-webkit-appearance:textfield;appearance:textfield;text-align:center;border-left:0;border-right:0;border-radius:0;width:64px;padding:7px}.counter input::-webkit-inner-spin-button{-webkit-appearance:none;appearance:none}.companion-input{margin:14px 0}.total{color:var(--gold);align-items:center;gap:8px;font-size:12px;line-height:1.5;display:flex}.error{color:#f7c1b0;background:#c76d4c15;border:1px solid #d99581;margin:15px 0;padding:12px;font-size:13px;line-height:1.6}.error .text-link{margin-top:10px;display:flex}.previous-link{color:var(--gold);text-align:left;background:0 0;border:0;align-items:center;gap:7px;margin:0 0 20px;padding:0;font-size:12px;display:flex}.site-footer{border-top:1px solid var(--line);color:#a5b1bd;justify-content:space-between;gap:16px;max-width:1240px;margin:auto;padding:24px 34px;font-size:10px;display:flex}.site-footer nav{gap:22px;display:flex}.site-footer a{align-items:center;gap:5px;text-decoration:none;display:inline-flex}.site-footer a:hover{color:var(--gold)}.data-notice{color:#a5b1bd;max-width:1172px;margin:auto;padding:0 0 25px;font-size:11px;line-height:1.8}.data-notice summary{cursor:pointer;font-size:10px;list-style:none}.data-notice p{max-width:800px;margin:15px 0}.mobile-jump{display:none}.success:focus{outline:none}.success-icon{border:1px solid var(--gold);width:55px;height:55px;color:var(--gold);border-radius:50%;place-items:center;margin:6px 0 25px;display:grid}.success h2{font-size:31px}.success>p,.change-link p{color:var(--muted);font-size:13px;line-height:1.7}.confirmation{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:24px 0;padding:20px 0;font-size:14px}.confirmation strong{color:var(--gold);font-weight:500}.confirmation ul{margin-bottom:0;padding-left:19px;line-height:1.9}.change-link{margin-bottom:25px}.change-link h3{font:22px Georgia,serif}.change-link input{margin-top:10px;font-size:10px}.secondary-btn{color:var(--ivory);background:0 0;border:1px solid #5c6b75;border-radius:3px;align-items:center;gap:8px;padding:11px 13px;font-size:12px;display:inline-flex}.secondary-btn:hover{border-color:var(--gold);color:var(--gold)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.loading{color:var(--muted);padding:60px 0;font-size:14px}.admin-shell{background-image:linear-gradient(#091a2b80,#091a2bf7),url(/images/festlicher-hintergrund.png)}.admin-main{max-width:1240px;margin:auto;padding:32px 34px 70px}.admin-main h1{margin-bottom:16px;font-size:52px}.admin-sub{color:var(--muted);font-size:14px}.admin-login{max-width:500px;margin-top:32px}.admin-login p{color:var(--muted);font-size:14px;line-height:1.7}.admin-toolbar{justify-content:space-between;align-items:center;gap:15px;margin:35px 0 22px;display:flex}.admin-toolbar>div{align-items:center;gap:10px;display:flex}.admin-protected{color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.icon-btn{color:var(--ivory);background:0 0;border:1px solid #5c6b75;border-radius:3px;place-items:center;padding:10px;display:grid}.stats{grid-template-columns:repeat(3,1fr);gap:18px;margin:20px 0 32px;display:grid}.stats>div{border:1px solid var(--line);background:#142b40b3;padding:26px;position:relative}.stats svg{color:var(--gold);position:absolute;top:27px;right:25px}.stats strong{color:var(--gold);margin-bottom:10px;font:42px Georgia,serif;display:block}.stats span{color:var(--muted);font-size:12px}.admin-list{border:1px solid var(--line);background:#12283bcf;padding:25px}.list-controls{justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.list-controls h2{white-space:nowrap;margin:0;font-size:25px}.list-controls small{color:var(--muted);margin-left:6px;font:12px Arial}.filters{gap:12px;display:flex}.search{position:relative}.search svg{color:var(--muted);position:absolute;top:13px;left:11px}.search input{padding-left:34px;font-size:12px}.filters select{width:auto;max-width:190px;font-size:12px}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;font-size:12px}th{color:var(--muted);border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:1px;padding:12px 15px;font-size:10px;font-weight:400}td{vertical-align:top;border-bottom:1px solid #ffffff0d;padding:20px 15px;line-height:1.7}td:first-child{min-width:175px}td strong{font-size:14px;font-weight:500}td ul{color:var(--muted);margin:6px 0 0;padding-left:16px}.message-cell{white-space:pre-wrap;overflow-wrap:anywhere;min-width:170px;max-width:250px;color:var(--muted)}.badge{border-radius:30px;padding:3px 10px;font-size:10px;display:inline-block}.badge.yes{color:#d0dbaf;background:#91ab5d21}.badge.no{color:#d5ad9b;background:#d5ad9b12}.empty-state{text-align:center;color:var(--muted);padding:55px 15px}.empty-state>svg{color:var(--gold);margin-bottom:15px}.empty-state h3{color:var(--ivory);font:23px Georgia}.empty-state p{font-size:13px}.admin-hint{color:var(--muted);margin-top:18px;font-size:11px;line-height:1.7}@media (min-width:1500px){.invitation-layout{padding-top:65px;padding-bottom:100px}.site-header{padding-top:60px}}@media (max-width:1000px){.invitation-layout{gap:35px;padding-left:30px;padding-right:30px}.rsvp-panel{padding:26px 24px}.site-header{padding-left:30px;padding-right:30px}.logo{width:275px}h1{font-size:47px}.detail-row strong{font-size:14px}.data-notice{padding:0 34px 25px}.list-controls{flex-direction:column;align-items:flex-start}.stats>div{padding:22px}.stats span{font-size:11px}.admin-toolbar{flex-wrap:wrap}}@media (max-width:760px){.site-shell,.admin-shell{background-repeat:no-repeat;background-size:auto 1050px;background-attachment:scroll}.site-header{justify-content:center;padding:35px 24px 20px}.logo{width:290px;max-width:85vw}.header-date{display:none}.invitation-layout{flex-direction:column;gap:40px;padding:28px 22px 45px;display:flex}.invitation{width:100%;padding:7px 0 0}.eyebrow{letter-spacing:1.7px;gap:8px;font-size:8px}.eyebrow>span{width:20px}h1{letter-spacing:-1.4px;margin-top:24px;font-size:clamp(37px,8.8vw,57px)}.invitation-copy{max-width:100%;font-size:15px;line-height:1.8}.event-details{gap:24px;margin-top:27px}.detail-row strong{font-size:15px}.companions-note{max-width:100%;margin-bottom:22px}.signature{margin-top:23px;font-size:23px}.rsvp-panel{width:100%;padding:26px 23px 24px}.mobile-jump{color:var(--gold);align-items:center;gap:25px;padding:12px 0;font-size:13px;text-decoration:none;display:inline-flex}.site-footer{flex-direction:column;gap:15px;padding:23px 22px;font-size:9px}.site-footer nav{gap:18px}.data-notice{padding:0 22px 30px}.admin-main{padding:22px}.admin-main h1{font-size:43px}.admin-toolbar>div{flex-wrap:wrap}.stats{grid-template-columns:1fr;gap:10px}.stats>div{align-items:center;gap:25px;padding:18px;display:flex}.stats strong{min-width:45px;margin:0;font-size:35px}.stats svg{order:2;width:19px;margin-left:auto;position:static}.stats span{font-size:12px}.admin-list{padding:18px}.filters{flex-direction:column;width:100%}.filters select{width:100%;max-width:none}.admin-login h2{font-size:28px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
