:root{--bg: #f7f6f2;--panel: #ffffff;--ink: #1f2528;--muted: #667078;--line: #d9d2c8;--accent: #8d1f35;--accent-dark: #651728;--teal: #176b6b;--gold: #c58a2a;--soft: #fff8ec;--warn: #fff1c7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#8d1f3514,#176b6b0a 340px),var(--bg)}button,input,select,textarea{font:inherit}button{border:0;border-radius:7px;cursor:pointer;font-weight:800;min-height:40px;padding:9px 12px}input,select,textarea{background:#fff;border:1px solid #c8ced4;border-radius:7px;display:block;margin-top:6px;min-height:42px;padding:9px 10px;width:100%}label{color:#2f363d;display:block;font-size:.88rem;font-weight:800}h1,h2,p{margin-top:0}h1{font-size:clamp(1.7rem,4vw,2.4rem);margin-bottom:0}h2{font-size:1.1rem;margin-bottom:6px}p{color:var(--muted);line-height:1.45}.app-shell{padding:18px clamp(12px,3vw,34px) 34px}.topbar,.month-bar,.section-head,.user-box,.quick-actions{align-items:center;display:flex;gap:10px}.topbar{background:linear-gradient(135deg,#8d1f35,#176b6b);border-radius:8px;color:#fff;justify-content:space-between;margin-bottom:16px;padding:16px}.topbar p,.topbar h1{color:#fff}.user-box{flex-wrap:wrap;justify-content:flex-end}.eyebrow{color:var(--gold);font-size:.78rem;font-weight:900;letter-spacing:0;margin-bottom:4px;text-transform:uppercase}.panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 32px #1f25280f;padding:16px}.primary{background:var(--accent);color:#fff}.primary:hover{background:var(--accent-dark)}.secondary{background:#ede5da;color:var(--ink)}.notice{background:var(--warn);border:1px solid #e4c96d;border-radius:8px;margin-bottom:14px;padding:12px}.view-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}.view-tabs button{background:#fff;border:1px solid var(--line);color:var(--ink)}.view-tabs button.active{background:var(--accent);border-color:var(--accent);color:#fff}.calendar-layout{display:grid;gap:16px;grid-template-columns:minmax(320px,.9fr) minmax(360px,1.1fr)}.month-bar{justify-content:space-between;margin-bottom:14px}.weekday-row,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekday-row span{color:var(--muted);font-size:.78rem;font-weight:900;padding:6px;text-align:center}.month-grid{gap:6px}.day-cell{align-items:flex-start;aspect-ratio:1;background:#fffdf7;border:1px solid var(--line);color:var(--ink);display:flex;flex-direction:column;justify-content:space-between;min-height:50px;padding:7px}.day-cell.muted{opacity:.45}.day-cell.selected{border-color:var(--accent);box-shadow:0 0 0 2px #8d1f352e}.day-cell strong{background:var(--accent);border-radius:999px;color:#fff;font-size:.76rem;min-width:22px;padding:2px 6px}.day-panel{display:grid;gap:14px}.slot-list{display:grid;gap:8px}.slot-card{background:var(--soft);border:1px solid var(--line);border-left:5px solid var(--gold);border-radius:8px;padding:10px 12px}.slot-card span{color:var(--teal);display:block;font-weight:900}.slot-card p{margin-bottom:2px}.slot-card small,.empty{color:var(--muted)}.event-form{display:grid;gap:12px}.form-head{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.two-cols{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions{flex-wrap:wrap}.quick-actions button,.user-box button,.month-bar button,.slot-editor button{background:#ede5da;color:var(--ink)}.events-page,.settings-page{display:grid;gap:14px}.event-list,.event-card{display:grid;gap:12px}.event-card.pending-cancel{background:#fff8ec;border-color:#dfb66d}.event-card-head,.event-contact,.event-slot-row{align-items:center;display:flex;gap:10px}.event-card-head{justify-content:space-between}.event-card h3{font-size:1.15rem;margin:0 0 3px}.event-card p{margin-bottom:0}.event-contact{color:var(--muted);flex-wrap:wrap;font-size:.9rem}.event-slots{display:grid;gap:7px}.event-slot-row{background:#f9f5ed;border:1px solid #eadfce;border-radius:7px;flex-wrap:wrap;justify-content:space-between;padding:9px 10px}.event-slot-row strong{color:var(--accent)}.event-notes{background:#f4fbfa;border-left:4px solid var(--teal);border-radius:7px;padding:10px}.status{border-radius:999px;font-size:.76rem;font-weight:900;padding:4px 9px;text-transform:uppercase}.status.pending{background:#fff1c7;color:#7a5015}.status.confirmed{background:#dff3ed;color:#176045}.status.cancelled{background:#f5d5db;color:#7a1f32}.status.da_annullare{background:#ffe2b8;color:#8a4c00}.event-actions{display:flex;flex-wrap:wrap;gap:8px}.event-actions button{background:#ede5da;color:var(--ink)}.event-actions .danger-soft{background:#f5d5db;color:#7a1f32}.change-warning{background:#fff8ec;border:1px solid #dfb66d;border-radius:8px;display:grid;gap:10px;padding:12px}.change-warning p{margin-bottom:0}.checkbox-row{align-items:flex-start;display:flex;gap:9px}.checkbox-row input{margin:2px 0 0;min-height:auto;width:auto}.settings-card{display:grid;gap:12px;max-width:680px}.email-chip-list{display:flex;flex-wrap:wrap;gap:8px}.email-chip{align-items:center;background:#f4fbfa;border:1px solid #b9d9d5;border-radius:999px;color:var(--teal);display:inline-flex;font-weight:800;gap:8px;padding:5px 6px 5px 12px}.email-chip button{background:#dff3ed;color:#176045;min-height:28px;padding:4px 8px}.user-list{display:grid;gap:10px}.user-card{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) 220px auto}.user-card.disabled{opacity:.6}.user-card h3{font-size:1rem;margin:0 0 3px}.user-card p{margin-bottom:0}.slot-editor-list{display:grid;gap:10px}.slot-editor{display:grid;gap:8px;grid-template-columns:1fr 1fr .8fr .8fr auto}.login-page,.center{display:grid;min-height:100vh;place-items:center;padding:18px}.login-card{display:grid;gap:12px;max-width:420px;width:100%}.admin-hint{margin-top:16px}@media(max-width:860px){.topbar,.section-head,.form-head{align-items:stretch;flex-direction:column}.calendar-layout,.two-cols,.slot-editor,.event-slot-row,.user-card{grid-template-columns:1fr}.event-card-head,.event-slot-row{align-items:stretch;flex-direction:column}.app-shell{padding:12px}.calendar-panel{position:static}}
