:root{--bg:#fafaf7;--fg:#1a1a1a;--muted:#5c5c5c;--border:#d8d6cf;--accent:#2f6f4a;--accent-hover:#255a3b;--error:#b33a3a;--card:#fff}*{box-sizing:border-box}body,html{margin:0;padding:0;color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;font-size:16px;line-height:1.5}body{background-color:var(--bg);background-image:url(/bologna-bg.png);background-size:cover;background-position:50%;background-repeat:no-repeat;background-attachment:fixed;min-height:100vh;position:relative}body:before{content:"";position:fixed;inset:0;background:hsla(60,23%,97%,.82);z-index:0;pointer-events:none}.container{position:relative;z-index:1;max-width:720px;margin:0 auto;padding:32px 20px 80px}.lang-switcher{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;margin-bottom:16px}.lang-btn{font:inherit;font-size:.85rem;padding:6px 12px;border:1px solid var(--border);background:#fff;color:var(--fg);border-radius:999px;cursor:pointer}.lang-btn:hover{background:#f2f1ec}.lang-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.banner{background:#fff7e0;border:1px solid #e8d58a;padding:12px 16px;border-radius:8px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:.9rem}.guest-block{border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:20px;background:#fbfbf7}.guest-block .card{background:#fff;margin-bottom:14px}.guest-block .card:last-child{margin-bottom:0}.guest-header{display:flex;align-items:center;justify-content:space-between;margin:0 4px 12px}.guest-header h2{font-size:1.2rem;margin:0;color:var(--fg);text-transform:none;letter-spacing:0}.add-guest-row{display:flex;justify-content:center;margin-bottom:20px}.link-btn.danger{color:var(--error);border-color:#f4b8b8}.link-btn.danger:hover{background:#fdecec}.group-badge{display:inline-block;margin-left:8px;padding:2px 8px;font-size:.75rem;background:var(--accent);color:#fff;border-radius:999px;font-weight:600}tr.group-head td:first-child{border-left:3px solid var(--accent)}.actions-cell{display:flex;gap:6px;flex-wrap:wrap}.privacy{line-height:1.6}.privacy h1{margin-top:16px}.privacy h2{font-size:1.05rem;margin:24px 0 8px;color:var(--fg);text-transform:none;letter-spacing:0}.privacy p{margin:0 0 12px}.privacy-updated{margin-top:32px;color:var(--muted);font-size:.85rem;font-style:italic}.privacy-link-row{display:block;margin:8px 0 0 32px;font-size:.85rem}.privacy-link-row a{color:var(--accent);text-decoration:underline}.privacy-link-row a:hover{color:var(--accent-hover)}h1{font-size:1.75rem;margin:0 0 8px}.lede{color:var(--muted);margin:0 0 32px}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:24px;margin-bottom:20px}.card h2{font-size:1.1rem;margin:0 0 16px;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.grid .full{grid-column:1/-1}@media (max-width:560px){.grid{grid-template-columns:1fr}}label{display:flex;flex-direction:column;gap:6px;font-size:.9rem;color:var(--muted)}input[type=date],input[type=email],input[type=number],input[type=tel],input[type=text],select{font:inherit;color:var(--fg);padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:#fff}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}input[type=file]{font:inherit;padding:10px 0}.checkbox-row{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;color:var(--fg)}.checkbox-row input{margin-top:3px}button[type=submit]{font:inherit;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:8px;padding:14px 24px;cursor:pointer;width:100%}button[type=submit]:hover{background:var(--accent-hover)}button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.error{color:var(--error);background:#fdecec;border:1px solid #f4b8b8;padding:12px;border-radius:8px;margin-bottom:16px}.help{font-size:.8rem;color:var(--muted)}.success{text-align:center;padding:40px 20px}.success h1{font-size:2rem}.admin-filter{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:16px;gap:16px;align-items:end}.admin-filter-actions{display:flex;gap:8px}.admin-filter button{font:inherit;background:var(--accent);color:#fff;border:none;cursor:pointer}.admin-filter button,.link-btn{padding:10px 16px;border-radius:8px}.link-btn{display:inline-block;border:1px solid var(--border);background:#fff;color:var(--fg);text-decoration:none;font-size:.9rem}.link-btn:hover{background:#f2f1ec}.link-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.link-btn.primary:hover{background:var(--accent-hover)}.link-btn.small{padding:6px 10px;font-size:.85rem}.admin-exports{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:8px}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table td,.admin-table th{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:middle}.admin-table th{color:var(--muted);font-weight:600;background:#f5f4ef}@media (max-width:720px){.admin-filter{grid-template-columns:1fr}.admin-table{font-size:.8rem}}