@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');*{box-sizing:border-box}:root{--ink:#14211f;--muted:#70807c;--paper:#f4f7f4;--line:#e2e9e4;--brand:#0b7567;--mint:#b9e8c9;--deep:#102d28;--lime:#e9efb7}body{margin:0;font:14px Manrope,system-ui,sans-serif;color:var(--ink);background:var(--paper)}.shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.sidebar{height:100vh;position:sticky;top:0;background:var(--deep);color:#dceae6;padding:28px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;font-size:23px;font-weight:800;letter-spacing:-1px;color:white;text-decoration:none}.brandmark{width:35px;height:35px;border-radius:11px;background:var(--mint);color:var(--deep);display:grid;place-items:center}.sidebar>.brand{padding:0 10px 27px}.workspace{margin:5px 4px 28px;padding:13px;border:1px solid #ffffff12;background:#ffffff0b;border-radius:14px;display:flex;gap:10px;align-items:center}.workspace i{width:9px;height:9px;border-radius:50%;background:var(--mint)}.workspace small,.workspace strong{display:block}.workspace small{font-size:9px;letter-spacing:1px;color:#88a29b}.workspace strong{font-size:12px;margin-top:3px}nav{display:grid;gap:5px}nav a{padding:12px 13px;border-radius:11px;color:#9bb0aa;text-decoration:none;font-weight:600}nav a span{margin-left:11px}nav a:hover,nav a.active{color:white;background:#ffffff12}.sidebottom{margin-top:auto;border-top:1px solid #ffffff13;padding:19px 6px 0;display:flex;gap:9px;align-items:center}.sidebottom form button{border:0;background:none;color:#8fa49f;cursor:pointer}.me{flex:1}.me strong,.me small{display:block;font-size:11px}.me small{color:#829a94;text-transform:uppercase;font-size:9px}.avatar{width:36px;height:36px;border-radius:50%;background:var(--lime);color:var(--deep);display:grid;place-items:center;font-weight:800}header{height:98px;padding:22px 40px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}header h1{margin:4px 0 0;font-size:25px;letter-spacing:-.8px}.eyebrow{font-size:9px;font-weight:800;letter-spacing:1.4px;color:var(--brand)}.content{padding:34px 40px;max-width:1450px;margin:auto}.hero{padding:30px 34px;border-radius:22px;background:linear-gradient(115deg,#ddf2e5,#eef1c9);display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.hero h2{font-size:28px;letter-spacing:-1px;margin:9px 0 5px}.hero p{color:#586b65;margin:0}.pill{font-size:9px;font-weight:800;background:#ffffff90;padding:6px 9px;border-radius:99px}.primary{border:0;border-radius:12px;padding:12px 17px;background:var(--deep);color:white;font:inherit;font-weight:700;cursor:pointer}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:15px}.stat,.card{background:white;border:1px solid var(--line);border-radius:18px;padding:21px}.stat span,.stat small{display:block;color:var(--muted)}.stat strong{font-size:31px;display:block;margin:7px 0;letter-spacing:-1px}.stat small{font-size:10px}.stat.accent,.darkcard{background:#163b35;color:white;border-color:#163b35}.stat.accent span,.stat.accent small,.darkcard p{color:#a5bab4}.grid2{display:grid;grid-template-columns:1.6fr .8fr;gap:15px}.cardhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cardhead h3,.darkcard h3{font-size:18px;margin:4px 0}.cardhead a{color:var(--brand);text-decoration:none;font-weight:700;font-size:11px}.row{display:flex;gap:13px;align-items:center;padding:13px 2px;border-top:1px solid #edf1ee}.jobicon{width:36px;height:36px;border-radius:11px;background:#e9f4ee;color:var(--brand);display:grid;place-items:center;font-weight:800}.grow{flex:1}.grow strong,.grow small{display:block}.grow small{font-size:10px;color:var(--muted);margin-top:3px}.status{font-size:9px;font-weight:800;color:#557269;background:#eef4f0;padding:6px 9px;border-radius:99px;text-transform:capitalize}.darkcard{min-height:245px}.darkcard .eyebrow{color:#a7e2bd}.darkcard p{line-height:1.7}.pulse{margin-top:35px;color:#cbe1da}.pulse i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--mint);margin-right:8px}.empty{text-align:center;color:#99a7a2;padding:45px}.timeitem{display:grid;grid-template-columns:130px 1fr;gap:20px;border-top:1px solid var(--line);padding:16px 3px}.time{color:var(--brand);font-weight:800}.timeitem strong,.timeitem small{display:block}.timeitem small{color:var(--muted);font-size:10px;margin-top:4px}.loginbody{min-height:100vh;background:white;display:grid;grid-template-columns:1.05fr .95fr}.loginvisual{margin:18px;border-radius:26px;background:radial-gradient(circle at 75% 20%,#3b7567,#183f38 38%,#102d28 72%);color:white;overflow:hidden}.visualcopy{height:100%;padding:44px;display:flex;flex-direction:column}.pitch{margin:auto 0}.pitch h1{font-size:50px;line-height:1.06;letter-spacing:-2.5px;margin:10px 0 15px}.pitch p{max-width:450px;color:#b6cac5;line-height:1.7}.visualstat{padding-top:20px;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;font-size:16px}.loginpanel{display:grid;place-items:center;padding:40px}.loginbox{width:min(390px,100%)}.loginbox h2{font-size:30px;letter-spacing:-1px;margin:8px 0}.loginbox>p{color:var(--muted);margin:0 0 28px}.loginbox label{display:block;font-size:11px;font-weight:800;margin:15px 0}.loginbox input{display:block;width:100%;margin-top:8px;padding:14px;border:1px solid #dce4df;border-radius:12px;font:inherit;outline:none}.loginbox input:focus{border-color:#6ca899;box-shadow:0 0 0 4px #6ca89916}.wide{width:100%;display:flex;justify-content:space-between;margin-top:23px}.muted{display:block;text-align:center;color:#a0aaa6;margin-top:27px}.error{padding:11px;background:#fff0ed;color:#93483c;border-radius:10px}@media(max-width:850px){.shell{grid-template-columns:72px 1fr}.sidebar{padding:25px 9px}.sidebar>.brand span:last-child,.workspace,nav span,.me,.sidebottom form{display:none}nav a{text-align:center}.content,header{padding-left:20px;padding-right:20px}.stats,.grid2{grid-template-columns:1fr}.hero{flex-direction:column;align-items:flex-start;gap:20px}.loginbody{grid-template-columns:1fr}.loginvisual{display:none}.loginpanel{min-height:100vh}}
/* v0.3 workflow */
a.primary{text-decoration:none;display:inline-block}.rowlink{text-decoration:none;color:inherit}.rowlink:hover{background:#f8faf8}.formcard{max-width:900px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.formgrid label,.stackform{font-size:11px;font-weight:800}.formgrid input,.formgrid select,.formgrid textarea,.inlineform input,.stackform input,.stackform select{display:block;width:100%;margin-top:7px;padding:12px 13px;border:1px solid #dce4df;border-radius:11px;background:white;font:inherit;color:var(--ink)}.formgrid textarea{min-height:120px;resize:vertical}.formgrid .full{grid-column:1/-1}.formgrid .check{display:flex;gap:8px;align-items:center}.formgrid .check input{width:auto;margin:0}.formactions{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:22px}.formactions a{color:var(--muted);text-decoration:none}.detailgrid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:10px 0}.detailgrid small,.detailgrid strong{display:block}.detailgrid small{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.7px;margin-bottom:5px}.detailgrid a{color:var(--brand);text-decoration:none}.note{background:#f6f9f7;border-radius:12px;padding:15px;line-height:1.6;color:#586b65}.mt{margin-top:15px}.compact{padding:20px}.inlineform{display:grid;grid-template-columns:1fr 1.5fr auto;gap:8px;border-top:1px solid var(--line);padding-top:15px}.inlineform input{margin:0}.statusform{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.statusform button{padding:12px;border:1px solid var(--line);background:#f7faf8;border-radius:10px;cursor:pointer;font:inherit;font-weight:700}.statusform button:hover{border-color:var(--brand);color:var(--brand)}.stackform{display:grid;gap:10px;margin-top:15px}.stackform input,.stackform select{margin:0}@media(max-width:700px){.formgrid,.detailgrid,.inlineform{grid-template-columns:1fr}.formgrid .full{grid-column:auto}}

/* v0.4 operations */.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:22px}.timeline>div{padding:11px;border-radius:11px;background:#f2f5f3;color:#899792}.timeline .done{background:#e7f5eb;color:var(--deep)}.timeline b,.timeline small{display:block}.timeline small{font-size:9px;margin-top:4px}.actionstack{display:grid;gap:9px;margin-top:18px}.actionbtn{border:0;border-radius:13px;padding:15px;background:var(--deep);color:white;font:inherit;font-weight:800;cursor:pointer}.actionbtn.secondary{background:#edf3ef;color:var(--deep)}.actionbtn.finish{background:var(--brand)}.completebox{padding:20px;border-radius:13px;background:#e7f5eb;color:var(--brand);font-weight:800;text-align:center}.mutedline{display:block;color:var(--muted);margin-top:14px}.calendarlist{display:grid}.calrow{display:grid;grid-template-columns:50px 65px 1fr auto auto;gap:13px;align-items:center;padding:13px 2px;border-top:1px solid var(--line);text-decoration:none;color:inherit}.calrow:hover{background:#f8faf8}.caldate{width:45px;height:45px;border-radius:12px;background:#e9f4ee;display:grid;place-items:center;align-content:center;color:var(--brand)}.caldate b{font-size:17px;line-height:1}.caldate small{font-size:8px;text-transform:uppercase}.caltime{font-weight:800}.workbadge{font-size:9px;font-weight:800;color:var(--deep)}@media(max-width:700px){.timeline{grid-template-columns:1fr 1fr}.calrow{grid-template-columns:48px 1fr auto}.caltime,.workbadge{display:none}}

.durationrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.durationrow span{margin-right:4px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.6px}.durationrow button{border:1px solid var(--line);background:#f7faf8;border-radius:9px;padding:8px 12px;font:inherit;font-size:11px;font-weight:700;cursor:pointer}.durationrow button:hover,.durationrow button.selected{border-color:var(--brand);background:#e9f4ee;color:var(--brand)}

.sla-panel{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}.sla-panel>div{border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;gap:5px}.sla-panel small{color:var(--muted);text-transform:uppercase;font-size:10px;letter-spacing:.5px}.sla-panel strong{font-size:13px}@media(max-width:700px){.sla-panel{grid-template-columns:1fr}}

/* Darvio 1.0 technician workday */
.mobilehero{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding:4px 2px}.mobilehero h2{margin:5px 0;font-size:25px}.mobilehero p{margin:0;color:var(--muted)}.mycount{width:48px;height:48px;border-radius:15px;background:var(--deep);color:white;display:grid;place-items:center;font-size:18px;font-weight:800}.myjobs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.myjob{text-decoration:none;color:inherit;display:block;transition:.15s ease}.myjob:hover{transform:translateY(-1px);border-color:#cbd9d1}.myjobtop{display:flex;justify-content:space-between;gap:8px;align-items:center}.myjob h3{font-size:18px;margin:14px 0 5px}.mycustomer{display:block}.myaddress{display:block;color:var(--muted);font-size:11px;margin-top:7px}.myjobmeta{display:flex;gap:15px;flex-wrap:wrap;margin:18px 0;color:#526660;font-size:11px;font-weight:700}.myjobaction{border-top:1px solid var(--line);padding-top:13px;color:var(--brand);font-weight:800;font-size:11px}.priority{font-size:9px;font-weight:800;padding:6px 9px;border-radius:99px;background:#eef4f0;color:#557269}.priority-high{background:#fff0dc;color:#8a5a16}.priority-critical,.priority-urgent{background:#ffe8e4;color:#a43f32}.priority-low{background:#f1f4f2;color:#71807b}
@media(max-width:700px){.myjobs{grid-template-columns:1fr}.mobilehero{padding:0}.myjob.card{padding:18px;border-radius:16px}.myjob h3{font-size:17px}.myjobmeta{justify-content:space-between}.content{padding-top:20px}}

/* Darvio 1.0 job notes and history */
.jobextras{display:grid;grid-template-columns:1.6fr .8fr;gap:15px;margin-top:15px}.noteform{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.noteform textarea{width:100%;min-height:82px;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:12px;font:inherit}.noteitem{display:flex;gap:11px;padding:15px 2px;border-top:1px solid var(--line)}.smallavatar{width:31px;height:31px;font-size:11px;flex:0 0 auto}.noteitem strong,.noteitem small{display:block}.noteitem small,.eventitem small{font-size:9px;color:var(--muted);margin-top:2px}.noteitem p{margin:7px 0 0;line-height:1.55;white-space:pre-wrap}.eventitem{display:grid;grid-template-columns:13px 1fr;gap:9px;padding:11px 0;border-top:1px solid var(--line)}.eventitem i{width:8px;height:8px;border-radius:50%;background:var(--mint);margin-top:5px;box-shadow:0 0 0 4px #b9e8c930}.eventitem strong,.eventitem small{display:block}.compactempty{padding:22px}
@media(max-width:800px){.jobextras{grid-template-columns:1fr}.noteform{grid-template-columns:1fr}.noteform .primary{width:100%}}

/* Darvio 1.0 FullCalendar */
.calendarcard{overflow:hidden}.calendarcard #darvio-calendar{margin-top:14px}.fc{--fc-border-color:var(--line);--fc-button-bg-color:var(--deep);--fc-button-border-color:var(--deep);--fc-button-hover-bg-color:var(--brand);--fc-button-hover-border-color:var(--brand);--fc-button-active-bg-color:var(--brand);--fc-button-active-border-color:var(--brand);font-family:Manrope,system-ui,sans-serif}.fc .fc-toolbar-title{font-size:18px;font-weight:800}.fc .fc-button{font:600 11px Manrope,sans-serif;border-radius:9px;padding:8px 11px}.fc .fc-col-header-cell-cushion,.fc .fc-daygrid-day-number{color:var(--ink);text-decoration:none}.fc .fc-timegrid-slot-label-cushion{font-size:10px;color:var(--muted)}.fc-event{border:0!important;border-radius:7px!important;padding:2px 4px;background:var(--brand)!important;cursor:pointer}.fc-event.priority-high{background:#b27620!important}.fc-event.priority-critical,.fc-event.priority-urgent{background:#a84639!important}.fc-event.job-completed{opacity:.48}.fc .fc-day-today{background:#f2f8f3!important}@media(max-width:700px){.calendarcard{padding:13px}.fc .fc-toolbar{align-items:flex-start;gap:8px}.fc .fc-toolbar.fc-header-toolbar{flex-wrap:wrap}.fc .fc-toolbar-title{font-size:15px}.fc .fc-button{padding:7px 8px;font-size:10px}}

/* Darvio 1.0 materials and files */
.jobresources{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}.materialform{display:grid;grid-template-columns:1fr 90px 80px auto;gap:8px}.materialform input,.uploadform input[type=file]{min-width:0;padding:11px;border:1px solid var(--line);border-radius:10px;background:white;font:inherit}.uploadform{display:grid;grid-template-columns:1fr auto;gap:9px}.resourceitem{display:flex;justify-content:space-between;gap:12px;padding:12px 2px;border-top:1px solid var(--line);align-items:center}.resourceitem span{font-size:10px;color:var(--muted);white-space:nowrap}.fileitem{text-decoration:none;color:inherit}.fileitem:hover strong{color:var(--brand)}@media(max-width:900px){.jobresources{grid-template-columns:1fr}.materialform{grid-template-columns:1fr 80px 70px}.materialform .primary{grid-column:1/-1}.uploadform{grid-template-columns:1fr}.uploadform .primary{width:100%}}

/* Optimized job photo gallery */
.filegallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:13px}.photocard{display:grid;text-decoration:none;color:inherit;min-width:0}.photocard img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;background:#eef2ef}.photocard span{font-size:10px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:5px}.photocard small{font-size:9px;color:var(--muted)}.filegallery>.resourceitem{grid-column:1/-1}@media(max-width:700px){.filegallery{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Darvio 1.0 signature and work report */
.signreport{margin-top:15px;display:flex;justify-content:space-between;align-items:center}.signaturedialog{border:0;border-radius:18px;padding:0;width:min(650px,calc(100vw - 24px));box-shadow:0 24px 70px #0d271e55}.signaturedialog::backdrop{background:#0d271e99}.signaturedialog form{padding:22px}.signaturedialog label{display:grid;gap:6px;margin:14px 0;font-size:11px;font-weight:800}.signaturedialog input{padding:12px;border:1px solid var(--line);border-radius:10px;font:inherit}.signaturedialog canvas{width:100%;height:220px;border:1px dashed #9aaba4;border-radius:12px;background:#fff;touch-action:none}.signatureactions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.iconbtn{border:0;background:transparent;font-size:24px;cursor:pointer}@media(max-width:700px){.signaturedialog canvas{height:180px}.signatureactions{display:grid;grid-template-columns:1fr 1fr}.signreport .primary{width:100%;display:block;text-align:center;margin-top:12px}}

/* Darvio 1.0 SaaS onboarding and organization settings */
.settingsgrid{display:grid;grid-template-columns:1.6fr .7fr;gap:15px}.orglogo{display:block;max-width:220px;max-height:110px;object-fit:contain;margin:20px 0}.logoplaceholder{width:100px;height:100px;border-radius:22px;background:#e8f3ec;color:var(--brand);display:grid;place-items:center;font-size:34px;font-weight:800;margin:20px 0}.loginbox .muted a{color:var(--brand);font-weight:800;text-decoration:none}@media(max-width:800px){.settingsgrid{grid-template-columns:1fr}}

/* Darvio 1.0 team invitations */
.teamrow{display:flex;gap:10px;align-items:center;padding:12px 2px;border-top:1px solid var(--line)}.teamrow select{padding:8px;border:1px solid var(--line);border-radius:9px;background:white;font:inherit;font-size:10px}.compactbtn{padding:8px 10px}.secondary{border:1px solid var(--line);border-radius:10px;padding:10px 13px;background:white;color:var(--deep);font:inherit;font-weight:700;cursor:pointer}.invitebox{margin-top:18px;padding:14px;background:#edf6f0;border-radius:13px;display:grid;gap:8px}.invitebox strong{font-size:10px}.invitebox input{width:100%;padding:10px;border:1px solid #d3e1d8;border-radius:9px;background:white;font:inherit;font-size:10px}@media(max-width:700px){.teamrow{flex-wrap:wrap}.teamrow .grow{min-width:calc(100% - 50px)}.teamrow form{flex:1}.teamrow select,.teamrow button{width:100%}}

/* Darvio Pulse SLA policies */
.slacard{margin-top:15px}.slagrid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:9px;align-items:center;margin:18px 0}.slagrid strong{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.slagrid span{font-weight:800}.slagrid input{width:100%;padding:10px;border:1px solid var(--line);border-radius:9px;font:inherit}@media(max-width:600px){.slagrid{grid-template-columns:1fr 1fr 1fr;font-size:10px}}

.timepair,.daychecks{display:flex;gap:8px}.timepair input{min-width:0}.daychecks{flex-wrap:wrap}.daychecks label{display:flex;align-items:center;gap:5px;padding:7px 10px;border:1px solid var(--line);border-radius:9px}.switchcheck{display:flex;align-items:center;gap:6px}.slagrid{grid-template-columns:1.1fr 1fr 1fr .8fr}@media(max-width:600px){.slagrid{grid-template-columns:1fr 1fr 1fr .7fr}.daychecks label{padding:6px}}

.dashstats{grid-template-columns:repeat(4,1fr)}.pulseboard{margin:18px 0}.pulsemetrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.pulsemetrics>div{padding:14px;border:1px solid var(--line);border-radius:12px}.pulsemetrics strong{display:block;font-size:26px}.pulsemetrics span{font-size:12px;opacity:.7}.attentionrow,.rowlink{color:inherit;text-decoration:none}.attentionrow{display:flex;justify-content:space-between;align-items:center;padding:12px 2px;border-top:1px solid var(--line)}.attentionrow small{display:block;margin-top:3px;opacity:.65}.summaryline{display:flex;justify-content:space-between;padding:11px 0;border-top:1px solid var(--line)}@media(max-width:800px){.dashstats,.pulsemetrics{grid-template-columns:repeat(2,1fr)}}
.voicebtn{border:1px solid #d9e5df;background:#f4f8f5;color:#173f32;border-radius:10px;padding:10px 14px;font:700 12px Manrope;cursor:pointer}.voicebtn:hover{background:#eaf4ed}.voicebtn.recording{background:#fff0ec;border-color:#efc4b7;color:#9a402e}.voicebtn:disabled{opacity:.65;cursor:wait}.formactions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}

.mobileworkbar{display:none}.mobileworkbar a{text-decoration:none;color:var(--deep);font-size:11px;font-weight:800;white-space:nowrap;background:white;border:1px solid var(--line);padding:10px 12px;border-radius:11px}@media(max-width:700px){.mobileworkbar{display:flex;position:sticky;top:8px;z-index:20;gap:7px;overflow-x:auto;padding:8px;margin:-10px -8px 12px;background:#f4f7f4e8;backdrop-filter:blur(10px);scrollbar-width:none}.mobileworkbar::-webkit-scrollbar{display:none}.operations{position:relative}.actionbtn{min-height:52px;font-size:14px}.signreport{display:block}.jobresources,.jobextras{gap:10px}.noteform textarea{min-height:120px}.formactions{justify-content:stretch}.formactions button{flex:1 1 100%}}

.auditrow{display:grid;grid-template-columns:1fr auto;gap:20px;padding:13px 2px;border-top:1px solid var(--line);align-items:center}.auditrow strong,.auditrow small{display:block}.auditrow small{color:var(--muted);font-size:10px;margin-top:4px}.auditmeta{text-align:right}@media(max-width:700px){.auditrow{grid-template-columns:1fr}.auditmeta{text-align:left}}

.heroactions{display:flex;gap:10px;align-items:center}.statsfilters{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto auto;gap:12px;align-items:end;margin-bottom:16px}.statsfilters label{font-size:11px;font-weight:800;color:var(--muted)}.statsfilters input,.statsfilters select{display:block;width:100%;margin-top:6px}.reportstats{margin-bottom:16px}.statrow{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.statrow small,.statnumbers small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.statnumbers{text-align:right}.stathero{margin-bottom:16px}@media(max-width:900px){.statsfilters{grid-template-columns:1fr 1fr}.statsfilters .primary,.statsfilters .secondary{width:100%;text-align:center}}@media(max-width:600px){.statsfilters{grid-template-columns:1fr}.heroactions{width:100%;flex-wrap:wrap}.stathero{align-items:flex-start}.stathero .primary{width:100%;text-align:center}}


/* Mobile navigation + calendar polish */
@media(max-width:700px){
  .shell{grid-template-columns:56px minmax(0,1fr)}
  .sidebar{width:56px;padding:18px 6px}
  .sidebar>.brand{padding:0 4px 22px;justify-content:center}
  .brandmark{width:38px;height:38px;border-radius:12px}
  nav a{padding:11px 4px}
  .sidebottom{padding:16px 0 0;justify-content:center}
  .sidebottom .avatar{width:38px;height:38px}
  header{height:88px;padding-left:16px;padding-right:16px}
  .content{padding-left:14px;padding-right:14px}

  .calendarcard{padding:14px 10px;overflow:hidden}
  .calendarcard .cardhead{align-items:center;gap:10px}
  .calendarcard .cardhead h3{font-size:22px}
  .calendarcard .cardhead .primary{padding:11px 12px;white-space:nowrap}

  .calendarcard #darvio-calendar{margin-top:10px}
  .fc .fc-toolbar.fc-header-toolbar{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:14px}
  .fc .fc-toolbar-chunk{display:flex;min-width:0}
  .fc .fc-toolbar-chunk:nth-child(1){order:1}
  .fc .fc-toolbar-chunk:nth-child(2){order:2}
  .fc .fc-toolbar-chunk:nth-child(3){order:3}
  .fc .fc-toolbar-title{font-size:18px;line-height:1.2;white-space:normal}
  .fc .fc-button{padding:8px 10px;font-size:11px}
  .fc .fc-button-group{max-width:100%}
  .fc .fc-button-group>.fc-button{flex:1 1 auto}

  .fc .fc-scrollgrid{font-size:10px}
  .fc .fc-col-header-cell-cushion{font-size:10px;line-height:1.2;padding:6px 1px;white-space:normal}
  .fc .fc-timegrid-axis{width:38px!important}
  .fc .fc-timegrid-slot-label-cushion{font-size:9px;padding:0 4px}
  .fc .fc-timegrid-event{min-width:0}
  .fc .fc-timegrid-event .fc-event-main{padding:1px 2px}
  .fc .fc-event-time,.fc .fc-event-title{font-size:9px;line-height:1.15;overflow:hidden}
}

/* Darvio AI voice input */
.voicefield{display:flex;flex-direction:column;gap:8px}
.voicefield textarea{width:100%}
.voicebtn{align-self:flex-start;border:1px solid #cbdad1;background:#f3f8f5;color:#12372a;border-radius:10px;padding:8px 11px;font-weight:700;cursor:pointer}
.voicebtn:hover{background:#e8f3ec}
.voicebtn:disabled{opacity:.65;cursor:wait}
.voicestatus{color:#66756d;min-height:16px}
@media(max-width:700px){.voicebtn{min-height:42px;padding:10px 13px}}

/* Object address picker */
.address-picker{position:relative}
.address-suggestions{position:absolute;z-index:1200;left:0;right:0;top:100%;background:#fff;border:1px solid #dbe5df;border-radius:12px;box-shadow:0 12px 28px rgba(20,45,34,.12);overflow:hidden}
.address-suggestions:empty{display:none}
.address-suggestions button{display:block;width:100%;border:0;border-bottom:1px solid #edf2ef;background:#fff;text-align:left;padding:11px 13px;cursor:pointer}
.address-suggestions button:hover{background:#f3f8f5}
.site-map{height:320px;margin-top:12px;border-radius:14px;overflow:hidden;border:1px solid #dbe5df}
@media(max-width:700px){.site-map{height:260px}}
