:root{--navy:#102a43;--navy2:#0a1c2c;--green:#173b34;--green2:#0d2924;--ivory:#f3ead0;--paper:#fbf7ea;--gold:#b99048;--gold2:#d6bc79;--ink:#263238;--muted:#68747c;--danger:#8a2f2f;--line:#d8ccb0}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Georgia,'Times New Roman',serif;color:var(--ink)}body{background:radial-gradient(circle at 50% 0,#24435c 0,var(--navy) 35%,var(--navy2) 100%);background-attachment:fixed}a{color:#8b692c}.page{min-height:100vh;padding:34px 16px 60px;display:flex;justify-content:center;align-items:flex-start}.public-card,.admin-card{width:min(920px,100%);background:var(--paper);border:1px solid rgba(214,188,121,.8);box-shadow:0 18px 60px rgba(0,0,0,.38);border-radius:14px;overflow:hidden}.hero{display:block;width:100%;max-height:390px;object-fit:cover;object-position:center}.content{padding:30px clamp(20px,5vw,52px) 42px}.content h1,.admin-card h1,.admin-card h2{color:var(--green2);letter-spacing:.01em}.lead{font-family:Arial,sans-serif;line-height:1.6;color:#3e4a4f}.form{display:grid;gap:20px;margin-top:26px}.form label,.grid-form label,.slot-generator label{font-family:Arial,sans-serif;font-weight:600;display:grid;gap:8px}.form input,.form textarea,.grid-form input,.grid-form textarea,.slot-generator input{width:100%;padding:12px 13px;border:1px solid #bdb69f;border-radius:7px;background:#fffdf7;font:inherit}.form fieldset{border:1px solid var(--line);border-radius:10px;padding:18px}.form legend{padding:0 8px;color:var(--green2);font-weight:700}.slots{display:flex;flex-wrap:wrap;gap:10px}.slot input{position:absolute;opacity:0}.slot span{display:block;padding:10px 15px;border:1px solid var(--gold);border-radius:999px;background:#fffdf8;cursor:pointer}.slot input:checked+span{background:var(--green);color:var(--ivory);box-shadow:0 0 0 2px var(--gold2)}.check{grid-template-columns:auto 1fr!important;align-items:start;font-weight:400!important}.check input{width:auto;margin-top:3px}button{border:1px solid #8c6c33;border-radius:7px;padding:12px 18px;background:linear-gradient(#c6a35c,#a67e35);color:#172016;font-weight:700;font-size:1rem;cursor:pointer}button:hover{filter:brightness(1.04)}.notice{margin:20px 0;padding:14px 16px;border-left:4px solid var(--gold);background:#f1e7cc;font-family:Arial,sans-serif}.notice.error{border-color:var(--danger);background:#f6dddd}.admin-nav{display:flex;gap:18px;padding:12px 24px;background:#071821;border-bottom:1px solid #83682f}.admin-nav a{color:var(--ivory);text-decoration:none;font-family:Arial,sans-serif}.admin-wrap{width:min(1180px,calc(100% - 28px));margin:28px auto 70px;display:grid;gap:22px}.admin-card{width:100%;padding:26px;overflow:auto}.head{display:flex;justify-content:space-between;align-items:center}.grid-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.grid-form .full{grid-column:1/-1}.slot-generator{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.slot-generator label{min-width:150px}table{width:100%;border-collapse:collapse;margin-top:20px;font-family:Arial,sans-serif}th,td{padding:11px;border-bottom:1px solid #ded7c4;text-align:left;vertical-align:top}.inline{display:inline-block;margin:2px}.small{padding:7px 10px;font-size:.85rem}.danger{background:#8a2f2f;color:white;border-color:#6b2020}.danger-zone{border-color:#b66f6f}.admin-page .admin-card{max-width:520px}@media(max-width:720px){.grid-form{grid-template-columns:1fr}.hero{max-height:260px}.content{padding:22px 18px 32px}.admin-card{padding:18px}th,td{font-size:.9rem;padding:8px}.slot-generator{display:grid;grid-template-columns:1fr 1fr}.slot-generator button{grid-column:1/-1}}

/* Formularz publiczny – dopracowanie opisów, RODO i textarea */
.form textarea.notes{resize:vertical;min-height:110px;max-width:100%}
.field-help{margin:0 0 14px;font-family:Arial,sans-serif;font-size:.9rem;font-weight:400;line-height:1.45;color:var(--muted)}
.cancellation-info{margin:-4px 0 0;padding:11px 13px;border-left:3px solid var(--gold);background:#f6efdc;color:#455158}
.rodo-link{text-decoration:underline;font-weight:600}
.admin-help{display:block;font-family:Arial,sans-serif;font-weight:400;font-size:.85rem;line-height:1.4;color:var(--muted)}

/* Modal RODO */
.modal{display:none;position:fixed;z-index:1000;inset:0;overflow:auto;background:rgba(3,15,25,.72);padding:24px}
.modal-content{position:relative;width:min(760px,100%);max-height:86vh;overflow-y:auto;margin:3vh auto;background:var(--paper);border:1px solid var(--gold2);border-radius:14px;padding:30px;box-shadow:0 22px 70px rgba(0,0,0,.5);font-family:Arial,sans-serif;line-height:1.55;color:var(--ink)}
.modal-content h2{margin:0 42px 20px 0;color:var(--green2);font-family:Georgia,'Times New Roman',serif}
.modal-content p{margin:0 0 16px}
.modal-content a{text-decoration:underline;overflow-wrap:anywhere}
.modal-close{position:absolute;top:12px;right:14px;width:38px;height:38px;padding:0;border:0;background:transparent;color:var(--muted);font:700 30px/1 Arial,sans-serif;box-shadow:none}
.modal-close:hover{filter:none;color:var(--green2)}
@media(max-width:720px){.modal{padding:12px}.modal-content{padding:22px 18px;margin:1vh auto;max-height:94vh}}

/* Drobne korekty czytelności formularza */
button{background:linear-gradient(#dfc177,#cba24f);border-color:#a87b2e;color:#111}
button:hover{filter:brightness(1.035)}
.slot span{background:#fffaf0;border-color:#c99d4b;color:#111}
.slot input:checked+span{background:#d7b35f;color:#111;box-shadow:0 0 0 2px #f0d89c}
.required-star{color:#d97818;font-weight:700;margin-left:2px}
.required-note{margin:-5px 0 0;font-family:Arial,sans-serif;font-size:.86rem;font-weight:400;color:var(--muted)}
.optional-field{font-weight:400!important}
.optional-field textarea{font-weight:400}
.cancellation-info a.contact-link{display:inline-flex;align-items:center;gap:5px;color:#7a571e;font-weight:600;text-decoration:underline;text-underline-offset:2px}
.contact-separator{margin:0 4px}
.whatsapp-icon{width:18px;height:18px;fill:currentColor;flex:0 0 auto}
