:root{--ink:#171313;--muted:#786f6b;--paper:#fbf8f5;--card:#fffdfb;--line:#e9e1dc;--rose:#d99e91;--wine:#7e2f2d;--shadow:0 12px 35px rgba(46,24,20,.08)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.45 'DM Sans',sans-serif}.shell{max-width:1180px;margin:auto;padding:35px 24px 70px}.hidden{display:none!important}.topbar,.section-heading,.panel-title,.modal-head,.modal-actions,.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar{border-bottom:1px solid var(--line);padding-bottom:22px}.eyebrow{margin:0 0 5px;color:var(--wine);font-size:11px;font-weight:700;letter-spacing:.17em}h1,h2,h3,p{margin-top:0}h1,h2{font-family:'Playfair Display',serif}h1{font-size:34px;margin-bottom:0}h2{font-size:32px;margin-bottom:0}.tabs{display:flex;gap:24px;border-bottom:1px solid var(--line);margin:0 0 34px}.tab{padding:18px 2px 14px;border:0;background:none;color:var(--muted);font:600 14px 'DM Sans';cursor:pointer}.tab.active{color:var(--wine);border-bottom:2px solid var(--wine)}.view{display:none}.view.active{display:block}.button,.icon-button{cursor:pointer;border:0;font:600 14px 'DM Sans';transition:.2s}.button{padding:12px 17px;border-radius:9px}.button.primary{background:var(--wine);color:white}.button.ghost{background:transparent;color:var(--ink);border:1px solid #cfc3bc}.icon-button{background:none;font-size:23px}.text-button{background:none;border:0;color:var(--wine);font:600 13px 'DM Sans';cursor:pointer;padding:0}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}.stat-card,.panel,.client-card,.agenda-item{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px}.stat-card{padding:22px}.stat-card span,.stat-card small{display:block;color:var(--muted)}.stat-card strong{font:600 43px 'Playfair Display';display:block;margin:7px 0}.stat-card.accent{background:#f9ece8}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{padding:22px}.panel-title{padding-bottom:13px;border-bottom:1px solid var(--line)}.panel h3{margin:0;font-size:17px}.list{display:grid}.list-row{padding:14px 0;border-bottom:1px solid var(--line)}.list-row:last-child{border:0}.list-row strong,.list-row span{display:block}.list-row span{color:var(--muted);font-size:13px}.toolbar{justify-content:flex-start;margin:25px 0}.toolbar input,.toolbar select{height:43px;border:1px solid #d8cec8;border-radius:8px;padding:0 12px;background:white;font:14px 'DM Sans'}.toolbar input[type=search]{width:min(450px,100%)}.clients-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.client-card{padding:19px;cursor:pointer}.client-card h3{margin:0 0 4px}.client-card p{color:var(--muted);margin:0;font-size:14px}.badge{display:inline-block;padding:4px 7px;border-radius:999px;background:#f2e5e1;color:var(--wine);font-size:11px;font-weight:700;margin-top:12px}.agenda-list{display:grid;gap:11px}.agenda-item{display:flex;gap:16px;padding:17px;cursor:pointer}.agenda-time{min-width:60px;color:var(--wine);font-weight:700}.agenda-info{flex:1}.agenda-info strong,.agenda-info span{display:block}.agenda-info span{color:var(--muted);font-size:13px}.status{font-size:11px;font-weight:700;align-self:flex-start;padding:5px 8px;border-radius:99px;background:#efebe8;color:#625a55}.status.confermato{background:#e4f0e7;color:#216539}.status.annullato{background:#f7e6e3;color:#9d3d34}.status.eseguito{background:#e9e8f4;color:#4e4a8e}.empty{padding:22px 0;color:var(--muted);text-align:center}dialog{border:0;border-radius:15px;box-shadow:0 25px 70px rgba(0,0,0,.25);padding:0;width:min(650px,calc(100% - 30px))}dialog::backdrop{background:rgba(20,13,12,.45)}.modal{padding:25px}.modal-head{border-bottom:1px solid var(--line);padding-bottom:15px}.modal-head h2{font-size:25px}.close{background:none;border:0;font-size:28px;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}.form-grid label{display:grid;gap:6px;font-size:13px;font-weight:600}.form-grid input,.form-grid select{border:1px solid #d8cec8;border-radius:8px;height:42px;padding:0 10px;font:14px 'DM Sans'}.form-grid .full{grid-column:1/-1}.form-grid .check{display:flex;align-items:center;gap:8px}.form-grid .check input{height:auto}.modal-actions{justify-content:flex-end;border-top:1px solid var(--line);padding-top:17px}.login-screen,.setup-screen{min-height:80vh;display:grid;place-items:center}.login-card,.setup-card{max-width:520px;padding:38px;background:var(--card);border-radius:16px;border:1px solid var(--line);box-shadow:var(--shadow)}.login-card p,.setup-card p{color:var(--muted);font-size:16px}.login-card form{display:grid;gap:15px;margin-top:26px}.login-card label{display:grid;gap:7px;font-size:13px;font-weight:600}.login-card input{height:45px;border:1px solid #d8cec8;border-radius:8px;padding:0 11px;font:15px 'DM Sans'}.form-error{color:#b32f2a!important;font-size:13px!important;margin:0!important}@media(max-width:720px){.shell{padding:24px 16px 55px}h2{font-size:27px}.section-heading{align-items:flex-end}.section-heading .button{padding:10px 12px;font-size:12px}.stats-grid,.two-columns,.clients-grid{grid-template-columns:1fr}.tabs{gap:18px}.agenda-item{gap:10px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.modal-actions{flex-wrap:wrap}.modal-actions .primary{margin-left:auto}}
