:root{--admin-dark:#282226;--admin-ink:#342e31;--admin-muted:#756c70;--admin-line:#e7dfe2;--admin-bg:#f6f3f4;--admin-card:#fff;--admin-accent:#8b5e67;--admin-soft:#f2e8e9;--admin-green:#287d5b;--admin-red:#b3434d;--admin-shadow:0 18px 55px rgba(55,38,45,.08);--admin-radius:20px}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--admin-ink);background:var(--admin-bg);-webkit-font-smoothing:antialiased}.admin-body{min-height:100vh}.admin-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.admin-sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;padding:1.2rem;background:var(--admin-dark);color:#fff}.admin-brand{display:flex;align-items:center;gap:.75rem;padding:.4rem .4rem 1.5rem;color:#fff}.admin-brand:hover{color:#fff}.admin-brand span,.auth-logo span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#d8b4aa,#8b5e67);font-weight:850}.admin-brand strong{font-size:1rem}.admin-sidebar nav{display:flex;flex-direction:column;gap:.15rem}.admin-sidebar nav>a{padding:.68rem .75rem;border-radius:10px;color:rgba(255,255,255,.67);font-size:.78rem;font-weight:650}.admin-sidebar nav>a:hover,.admin-sidebar nav>a.active{color:#fff;background:rgba(255,255,255,.1)}.nav-label{margin:1.15rem .75rem .45rem;color:rgba(255,255,255,.35);font-size:.62rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.admin-main{min-width:0}.admin-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:92px;padding:1.2rem 2rem;border-bottom:1px solid var(--admin-line);background:rgba(255,255,255,.82);backdrop-filter:blur(16px)}.admin-topbar h1{margin:0;font-size:1.55rem;line-height:1.1}.admin-eyebrow{display:block;margin-bottom:.25rem;color:var(--admin-accent);font-size:.62rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.admin-user{display:flex;align-items:center;gap:.8rem;font-size:.72rem}.admin-user>span{font-weight:700}.admin-user a,.admin-user button{border:0;color:var(--admin-muted);background:transparent;padding:0}.admin-user button:hover,.admin-user a:hover{color:var(--admin-accent)}.admin-content{padding:2rem;max-width:1600px;margin:auto}.admin-menu-toggle{display:none;border:0;background:transparent;font-size:1.4rem}.admin-stat-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:1rem}.admin-stat-card{display:flex;align-items:center;gap:.9rem;padding:1.15rem;border:1px solid var(--admin-line);border-radius:var(--admin-radius);background:var(--admin-card);box-shadow:0 8px 26px rgba(55,38,45,.04)}.admin-stat-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:var(--admin-accent);background:var(--admin-soft);font-weight:800}.admin-stat-card strong{display:block;font-size:1.45rem}.admin-stat-card p{margin:0;color:var(--admin-muted);font-size:.68rem}.admin-panel{padding:1.4rem;border:1px solid var(--admin-line);border-radius:var(--admin-radius);background:var(--admin-card);box-shadow:0 10px 30px rgba(55,38,45,.035)}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.3rem}.panel-head h2{margin:0;font-size:1.15rem}.panel-head>a{color:var(--admin-accent);font-size:.72rem;font-weight:750}.admin-table{--bs-table-bg:transparent;vertical-align:middle;margin:0}.admin-table thead th{padding:.75rem;color:var(--admin-muted);font-size:.63rem;letter-spacing:.08em;text-transform:uppercase;border-bottom-color:var(--admin-line);white-space:nowrap}.admin-table td{padding:.85rem .75rem;border-bottom-color:var(--admin-line);font-size:.76rem}.admin-table td strong,.admin-table td small{display:block}.admin-table td small{color:var(--admin-muted)}.admin-thumb{width:54px;height:40px;object-fit:cover;border-radius:8px}.status-badge{display:inline-flex;padding:.3rem .55rem;border-radius:999px;font-size:.62rem;font-weight:750;text-transform:capitalize;background:#eee;color:#555}.status-active,.status-confirmed,.status-completed,.status-replied{background:#e5f4ed;color:var(--admin-green)}.status-inactive,.status-cancelled{background:#f9e8e9;color:var(--admin-red)}.status-new{background:#f5ebd9;color:#8a631d}.status-read,.status-contacted{background:#e7edf6;color:#456383}.table-actions{display:flex;justify-content:flex-end;gap:.65rem}.table-actions a,.table-actions button{border:0;padding:0;color:var(--admin-accent);background:transparent;font-size:.68rem;font-weight:700}.table-actions button{color:var(--admin-red)}.message-list{display:grid}.message-list>a{display:grid;grid-template-columns:36px 1fr auto;gap:.7rem;align-items:center;padding:.8rem 0;border-bottom:1px solid var(--admin-line);color:inherit}.message-list>a>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:var(--admin-accent);background:var(--admin-soft);font-weight:800}.message-list strong,.message-list p{display:block;margin:0}.message-list strong{font-size:.76rem}.message-list p,.message-list time{color:var(--admin-muted);font-size:.66rem}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}.quick-actions a{padding:1rem;border:1px solid var(--admin-line);border-radius:14px;color:inherit;transition:transform .2s,border-color .2s}.quick-actions a:hover{transform:translateY(-2px);border-color:var(--admin-accent)}.quick-actions strong,.quick-actions span{display:block}.quick-actions strong{font-size:.79rem}.quick-actions span{color:var(--admin-muted);font-size:.66rem}.btn{border-radius:10px;font-weight:720;font-size:.78rem}.btn-dark{--bs-btn-bg:var(--admin-dark);--bs-btn-border-color:var(--admin-dark);--bs-btn-hover-bg:#3d3439}.admin-form .admin-panel{height:auto}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.field-wrap.field-full{grid-column:1/-1}.field-checkbox{display:flex;align-items:center;min-height:55px}.form-label{margin-bottom:.4rem;font-size:.69rem;font-weight:720}.form-control,.form-select{min-height:46px;border-color:var(--admin-line);border-radius:10px;font-size:.78rem}.form-control:focus,.form-select:focus{border-color:var(--admin-accent);box-shadow:0 0 0 .2rem rgba(139,94,103,.12)}textarea.form-control{min-height:auto;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;line-height:1.55}.field-wrap small{display:block;margin-top:.35rem;color:var(--admin-muted);font-size:.63rem}.sticky-admin{position:sticky;top:1.5rem}.sticky-admin h2{font-size:1.35rem}.sticky-admin p{color:var(--admin-muted);font-size:.75rem}.sticky-admin .btn{margin-top:.55rem}.current-image{display:flex;align-items:center;gap:.7rem;margin-bottom:.6rem}.current-image img{width:84px;height:58px;object-fit:cover;border-radius:9px;background:#eee}.current-image span{color:var(--admin-muted);font-size:.66rem}.image-preview img{display:block;max-width:180px;max-height:130px;margin-top:.7rem;border-radius:10px}.color-field{display:grid;grid-template-columns:48px 1fr;gap:.6rem}.color-field input[type=color]{width:48px;height:46px;border:1px solid var(--admin-line);border-radius:10px;padding:.2rem;background:#fff}.settings-group{margin-bottom:1rem}.admin-empty{padding:2.5rem;text-align:center}.admin-empty p{margin:0;color:var(--admin-muted)}.admin-auth-body{min-height:100vh;background:#f7f4f5}.auth-shell{display:grid;grid-template-columns:1.1fr .9fr;min-height:100vh}.auth-visual{position:relative;display:flex;align-items:flex-end;padding:clamp(2rem,7vw,6rem);overflow:hidden;color:#fff;background:linear-gradient(140deg,rgba(40,34,38,.93),rgba(139,94,103,.76)),url('../images/demo/hero.svg') center/cover}.auth-visual::before{content:"";position:absolute;width:520px;height:520px;right:-180px;top:-180px;border:1px solid rgba(255,255,255,.18);border-radius:50%}.auth-visual>div{position:relative;max-width:600px}.auth-visual h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,5vw,5rem);font-weight:500;line-height:1.02}.auth-visual p{color:rgba(255,255,255,.7);font-size:1rem}.auth-kicker{display:block;margin-bottom:1rem;font-size:.68rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.auth-form-wrap{display:grid;place-items:center;padding:2rem}.auth-card{width:min(430px,100%);padding:2rem;border:1px solid var(--admin-line);border-radius:24px;background:#fff;box-shadow:var(--admin-shadow)}.auth-logo{display:flex;align-items:center;gap:.7rem;margin-bottom:2.5rem;color:var(--admin-ink)}.auth-card h2{font-size:1.7rem}.auth-card>p{color:var(--admin-muted);font-size:.78rem}.back-site{display:block;margin-top:1.2rem;text-align:center;color:var(--admin-muted);font-size:.68rem}.alert{border-radius:12px;font-size:.76rem}
@media(max-width:1399px){.admin-stat-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1199px){.admin-shell{grid-template-columns:220px 1fr}.quick-actions{grid-template-columns:repeat(2,1fr)}}
@media(max-width:991px){.admin-shell{display:block}.admin-sidebar{position:fixed;left:0;top:0;z-index:1050;width:270px;transform:translateX(-100%);transition:transform .25s}.admin-sidebar.is-open{transform:none}.admin-main{min-height:100vh}.admin-menu-toggle{display:block}.admin-topbar{padding:1rem 1.2rem}.admin-content{padding:1.2rem}.admin-user>span{display:none}.auth-shell{grid-template-columns:1fr}.auth-visual{display:none}.auth-form-wrap{min-height:100vh}.sticky-admin{position:static}}
@media(max-width:767px){.admin-stat-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.field-wrap.field-full{grid-column:auto}.admin-topbar h1{font-size:1.25rem}.admin-user a{display:none}.admin-table thead{display:none}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{display:block;width:100%}.admin-table tr{padding:.8rem 0;border-bottom:1px solid var(--admin-line)}.admin-table td{display:flex;justify-content:space-between;gap:1rem;padding:.35rem .2rem;border:0;text-align:right!important}.admin-table td::before{content:attr(data-label);color:var(--admin-muted);font-size:.62rem;font-weight:700;text-align:left}.admin-table td:first-child::before{content:"ID"}.admin-table td:last-child::before{content:"Azioni"}.table-actions{justify-content:flex-end}.quick-actions{grid-template-columns:1fr}}
@media(max-width:480px){.admin-stat-grid{grid-template-columns:1fr}.admin-user form{display:none}.admin-content{padding:.8rem}.admin-panel{padding:1rem}.auth-form-wrap{padding:1rem}.auth-card{padding:1.4rem}}
