:root{color:#18313d;font-synthesis:none;background:#f3f6f5;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button{font:inherit}.app-shell{min-height:100vh}.topbar{color:#fff;background:#132d3a;align-items:center;gap:28px;height:70px;padding:0 34px;display:flex;box-shadow:0 2px 16px #142f3a13}.brand{letter-spacing:-.04em;align-items:center;gap:11px;font-size:22px;font-weight:800;display:flex}.brand-mark{color:#143629;background:#a5e5cf;border-radius:10px;place-items:center;width:34px;height:34px;display:grid}.top-caption{color:#c4d7d9;font-size:14px}.connection{color:#d4e2e2;margin-left:auto;font-size:13px}.connection:before{content:"";background:#9badb0;border-radius:50%;width:8px;height:8px;margin-right:8px;display:inline-block}.connection.online:before{background:#7ee0ad}.connection.offline:before{background:#ff9d8c}.workspace{grid-template-columns:320px minmax(0,1fr);gap:24px;max-width:1600px;margin:auto;padding:30px;display:grid}.rail,.content{background:#fff;border:1px solid #dbe3e0;border-radius:18px;box-shadow:0 4px 20px #17353c08}.rail{min-height:calc(100vh - 130px);padding:22px}.rail-heading{justify-content:space-between;align-items:end;display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#638579;margin:0 0 5px;font-size:11px;font-weight:800}h1,h2{letter-spacing:-.04em;margin:0}h1{font-size:30px}h2{font-size:29px}.create-button{color:#668376;cursor:not-allowed;background:#d8eae1;border:0;border-radius:9px;padding:9px 12px;font-weight:700}.calendar{border:1px solid #dce6e1;border-radius:13px;margin-top:29px;padding:17px}.calendar-heading{text-transform:capitalize;justify-content:space-between;align-items:center;display:flex}.calendar-heading strong{font-size:15px}.nav-button{color:#214a3c;cursor:pointer;background:#edf5f1;border:0;border-radius:7px;width:29px;height:29px;font-size:24px;line-height:1}.calendar-grid{text-align:center;grid-template-columns:repeat(7,1fr);gap:4px;margin-top:15px;display:grid}.weekday{color:#879c93;padding:7px 0;font-size:11px;font-weight:800}.day{color:#315045;cursor:pointer;background:0 0;border:0;border-radius:8px;height:34px}.day:hover{background:#eef5f0}.day.selected{color:#fff;background:#1f7655;font-weight:700}.day-summary{border-top:1px solid #e2ebe6;margin-top:24px;padding-top:22px}.day-summary strong{text-transform:capitalize}.day-summary p{color:#70837d;font-size:14px;line-height:1.5}.content{min-height:700px;padding:27px}.notice{color:#355742;background:#f0f6ef;border:1px solid #dbe9d8;border-radius:12px;align-items:flex-start;gap:13px;padding:15px 18px;display:flex}.notice-dot{background:#79b673;border-radius:50%;flex:none;width:9px;height:9px;margin-top:5px}.notice strong{font-size:14px}.notice p{color:#647b68;margin:4px 0 0;font-size:13px}.document-head{justify-content:space-between;align-items:center;gap:12px;margin:32px 0 23px;display:flex}.draft-tag{color:#788b84;background:#eef2ef;border-radius:20px;padding:7px 11px;font-size:12px}.document-grid{border:1px solid #dce5df;border-radius:13px;grid-template-columns:1.35fr 1fr;display:grid;overflow:hidden}.document-side{border-left:1px solid #dce5df}.placeholder-row{border-bottom:1px solid #dce5df;min-height:105px;padding:20px 25px}.placeholder-row:last-child{border-bottom:0}.placeholder-row.tall{min-height:165px}.placeholder-row span{text-transform:uppercase;letter-spacing:.06em;color:#5d7569;font-size:12px;font-weight:800;display:block}.placeholder-row i{background:#eff3ef;border-radius:10px;width:63%;height:11px;margin-top:20px;display:block}.placeholder-row.tall i{width:43%}@media (width<=900px){.workspace{grid-template-columns:1fr;gap:16px;padding:16px}.rail,.content{min-height:0}.topbar{padding:0 18px}.top-caption{display:none}}@media (width<=600px){.document-grid{grid-template-columns:1fr}.document-side{border-top:1px solid #dce5df;border-left:0}.document-head{align-items:flex-start}.draft-tag{display:none}.content{padding:18px}}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{width:100%;font:inherit;color:#18313d;background:#fff;border:1px solid #cbd8d3;border-radius:9px;min-height:41px;padding:10px 11px}textarea{resize:vertical}input:focus,select:focus,textarea:focus,button:focus-visible{outline-offset:2px;outline:2px solid #237d68}label{min-width:0;display:block}.field-label{letter-spacing:.055em;text-transform:uppercase;color:#526e63;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.required,.danger{color:#bb3440}.primary,.secondary,.small-button{border-radius:9px;padding:10px 16px;font-weight:750}.primary{color:#fff;background:#1f7655;border:1px solid #1f7655}.primary:hover{background:#185e44}.secondary,.small-button{color:#205b45;background:#fff;border:1px solid #bdd2c7}.small{padding:8px 12px;font-size:13px}.small-button{padding:5px 12px;font-size:23px}.top-nav{gap:4px;margin-left:20px;display:flex}.top-nav button,.account-button{color:#d2e1db;background:0 0;border:0;border-radius:8px;padding:10px 12px}.top-nav button.active,.top-nav button:hover,.account-button:hover{color:#fff;background:#254653}.account-button{margin-left:auto;font-size:13px}.center-card{background:#fff;border-radius:18px;max-width:560px;margin:11vh auto;padding:44px;box-shadow:0 8px 28px #17353c13}.login-card p{color:#5c7067;line-height:1.6}.login-card h1{margin-bottom:16px}#google-signin{min-height:45px;margin-top:25px}.global-feedback{max-width:1500px;margin:18px auto -12px}.feedback,.global-feedback{border-radius:9px;padding:11px 15px;font-size:14px}.error{color:#a32d31;background:#fff0ef;border:1px solid #f1c8c5}.success{color:#236040;background:#eaf6ee;border:1px solid #c5e5cf}.warning{color:#775514;background:#fff8e6;border:1px solid #eddba4}.day.hasJobs:not(.selected):after{content:"";background:#24785a;border-radius:50%;width:4px;height:4px;margin:-4px auto 0;display:block}.job-list-item{text-align:left;color:#18313d;background:0 0;border:1px solid #0000;border-radius:8px;align-items:center;gap:10px;width:100%;margin-top:5px;padding:8px;display:flex}.job-list-item:hover,.job-list-item.active{background:#edf5f1;border-color:#cfe1d7}.job-list-item span:nth-child(2){flex:1;min-width:0}.job-list-item strong,.job-list-item small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.job-list-item strong{text-transform:none;font-size:13px}.job-list-item small{color:#7b8c83;margin-top:2px;font-size:11px}.job-list-item em{color:#777;font-size:10px}.job-list-item.archived{opacity:.65}.status-dot{background:#e94137;border-radius:50%;flex:none;width:9px;height:9px}.status-dot.da-confermare{background:#f2a900}.status-dot.confermato{background:#50cf34}.status-dot.fatturato{background:#f3f3f3;border:1px solid #bcc5c1}.empty-state{text-align:center;color:#71867c;flex-direction:column;justify-content:center;align-items:center;min-height:520px;display:flex}.empty-state h2{color:#18313d}.document-head{margin:0 0 23px}.head-meta{color:#71867c;flex-direction:column;align-items:end;gap:5px;font-size:12px;display:flex}.editor-fieldset{border:0;min-width:0;margin:0;padding:0}.job-layout{border:1px solid #cbd7d2;border-radius:11px;grid-template-columns:minmax(0,1.45fr) minmax(250px,.9fr);display:grid;overflow:hidden}.form-section{border-bottom:1px solid #d9e2dd;gap:16px;padding:19px;display:grid}.form-section:last-child{border-bottom:0}.form-section.pair{grid-template-columns:1fr 1fr}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.material-side{border-left:1px solid #cbd7d2}.material-side h3{margin:19px;font-size:17px}.material-field{border-top:1px solid #d9e2dd;padding:12px 19px 18px}.material-field textarea{min-height:90px}.catalog-picker{min-width:0}.picker-line{gap:5px;margin-bottom:5px;display:flex}.picker-line input{flex:1;min-width:0}.catalog-picker select{color:#5b7468;font-size:12px}.tasks-section{margin-top:26px}.section-heading,.task-heading,.page-heading,.editor-actions{justify-content:space-between;align-items:center;gap:14px;display:flex}.section-heading h3{margin:0 0 14px;font-size:20px}.task-card{background:#fcfefd;border:1px solid #d8e2dc;border-radius:10px;margin:12px 0;padding:16px}.task-card.archived{opacity:.65;background:#f6f6f6}.task-heading{margin-bottom:13px}.task-heading>div{gap:8px;display:flex}.text-button{color:#176a51;background:0 0;border:0;padding:6px;font-size:12px;font-weight:700}.task-grid{grid-template-columns:1fr 1.5fr 1fr 110px;gap:10px;display:grid}.hours-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px;display:grid}.task-assignments{gap:12px;margin:12px 0;display:flex}.task-assignments details{border:1px solid #d9e2dd;border-radius:8px;flex:1;padding:9px}.task-assignments summary{cursor:pointer;font-size:13px;font-weight:700}.checkbox-list{grid-template-columns:repeat(2,1fr);gap:6px;max-height:160px;margin-top:10px;display:grid;overflow:auto}.checkbox-list label{font-size:12px}.checkbox-list input,.archive-toggle input{width:auto;min-height:auto}.editor-actions{margin-top:22px}.destructive-actions{gap:8px;display:flex}.page-card{background:#fff;border:1px solid #dbe3e0;border-radius:18px;max-width:1500px;margin:30px auto;padding:28px}.tab-strip{border-bottom:1px solid #dce6e1;gap:6px;margin:25px 0;display:flex;overflow:auto}.tab-strip button{white-space:nowrap;color:#647d71;background:0 0;border:0;padding:12px 16px}.tab-strip button.active{color:#1f7655;border-bottom:3px solid #1f7655;font-weight:800}.archive-toggle{color:#647d71;align-items:center;gap:8px;font-size:13px;display:flex}.catalog-row,.report-row{border-bottom:1px solid #e3eae6;align-items:center;gap:15px;padding:11px;display:flex}.catalog-row span:first-child{flex:1}.catalog-row strong,.catalog-row small{display:block}.catalog-row small,.muted{color:#7d9086;font-size:13px}.report-filters{align-items:end;gap:12px;margin:24px 0;display:flex}.report-row{grid-template-columns:110px 2fr 1fr 1fr 1fr;font-size:13px;display:grid}.modal-backdrop{z-index:10;background:#10272199;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.catalog-modal{background:#fff;border-radius:16px;width:min(800px,100%);max-height:90vh;padding:26px;overflow:auto;box-shadow:0 20px 65px #091c1760}.icon-button{background:0 0;border:0;font-size:25px}.catalog-modal .field-grid{margin:22px 0}@media (width<=1150px){.job-layout{grid-template-columns:1fr}.material-side{border-top:1px solid #cbd7d2;border-left:0}.task-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=750px){.topbar{gap:8px;padding:0 12px}.top-nav{margin-left:0}.account-button{font-size:0}.account-button:after{content:"Esci";font-size:12px}.workspace{padding:12px}.form-section.pair,.field-grid,.task-grid{grid-template-columns:1fr}.hours-grid{grid-template-columns:repeat(2,1fr)}.task-assignments{flex-direction:column}.page-card{margin:12px;padding:17px}.report-row{grid-template-columns:1fr 2fr}.report-row span:nth-child(n+3){display:none}}.report-filters{flex-wrap:wrap}.report-filters label{flex:1;min-width:140px}.report-table{overflow-x:auto}.report-table .report-row{grid-template-columns:105px 1.4fr 1.2fr 1.1fr 1fr 1fr 1.3fr 1fr 85px 110px;align-items:start;gap:10px;min-width:1200px;display:grid}.report-header{text-transform:uppercase;color:#536d60;background:#edf5f1;font-size:11px}.report-table .report-row span{overflow-wrap:anywhere;display:block}@media (width<=750px){.report-table .report-row{grid-template-columns:105px 1.4fr 1.2fr 1.1fr 1fr 1fr 1.3fr 1fr 85px 110px}.report-table .report-row span:nth-child(n+3){display:block}}.publication-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));max-height:none;margin:25px 0}.publication-list label{border:1px solid #d9e2dd;border-radius:8px;padding:12px;font-size:14px}.my-job{border:1px solid #d9e2dd;border-radius:10px;margin:12px 0;padding:18px}.my-job p{color:#627b6d;margin:8px 0}.user-form{grid-template-columns:2fr 1.5fr 1fr auto auto;align-items:end;gap:12px;margin:25px 0;display:grid}.user-form .archive-toggle{padding-bottom:10px}.catalog-modal .checkbox-list{max-height:170px;overflow:auto}@media (width<=800px){.user-form{grid-template-columns:1fr 1fr}.top-nav{overflow:auto}.top-nav button{white-space:nowrap;padding:9px 6px;font-size:12px}}
