:root{--ink:#24231f;--muted:#77736b;--canvas:#f7f5f1;--paper:#fff;--line:#e8e4dc;--accent:#d97757;--accent-dark:#bf6043;--sidebar:#242520;--green:#36755a;--amber:#a56e23;--red:#b9514c;--shadow:0 14px 40px rgba(44,39,31,.06)}
*{box-sizing:border-box}html{font-size:16px}body{margin:0;color:var(--ink);background:var(--canvas);font-family:"DM Sans",system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}button,input,textarea,select{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}.app-sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:var(--sidebar);color:#eeeae2;padding:28px 18px 20px;display:flex;flex-direction:column;z-index:10}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;padding:0 8px 30px}.brand-mark{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--accent);color:#fff;font-weight:700;letter-spacing:-.03em}.brand strong,.brand small{display:block}.brand strong{font-size:14px}.brand small{margin-top:2px;color:#989990;font-size:11px}.app-nav{display:grid;gap:4px}.app-nav a{display:flex;gap:11px;align-items:center;padding:11px 12px;color:#aaa9a2;text-decoration:none;border-radius:9px;font-size:14px;font-weight:500}.app-nav a span{font-size:18px;width:20px;text-align:center}.app-nav a:hover,.app-nav a.is-active{color:#fff;background:#34352f}.app-nav a.is-active{box-shadow:inset 3px 0 var(--accent)}.sidebar-footer{margin-top:auto;padding:16px 8px 0;border-top:1px solid #3a3b35;display:flex;align-items:center;gap:9px}.user-avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e7d9cc;color:#5e4738;font-weight:700;font-size:13px}.user-copy{min-width:0;flex:1}.user-copy strong,.user-copy small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-copy strong{font-size:12px}.user-copy small{color:#92938c;font-size:10px;margin-top:2px}.logout{color:#aaa;text-decoration:none;font-size:17px}.app-main{grid-column:2;padding:54px clamp(28px,4.5vw,76px) 72px;max-width:1500px;width:100%;margin:0 auto}
.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:34px}.page-header h1{font-family:"Newsreader",Georgia,serif;font-size:clamp(38px,4vw,52px);font-weight:500;line-height:1;margin:7px 0 10px;letter-spacing:-.035em}.page-header p{margin:0;color:var(--muted);font-size:14px}.eyebrow{color:var(--accent)!important;font-size:10px!important;font-weight:700!important;letter-spacing:.16em}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 17px;border:1px solid transparent;border-radius:9px;text-decoration:none;font-size:13px;font-weight:600;cursor:pointer;transition:.18s ease}.button-primary{background:var(--accent);color:#fff;box-shadow:0 5px 14px rgba(217,119,87,.18)}.button-primary:hover{background:var(--accent-dark);transform:translateY(-1px)}.button-secondary{background:#fff;border-color:var(--line);color:var(--ink)}.button-ghost{background:transparent;color:var(--muted)}.button-block{width:100%}.notice{padding:12px 15px;margin:0 0 22px;border-radius:9px;font-size:13px}.notice-success{background:#e9f3ed;color:#286348;border:1px solid #cde4d5}.notice-error{background:#f9eae8;color:#94413c;border:1px solid #eccdca}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:22px}.stats-grid article{background:rgba(255,255,255,.74);border:1px solid var(--line);border-radius:13px;padding:19px 20px;box-shadow:0 5px 20px rgba(50,45,37,.025)}.stats-grid span,.stats-grid small{display:block}.stats-grid span{color:var(--muted);font-size:11px;font-weight:600}.stats-grid strong{display:block;font-family:"Newsreader",Georgia,serif;font-size:27px;font-weight:500;margin:12px 0 5px}.stats-grid small{color:#aaa69d;font-size:10px}.table-card,.form-card{background:var(--paper);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.table-toolbar{min-height:76px;padding:17px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.table-toolbar h2{font-size:14px;margin:0 0 4px}.table-toolbar p{font-size:10px;color:var(--muted);margin:0}.search-form{width:min(310px,40%);height:38px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:9px;padding:0 11px;background:#fbfaf8}.search-form span{color:#969188}.search-form input{border:0;outline:0;background:transparent;width:100%;font-size:12px;color:var(--ink)}.table-scroll{overflow:auto}.products-table{width:100%;border-collapse:collapse;min-width:840px}.products-table th{padding:11px 16px;background:#fbfaf8;text-align:left;color:#8d887f;font-size:9px;text-transform:uppercase;letter-spacing:.08em}.products-table td{padding:14px 16px;border-top:1px solid #f0ede7;font-size:12px;vertical-align:middle}.product-cell{display:flex;align-items:center;gap:11px}.product-cell strong,.product-cell small,.cell-sub{display:block}.product-cell strong{max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-cell small,.cell-sub{font-size:9px;color:#9c988f;margin-top:4px}.product-thumb{width:39px;height:39px;border-radius:8px;background:#f1eee8;display:grid;place-items:center;color:#aaa;overflow:hidden;flex:0 0 auto}.product-thumb img{width:100%;height:100%;object-fit:cover}.products-table code{font-family:inherit;font-size:10px;background:#f2f0eb;padding:3px 6px;border-radius:5px}.status{display:inline-flex;gap:6px;align-items:center;font-size:10px;font-weight:600;padding:5px 8px;border-radius:20px}.status i{width:5px;height:5px;border-radius:50%;background:currentColor}.status-active{background:#eaf3ed;color:var(--green)}.status-draft{background:#f8f0df;color:var(--amber)}.status-archived{background:#efefed;color:#76756f}.row-actions{display:flex;gap:12px}.row-actions a{font-size:10px;font-weight:600;color:#645f57;text-decoration:none}.row-actions .delete-link{color:var(--red)}.empty-state{text-align:center;padding:55px 20px}.empty-state>span{font-size:28px;color:#c5c0b7}.empty-state h3{margin:10px 0 6px;font-family:"Newsreader",serif;font-size:22px}.empty-state p{color:var(--muted);margin:0 0 18px;font-size:12px}
.form-header{margin-bottom:28px}.back-link{display:inline-block;color:var(--muted);font-size:11px;text-decoration:none;margin-bottom:25px}.form-columns{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.form-primary{display:grid;gap:18px}.form-card{padding:25px}.card-heading{display:flex;gap:13px;align-items:flex-start;margin-bottom:23px}.card-heading>span{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#f3e6de;color:var(--accent);font-size:10px;font-weight:700}.form-card h2{font-size:14px;margin:0 0 4px}.form-card p{color:var(--muted);font-size:10px;margin:0}.fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 14px}.field{display:grid;gap:7px}.field-wide{grid-column:1/-1}.field>span{font-size:10px;font-weight:600;color:#5e5b55}.field b{color:var(--accent)}.field input,.field textarea,.field select{width:100%;border:1px solid #ddd9d1;border-radius:8px;background:#fdfcfb;color:var(--ink);font-size:12px;padding:10px 11px;outline:0;transition:.15s}.field input,.field select{height:40px}.field textarea{resize:vertical;line-height:1.55}.field input:focus,.field textarea:focus,.field select:focus{border-color:#cc9a84;box-shadow:0 0 0 3px rgba(217,119,87,.09);background:#fff}.field small{color:#9a968e;font-size:9px}.image-field{display:grid;grid-template-columns:130px 1fr;gap:16px;margin-bottom:18px}.image-preview{aspect-ratio:1;border:1px dashed #d7d2c9;background:#faf8f5;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;color:#aaa}.image-preview img{width:100%;height:100%;object-fit:cover}.image-preview span{font-size:25px}.image-preview small{font-size:9px;margin-top:5px}.image-controls{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px}.image-controls .field{width:100%}.sticky-card{position:sticky;top:22px}.sticky-card>h2{padding-bottom:17px;margin-bottom:17px;border-bottom:1px solid var(--line)}.sticky-card>.field{margin-bottom:16px}.price-row{display:grid;grid-template-columns:1fr 84px;gap:8px;margin-bottom:16px}.form-actions{display:grid;gap:6px;border-top:1px solid var(--line);padding-top:19px;margin-top:20px}
.login-page{background:#f4f1eb}.login-layout{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr}.login-story{position:relative;overflow:hidden;background:#262720;color:#f4f0e7;padding:42px clamp(35px,6vw,90px);display:flex;flex-direction:column}.story-brand{display:flex;gap:12px;align-items:center;font-size:13px;font-weight:600}.story-copy{margin:auto 0;position:relative;z-index:2}.story-copy h1{font-family:"Newsreader",Georgia,serif;font-size:clamp(50px,6vw,80px);line-height:.98;font-weight:500;letter-spacing:-.045em;margin:12px 0 24px}.story-copy>p:last-child{color:#aaa99f;max-width:440px;line-height:1.65;font-size:14px}.story-orbit{position:absolute;width:560px;height:560px;border:1px solid rgba(255,255,255,.07);border-radius:50%;right:-230px;bottom:-190px}.story-orbit:before,.story-orbit:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.055);border-radius:50%;inset:70px}.story-orbit:after{inset:145px}.story-orbit span{position:absolute;width:10px;height:10px;background:var(--accent);border-radius:50%;box-shadow:0 0 24px var(--accent)}.story-orbit span:first-child{left:38px;top:220px}.story-orbit span:nth-child(2){top:43px;left:235px;opacity:.5}.story-orbit span:last-child{left:176px;top:402px;opacity:.35}.login-panel{display:grid;place-items:center;padding:50px}.login-card{width:min(370px,100%)}.login-kicker{font-size:10px;font-weight:700;letter-spacing:.13em;color:var(--accent);text-transform:uppercase}.login-card h2{font-family:"Newsreader",serif;font-size:43px;font-weight:500;letter-spacing:-.03em;margin:7px 0 8px}.login-intro{font-size:13px;color:var(--muted);margin:0 0 28px}.login-card form p{margin:0 0 15px}.login-card form label{display:block;font-size:10px;font-weight:600;color:#55514a;margin-bottom:7px}.login-card form .input{width:100%;height:46px;border:1px solid #dcd7ce;border-radius:9px;background:#fff;padding:0 12px;outline:0}.login-card form .input:focus{border-color:#cc9a84;box-shadow:0 0 0 3px rgba(217,119,87,.09)}.login-card .login-remember label{display:flex;align-items:center;gap:8px;font-weight:400}.login-card .login-submit input{width:100%;height:46px;border:0;border-radius:9px;background:var(--accent);color:#fff;font-size:12px;font-weight:700;cursor:pointer}.login-security{text-align:center;color:#aaa59c;font-size:9px;margin-top:20px}
@media(max-width:1050px){.stats-grid{grid-template-columns:1fr 1fr}.form-columns{grid-template-columns:1fr}.sticky-card{position:static}.form-secondary{grid-row:1}.form-secondary .sticky-card{display:grid;grid-template-columns:1fr 1fr;gap:14px}.sticky-card>h2,.form-actions{grid-column:1/-1}.sticky-card>.field,.price-row{margin-bottom:0}}
@media(max-width:760px){.app-shell{display:block}.app-sidebar{position:static;width:100%;height:auto;padding:14px 16px;flex-direction:row;align-items:center}.brand{padding:0;margin-right:auto}.brand small,.user-copy,.app-nav a span{display:none}.app-nav{display:flex}.app-nav a{font-size:11px;padding:8px}.sidebar-footer{margin:0 0 0 8px;padding:0;border:0}.user-avatar{display:none}.app-main{padding:32px 16px 55px}.page-header{align-items:flex-start;flex-direction:column}.page-header h1{font-size:38px}.stats-grid{grid-template-columns:1fr 1fr}.table-toolbar{align-items:flex-start;gap:15px;flex-direction:column}.search-form{width:100%}.login-layout{grid-template-columns:1fr}.login-story{display:none}.login-panel{padding:35px 22px}.fields-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.form-secondary .sticky-card{display:block}.sticky-card>.field,.price-row{margin-bottom:16px}.image-field{grid-template-columns:90px 1fr}}
@media(max-width:440px){.stats-grid{grid-template-columns:1fr}.brand strong{font-size:12px}.app-nav a{padding:8px 6px}.app-nav a:last-child{font-size:0}.app-nav a:last-child:after{content:"Aggiungi";font-size:11px}}

