/* 1088: Pet layouts only. The barbershop keeps its own UI and workflow. */
.pet-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.pet-team-card{min-width:0;border:1px solid var(--o-line,#3d414c);border-radius:16px;background:var(--o-panel,#14161c)}.pet-team-card>summary{min-height:80px;padding:18px;cursor:pointer;font-weight:700;overflow-wrap:anywhere}.pet-team-card>.card{margin:0!important;border:0!important}
@media(max-width:750px){
 body.orbit-company,body.orbit-pet{min-width:0;max-width:100%;font-size:14px}
 body.orbit-company main,body.orbit-company.orbit-demo>main,body.orbit-pet>main{width:100%;min-width:0;max-width:100%;padding-left:12px;padding-right:12px;padding-bottom:calc(100px + env(safe-area-inset-bottom))}
 body.orbit-company :is(#content,#view,.card,section,form,.split,.pet-shelves,.pet-shelf),body.orbit-pet :is(#view,.card,section,form){min-width:0;max-width:100%}
 body.orbit-company :is(input,select,textarea),body.orbit-pet :is(input,select,textarea){min-width:0;max-width:100%;font-size:16px}
 body.orbit-company :is(p,h1,h2,h3,strong,label),body.orbit-pet :is(p,h1,h2,h3,strong,label){overflow-wrap:anywhere}
 body.orbit-company .form-grid,body.orbit-pet .form-grid{grid-template-columns:minmax(0,1fr)}
 body.orbit-company .split{grid-template-columns:minmax(0,1fr)}
 body.orbit-company .owner-stats,body.orbit-company #view .owner-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 body.orbit-company .owner-stats>:is(.card,.summary),body.orbit-company #view .owner-stats .summary{padding:12px!important;border-radius:14px!important}
 body.orbit-company .owner-stats strong,body.orbit-company #view .owner-stats strong{font-size:22px!important;line-height:1.2;margin:7px 0}
 body.orbit-company .owner-stats small{font-size:11px;letter-spacing:0}
 body.orbit-company .pet-carousel.pet-tiles,body.orbit-company #view .pet-carousel.pet-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;overflow:visible;margin:0;padding:0;scroll-snap-type:none}
 body.orbit-company .pet-carousel.pet-tiles>.pet-tile,body.orbit-company #view .pet-carousel.pet-tiles>.pet-tile{width:auto;min-width:0;max-width:100%;flex:none;margin:0;border-radius:15px;transform:none}
 body.orbit-company .pet-carousel .pet-tile-summary,body.orbit-company #view .pet-carousel .pet-tile-summary{padding:12px;min-height:139px;gap:6px;justify-content:center;box-sizing:border-box}
 body.orbit-company .pet-carousel .tile-paw,body.orbit-company #view .pet-carousel .tile-paw{height:29px;font-size:26px;line-height:1;margin:0}
 body.orbit-company .pet-carousel .tile-name,body.orbit-company #view .pet-carousel .pet-tile-summary .tile-name{font-size:17px;line-height:1.25;white-space:normal;overflow-wrap:anywhere}
 body.orbit-company .pet-carousel .tile-time,body.orbit-company #view .pet-carousel .tile-time{font-size:15px;line-height:1.3;font-weight:700}
 body.orbit-company .pet-carousel .tile-service,body.orbit-company .pet-carousel .tile-hint{display:none}
 body.orbit-company .pet-carousel .pet-cover{height:48px;border-radius:8px}
 body.orbit-company .pet-shelf-header{margin:12px 0 9px}.pet-shelf-header h3{font-size:17px}
 body.orbit-company .pet-shelf-header .shelf-controls{display:none}
 body.orbit-company .pet-detail-dialog .pet-sheet-hero{min-height:80px}.pet-detail-dialog .pet-sheet-hero>span{font-size:40px}
 body.orbit-company .pet-detail-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0}
 body.orbit-company .pet-sheet-header h2{font-size:21px}.pet-sheet-content{padding:14px 14px calc(24px + env(safe-area-inset-bottom))}
 body.orbit-company .agenda-filters,body.orbit-company #view .agenda-filters{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0}
 body.orbit-company .agenda-filters>label,body.orbit-company #view .agenda-filters>label{flex:1 1 135px;min-width:0;margin:0;font-size:12px}
 body.orbit-company .agenda-filters .compact-pet-search{flex:1 1 100%}.agenda-filters>button{min-height:44px!important}
 body.orbit-company #view .company-tabs,body.orbit-company #company-navigation{gap:2px;padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0}
 body.orbit-company #view .company-tabs button,body.orbit-company #company-navigation button{min-width:0;font-size:10px;min-height:53px;padding:7px 2px;gap:3px}
 body.orbit-company .table-wrap{max-width:100%;overflow-x:auto}.pet-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pet-team-card>summary{padding:12px;font-size:15px}
 .pet-team-card[open]{grid-column:1/-1}
 body.orbit-pet>header{padding:12px!important}.orbit-pet>header .brand{min-height:44px!important}.orbit-pet>header .brand::before{width:30px!important;height:30px!important}.orbit-pet>header .brand>span{font-size:16px!important}
 body.orbit-pet>header .demo-kicker{display:block;margin:8px 0 4px;font-size:9px;letter-spacing:1px}body.orbit-pet>header .demo-kicker::before{display:none!important}
 body.orbit-pet>header h1{font-size:22px;margin:8px 0}body.orbit-pet>header .badge{font-size:10px;padding:5px 8px;white-space:normal}
 body.orbit-company .welcome,body.orbit-company #view .welcome{margin:12px 0;padding:16px!important;border-radius:16px}
 body.orbit-company .welcome h2,body.orbit-company #view .welcome h2{font-size:23px!important;line-height:1.2}
 body.orbit-company .orbit-feedback-launcher{width:44px;height:44px;min-width:44px;padding:0;font-size:0;bottom:calc(82px + env(safe-area-inset-bottom));right:12px}.orbit-feedback-launcher::before{font-size:19px;content:'💬'}
 body.orbit-company .pet-detail-dialog .actions,body.orbit-pet .actions{flex-wrap:wrap}.contact-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-actions a{overflow-wrap:anywhere}
}
@media(min-width:380px) and (max-width:750px){
 body.orbit-company .pet-carousel.pet-tiles,body.orbit-company #view .pet-carousel.pet-tiles,.pet-team-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 body.orbit-company .pet-carousel .pet-tile-summary,body.orbit-company #view .pet-carousel .pet-tile-summary{padding:10px;min-height:135px}
 body.orbit-company .pet-carousel .tile-name,body.orbit-company #view .pet-carousel .pet-tile-summary .tile-name{font-size:15px}
 body.orbit-company .pet-carousel .tile-time,body.orbit-company #view .pet-carousel .tile-time{font-size:14px}
 .pet-team-card>summary{font-size:14px;padding:10px}
}
/* Customer portal: the same density, with only the customer's own records. */
@media(max-width:750px){
 body.orbit-pet .appointment-grid,body.orbit-pet .pet-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 body.orbit-pet :is(.appointment-grid,.pet-grid)>.card{padding:12px!important;border-radius:15px!important}
 body.orbit-pet .pet-grid .pet-card{padding:12px!important}.pet-grid .pet-card h3{overflow-wrap:anywhere}
 body.orbit-pet .appointment-grid .actions{display:grid;grid-template-columns:1fr}.appointment-grid .actions button{white-space:normal;overflow-wrap:anywhere}
 body.orbit-pet .appointment-grid .row{gap:6px}.appointment-grid .date-box{flex-wrap:wrap;min-width:0}
 body.orbit-pet .appointment-grid .pet-detail{overflow-wrap:anywhere}
}
body.orbit-company .pet-carousel.pet-tiles{align-items:stretch}
body.orbit-company .pet-carousel .pet-tile>details{height:100%}
body.orbit-company .pet-carousel .pet-tile-summary{height:100%}
body.orbit-company .pet-carousel :is(.tile-name,.tile-time),.pet-team-card>summary{max-width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;hyphens:auto}
.customer-record-summary{display:grid;gap:8px;cursor:pointer;min-height:110px;padding:14px;list-style:none}.customer-record-summary::before{content:'🐾';font-size:23px}.customer-record-name{font-size:16px;overflow-wrap:anywhere;white-space:normal}.customer-record-time{font-size:14px;color:var(--o-accent,#ffd23f)}
.customer-record:has(details[open]){grid-column:1/-1}.customer-record-body{padding:14px}.customer-record>details{min-width:0}.customer-record>details[open]>.customer-record-summary{border-bottom:1px solid var(--o-line,#3d414c)}
@media(min-width:380px) and (max-width:750px){body.orbit-pet .appointment-grid:has(.customer-record){grid-template-columns:repeat(3,minmax(0,1fr))}.customer-record-summary{padding:10px}.customer-record-name{font-size:14px}}
@media(max-width:750px){body.orbit-pet .appointment-grid>.customer-record{padding:0!important}body.orbit-pet .pet-grid:has(.customer-pet-record){grid-template-columns:repeat(2,minmax(0,1fr))}.customer-pet-record{min-width:0}.customer-pet-record>summary{min-height:90px;padding:12px;cursor:pointer;overflow-wrap:anywhere}.customer-pet-record[open]{grid-column:1/-1}}
/* Preserve the whole name. Longer names receive extra grid columns. */
body.orbit-company .pet-carousel .tile-name,body.orbit-company #view .pet-carousel .pet-tile-summary .tile-name,.pet-team-card>summary,.customer-record-name{white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;overflow-x:auto;max-width:100%;line-height:1.5;scrollbar-width:thin}
@media(max-width:750px){body.orbit-company.orbit-industrial .orbit-feedback-launcher{font-size:0!important;width:44px!important;min-width:44px!important;height:44px;padding:0!important;right:12px;bottom:calc(80px + env(safe-area-inset-bottom))}}
/* Financial totals need more room than compact appointment names. */
@media(max-width:750px){
 body.orbit-company :is(.summary-grid:not(.owner-stats),.stats),body.orbit-company #view .summary-grid:not(.owner-stats){display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:8px}
 body.orbit-company .summary-grid:not(.owner-stats) .summary,body.orbit-company .stats .card{padding:12px!important;min-width:0}
 body.orbit-company .summary-grid:not(.owner-stats) strong,body.orbit-company .stats .card strong{font-size:22px!important;white-space:nowrap;overflow-wrap:normal;word-break:normal;max-width:100%;overflow-x:auto}
}
@media(max-width:750px){body.orbit-company .stats .card>p{white-space:nowrap;overflow-wrap:normal;max-width:100%;overflow-x:auto}}
