/* Responsive layouts shared by the public site, customer portal and administration. */
html{ -webkit-text-size-adjust:100%;text-size-adjust:100% }
.p-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.p-main,.p-workspace,.p-page-heading>div,.p-client-detail-head>div,.p-dialog-header>div,.p-section-heading>div,.p-form-grid>*,.p-client-mini>div,.p-upcoming-row>div,.p-audit-row>div{min-width:0}
.p-page-heading h1,.p-client-detail-head h1,.p-card h2,.p-welcome h2,.p-dialog h2,.p-dialog h3,.p-eyebrow,.p-small,.p-service-price,.p-service-details,.p-payment-info,.p-audit-row,.p-upcoming-row,.p-notice{overflow-wrap:anywhere}
.p-button{white-space:normal;text-align:center;line-height:1.5;max-width:100%}
.p-account{min-width:44px;min-height:44px}
.p-account .p-avatar,.p-dot,.p-product-icon,.p-avatar{flex-shrink:0}
.p-table{white-space:normal}
.p-table td{overflow-wrap:anywhere}
.p-table small{display:inline-block;line-height:1.6}
.p-table-wrap{container-type:inline-size}
.p-line-field{gap:5px;font-size:16px;line-height:1.4}
.p-line-row{align-items:end;grid-template-columns:minmax(140px,1fr) 85px 130px 105px 44px}
.p-line-row>button{min-height:44px;min-width:44px}
.p-line-total{align-self:center;overflow-wrap:anywhere}
.p-sidebar-close{display:none}
.p-menu-backdrop{position:fixed;inset:0;z-index:39;background:#122c5966;backdrop-filter:blur(3px)}
.p-sidebar{overflow-y:auto;overscroll-behavior:contain;height:100dvh;padding-bottom:max(24px,env(safe-area-inset-bottom))}
.p-menu-open,body:has(.p-dialog[open]){overflow:hidden}
.p-dialog{overscroll-behavior:contain;scrollbar-gutter:stable;scroll-padding-block:24px}
.p-dialog input,.p-dialog select,.p-dialog textarea{max-width:100%;min-height:48px}
.p-dialog-header{position:sticky;top:0;z-index:5;background:#fff}
.p-dialog-close{flex-shrink:0;width:44px;height:44px;min-width:44px}
.p-dialog-footer{flex-wrap:wrap}
.p-invoice-totals>div{flex-wrap:wrap;row-gap:5px}
.p-invoice-totals strong{overflow-wrap:anywhere}
.p-service-meta>div{flex-wrap:wrap;row-gap:4px}
.p-service-meta strong{overflow-wrap:anywhere}
/* The available card width, rather than device name, determines the table layout. */
@container (max-width:760px){
 .p-responsive-table,.p-responsive-table tbody{display:block;width:100%;white-space:normal}
 .p-responsive-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%)}
 .p-responsive-table tbody{display:grid;gap:12px}
 .p-responsive-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-width:0;border:1px solid #c4d3e7;border-radius:12px;background:#fff;overflow:hidden}
 .p-responsive-table tbody td{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;justify-items:start;gap:3px;white-space:normal;text-align:left;padding:10px 12px;border:0;max-width:none;min-width:0;font-size:16px;line-height:1.5}
 .p-responsive-table tbody td:before{content:attr(data-label);font-size:16px;line-height:1.5;color:#354c66;font-weight:600}
 .p-responsive-table tbody td:first-child{grid-column:1/-1;background:#f0f5ff;padding-block:12px}
 .p-responsive-table tbody td:first-child:before{content:none}
 .p-responsive-table tbody td:first-child strong{font-size:17px}
 .p-responsive-table tbody td br{display:none}
 .p-responsive-table tbody td:last-child{border-bottom:0}
 .p-responsive-table tbody td.p-money{font-size:21px;text-align:left;line-height:1.4}
 .p-responsive-table tbody td.p-cell-actions{display:flex;align-items:center;background:#f8faff;padding:8px 12px}
 .p-responsive-table tbody td.p-cell-actions:before{content:none}
 .p-responsive-table .p-cell-actions .p-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:8px;background:#edf3ff;border:1px solid #c4d3e7;border-radius:8px;white-space:normal;line-height:1.4}
 .p-responsive-table .p-badge{justify-self:start;white-space:normal}
 .p-responsive-table .p-client-mini{align-items:flex-start;max-width:100%}
 .p-responsive-table .p-client-mini small{overflow-wrap:anywhere}
 .p-client-table tbody td[data-label="Cuenta"],.p-plan-table tbody td[data-label="Catálogo"]{display:flex;align-items:center}
 .p-client-table tbody td[data-label="Cuenta"]:before,.p-plan-table tbody td[data-label="Catálogo"]:before{content:none}
 .p-client-table tbody td[data-label="Saldo USD"],.p-plan-table tbody td[data-label="Precio USD"]{justify-items:end;text-align:right}
 .p-client-table tbody td.p-cell-actions,.p-plan-table tbody td.p-cell-actions{background:white}
 .p-invoice-table tbody tr{grid-template-columns:minmax(0,1fr) auto;background:#fff}
 .p-invoice-table tbody td[data-label="Factura"]{grid-column:1;grid-row:1;background:#f0f5ff}
 .p-invoice-table tbody td[data-label="Estado"]{grid-column:2;grid-row:1;align-content:start;justify-items:end;background:#f0f5ff;padding-top:12px}
 .p-invoice-table tbody td[data-label="Estado"]:before{content:none}
 .p-invoice-table tbody td[data-label="Empresa"]{grid-column:1/-1;padding-block:7px;border-bottom:1px solid #e3ebf5;display:block}
 .p-invoice-table tbody td[data-label="Empresa"]:before{content:'Empresa · ';font-weight:600}
 .p-invoice-table tbody td[data-label="Vencimiento"]{grid-column:1}
 .p-invoice-table tbody td[data-label="Total USD"]{grid-column:2;justify-items:end;text-align:right}
 .p-invoice-table tbody td[data-label="Vencimiento"]:before{content:'Vence'}
 .p-invoice-table tbody td.p-cell-actions{grid-column:1/-1;justify-content:flex-end;padding-top:0;background:#fff}
 .p-invoice-table .p-cell-actions .p-link{width:auto;min-width:132px}
 .p-line-items-table tbody tr{grid-template-columns:minmax(0,.7fr) minmax(0,1fr) minmax(0,1fr)}
 .p-line-items-table tbody td:not(:first-child){padding-inline:8px;gap:5px}
 .p-line-items-table tbody td.p-money{font-size:18px;justify-items:end;text-align:right}
 .p-line-items-table tbody td:before{font-size:16px}
}
@media(max-width:1080px){
 .mobile-nav{max-height:calc(100dvh - 88px);overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(24px,env(safe-area-inset-bottom))}
 .mobile-nav a,.mobile-nav button{min-height:44px;line-height:1.5}
 .hero-grid,.products-grid,.process-grid,.solutions-layout,.footer-main,.capabilities-grid,.pricing-grid,.related-products>div{min-width:0}
 .hero-grid>*{min-width:0}
 .p-dialog .p-line-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px}
 .p-line-row .p-line-description{grid-column:1/-1;grid-row:1}
 .p-line-row .p-line-quantity{grid-column:1;grid-row:2}
 .p-line-row .p-line-price{grid-column:2;grid-row:2}
 .p-dialog .p-line-row>button{grid-column:3;grid-row:2}
 .p-dialog .p-line-row .p-line-total{grid-column:1/-1;grid-row:3}
}
@media(max-width:800px){
 .p-sidebar{width:min(320px,calc(100vw - 32px));z-index:40;padding:32px 22px;padding-top:max(32px,env(safe-area-inset-top));visibility:hidden;transition:transform .25s,visibility .25s}
 .p-sidebar.is-open{visibility:visible}
 .p-sidebar-close{display:grid;place-items:center;position:absolute;right:12px;top:12px;width:44px;height:44px;font-size:30px;border-radius:9px;background:#edf3ff;color:#193d63}
 .p-sidebar .p-brand{padding-right:38px;font-size:28px}
 .p-sidebar-bottom{margin-top:28px}
 .p-nav-button{min-height:50px;line-height:1.5}
 .p-mobile-toggle,.p-refresh{min-width:44px;min-height:44px;flex-shrink:0}
 .p-topbar{height:auto;min-height:78px;padding-block:10px}
 .p-topbar>div:first-of-type{min-width:0;flex:1}
 .p-topbar #topbar-label{max-width:none;overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
 .p-topbar-actions{flex-shrink:0}
 .p-page-heading{gap:20px}
 .p-heading-actions{justify-content:flex-start}
 .p-form-grid{grid-template-columns:1fr}
 .p-main label,.p-dialog label{overflow-wrap:anywhere}
 .p-service-meta>div{display:grid;grid-template-columns:minmax(0,1fr);gap:5px}
 .p-upcoming-row{display:grid;grid-template-columns:44px minmax(0,1fr);gap:12px}
 .p-upcoming-row>div:last-child{grid-column:2;text-align:left;margin-left:0}
 .p-upcoming-row>div:last-child strong{font-size:22px}
 .p-client-detail-head{align-items:flex-start;flex-wrap:wrap}
 .p-client-detail-head>div:not(.p-client-detail-actions){flex:1;min-width:160px}
 .p-client-detail-actions{width:100%;margin-left:0}
 .p-dialog-header{gap:10px}
 .p-invoice-view .p-table td:first-child{max-width:none}
 .p-line-description select{width:100%}
 .p-lines-label{gap:12px;align-items:flex-start;flex-wrap:wrap;line-height:1.6}
 .p-lines-label button{min-height:44px;flex-shrink:0}
 .p-invoice-currency{text-align:left}
}
@media(max-width:560px){
 .container{width:calc(100% - 32px)}
 .nav-inner{gap:8px;min-height:78px;height:auto;padding-block:12px}
 .nav-actions{margin-left:auto;flex-shrink:0}
 .menu-toggle{min-width:44px;min-height:44px}
 .mobile-nav{max-height:calc(100dvh - 78px)}
 .hero h1,.detail-hero h1{white-space:normal;overflow-wrap:anywhere;font-size:clamp(38px,10.7vw,55px)}
 .hero-bottom{flex-wrap:wrap}
 .hero-actions .button,.contact-content .hero-actions .button{width:100%;justify-content:center;white-space:normal;text-align:center;line-height:1.5}
 .hero-actions .text-link{line-height:1.5;text-align:center}
 .section-heading h2,.solutions-intro h2,.faq-section h2,.pricing-intro h2,.contact-content h2{font-size:clamp(30px,8.5vw,38px);overflow-wrap:anywhere}
 .product-card h3,.gallery-heading>span,.related-products strong,.footer-links a{overflow-wrap:anywhere;min-width:0}
 .product-card-content,.products-grid .product-card-content{padding:24px 20px}
 .product-card-bottom{flex-wrap:wrap}
 .pricing-grid,.pricing-grid.four-plans{grid-template-columns:minmax(0,1fr)}
 .pricing-card,.four-plans .pricing-card{min-width:0;padding:28px 22px}
 .plan-price{flex-wrap:wrap;white-space:normal;row-gap:8px}
 .plan-price>small,.four-plans .plan-price small{flex-basis:100%;margin-left:0;line-height:1.5}
 .dev-flow>div{grid-template-columns:28px minmax(0,1fr) 33px}
 .dev-flow strong,.dev-flow p{overflow-wrap:anywhere}
 .product-card h3 .product-icon{flex-shrink:0}
 .solution-row{grid-template-columns:28px minmax(0,1fr);column-gap:10px}
 .solution-row-icon{display:none}
 .solution-row h3{font-size:27px;overflow-wrap:anywhere}
 .solution-product,.solution-label,.product-features li{white-space:normal;overflow-wrap:anywhere}
 .contact-band{padding:32px 22px}
 .contact-content .hero-actions{align-items:stretch}
 .contact-email{display:flex;flex-wrap:wrap;gap:8px;line-height:1.6}
 .footer-main{grid-template-columns:1fr;gap:26px}
 .footer-brand{grid-column:auto}
 .footer-links a,.footer-links button{min-height:44px;display:flex;align-items:center}
 .contact-dialog{width:calc(100% - 20px);max-width:none;max-height:calc(100dvh - 20px);padding:0;overscroll-behavior:contain}
 .dialog-inner{padding:64px 20px 24px}
 .dialog-inner h2{font-size:32px;overflow-wrap:anywhere}
 .dialog-close{width:44px;height:44px;top:10px;right:10px}
 .dialog-email{flex-wrap:wrap;overflow-wrap:anywhere;gap:12px}
 .dialog-email button{min-height:44px}
 .image-dialog{width:calc(100% - 20px);max-width:none;max-height:calc(100dvh - 20px)}
 .image-dialog-header{align-items:flex-start;gap:10px}
 .image-dialog-header button{min-width:44px;min-height:44px}
 .p-main{padding:26px 14px}
 .p-card{padding:20px 16px}
 .p-welcome{padding:24px 20px}
 .p-page-heading h1{font-size:32px}
 .p-topbar{padding-inline:8px;gap:4px}
 .p-topbar-actions{gap:0}
 .p-topbar>div:first-of-type{gap:6px}
 .p-topbar .p-dot{width:5px;height:5px}
 .p-heading-actions,.p-client-detail-actions{display:grid;grid-template-columns:minmax(0,1fr)}
 .p-heading-actions .p-button,.p-client-detail-actions .p-button{width:100%;min-height:48px}
 .p-welcome-actions{align-items:stretch;flex-direction:column}
 .p-welcome-actions button{width:100%;min-height:48px;text-align:center}
 .p-breakdown span{width:100%;overflow-wrap:anywhere;line-height:1.6}
 .p-section-heading{gap:14px}
 .p-section-heading>button{min-height:44px}
 .p-stats{grid-template-columns:minmax(0,1fr)}
 .p-stat strong{font-size:clamp(30px,9vw,38px);overflow-wrap:anywhere}
 .p-toolbar{gap:16px}
 .p-toolbar input,.p-toolbar select{width:100%;max-width:none}
 .p-filters{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
 .p-filter{min-height:46px;font-size:16px;padding:9px 6px;white-space:normal}
 .p-filters .p-filter:first-child{grid-column:1/-1}
 .p-dialog{width:calc(100% - 16px);max-width:none;max-height:calc(100dvh - 16px);border-radius:16px;scroll-padding-top:170px}
 .p-dialog-header{padding:20px 16px 16px}
 .p-dialog-header h2{font-size:26px}
 .p-dialog-header p{font-size:17px;line-height:1.55}
 .p-dialog-header .p-eyebrow{font-size:16px;letter-spacing:0}
 .p-dialog-body,.p-invoice-view{padding:22px 16px max(24px,env(safe-area-inset-bottom))}
 .p-dialog-footer{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
 .p-dialog-footer .p-button{width:100%;min-height:48px}
 .p-dialog .p-line-row{padding:14px 10px;gap:12px 8px}
 .p-line-field span{font-weight:600}
 .p-dialog .p-line-row .p-line-total{text-align:left;justify-self:start}
 .p-dialog .p-dialog-feedback{margin:12px 16px}
 .p-toast{right:12px;bottom:max(12px,env(safe-area-inset-bottom));max-width:calc(100% - 24px);overflow-wrap:anywhere}
 .auth-aside{padding:26px 20px}
 .auth-form-side{padding:32px 20px 44px}
 .auth-security{flex-wrap:wrap}
 .p-password-help .p-text-link{min-height:44px;text-align:left}
}
@media(max-width:380px){
 .nav-actions>.button{display:none}
 .hero-actions .button{padding-inline:14px;gap:10px}
 .p-client-mini{gap:9px}
 .p-responsive-table .p-client-mini{flex-direction:column}
 .p-dialog .p-line-row{grid-template-columns:minmax(0,1fr) 44px}
 .p-line-row .p-line-quantity{grid-column:1;grid-row:2}
 .p-line-row .p-line-price{grid-column:1;grid-row:3}
 .p-dialog .p-line-row>button{grid-column:2;grid-row:2}
 .p-dialog .p-line-row .p-line-total{grid-column:1/-1;grid-row:4}
}
@media(max-height:600px) and (max-width:800px){
 .p-dialog-header{position:relative}
 .p-dialog{scroll-padding-top:20px}
 .p-sidebar{padding-top:20px}
}
/* Dense mobile workspaces: pair related values instead of stretching each over a full row. */
@media(max-width:800px){
 .p-main{padding:22px 16px}
 .p-topbar{min-height:64px;padding-block:8px}
 .p-page-heading{margin-bottom:20px;gap:14px}
 .p-page-heading h1{font-size:30px}
 .p-page-heading p{font-size:16px;line-height:1.55;margin-top:7px}
 .p-page-heading .p-eyebrow{font-size:16px;letter-spacing:.04em}
 .p-heading-actions{display:flex;gap:8px;flex-wrap:wrap}
 .p-heading-actions .p-button{flex:1 1 140px;min-height:44px;padding:10px 9px;line-height:1.4;font-size:16px}
 .p-welcome{padding:18px 20px;min-height:0}
 .p-welcome h2{font-size:23px;line-height:1.25}
 .p-welcome .p-eyebrow,.p-welcome p{display:none}
 .p-welcome .p-eyebrow{font-size:16px;line-height:1.4;letter-spacing:.02em;margin-bottom:8px}
 .p-welcome p{font-size:16px;line-height:1.55;margin-top:8px}
 .p-welcome p br{display:none}
 .p-welcome-actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:stretch;gap:8px;margin-top:14px}
 .p-welcome-actions button{width:auto;flex:1 1 120px;min-height:44px;padding:9px 8px;font-size:16px;line-height:1.4}
 .p-welcome-art{display:none}
 .p-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}
 .p-stat{padding:14px;min-width:0}
 .p-stat-top{display:block;position:relative;padding-right:25px;font-size:16px;line-height:1.35;margin-bottom:8px;min-height:0}
 .p-stat-icon{position:absolute;right:0;top:0;width:23px;height:23px;border-radius:7px}
 .p-stat-icon svg{width:14px;height:14px}
 .p-stats .p-stat strong{font-size:28px;line-height:1.15;letter-spacing:-.035em}
 .p-stats .p-stat small{font-size:16px;line-height:1.4;margin-top:7px}
 .p-card:not(.p-stat){padding:18px}
 .p-section-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start;margin-bottom:15px}
 .p-section-heading h2{font-size:22px;line-height:1.3}
 .p-section-heading p{font-size:16px;line-height:1.55;margin-top:5px}
 .p-section-heading>button{min-height:44px;font-size:16px;line-height:1.4;text-align:right;padding:0 0 0 4px;max-width:110px}
 .p-grid,.p-stack,.p-service-grid,.p-account-grid{gap:16px}
 .p-upcoming-row{grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px 0}
 .p-upcoming-row .p-product-icon,.p-upcoming-row>.p-avatar{width:32px;height:32px}
 .p-upcoming-row strong{font-size:16px;line-height:1.45}
 .p-upcoming-row small{font-size:16px;line-height:1.45;margin-top:4px}
 .p-upcoming-row>div:last-child{grid-column:3;text-align:right;margin-left:0;max-width:100px}
 .p-upcoming-row>div:last-child strong{font-size:19px}
 .p-client-row{grid-template-columns:32px minmax(0,1fr)}
 .p-client-row>div:last-child{grid-column:2;text-align:left;max-width:none}
 .p-client-row .p-text-link{min-height:44px;padding:6px 0}
 .p-balance-note{font-size:16px;line-height:1.55;padding:12px;margin-top:14px}
 .p-breakdown{gap:8px}
 .p-breakdown span{width:auto;flex:1 1 140px;padding:9px 12px;font-size:16px;line-height:1.5}
 .p-service-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,110px);column-gap:12px}
 .p-service-top{grid-column:1/-1;margin-bottom:12px}
 .p-service-top .p-product-icon{width:34px;height:34px;border-radius:9px}
 .p-service-card h2{grid-column:1;grid-row:2;font-size:22px;line-height:1.25}
 .p-service-card .p-plan-name{grid-column:1;grid-row:3;font-size:16px;line-height:1.5;margin-top:5px}
 .p-service-price{grid-column:2;grid-row:2/4;align-self:start;text-align:right;font-size:25px;line-height:1.2;margin:0;letter-spacing:-.04em}
 .p-service-price small{display:block;font-size:16px;line-height:1.45;margin-top:5px;letter-spacing:0}
 .p-service-meta{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px;padding-top:14px;font-size:16px}
 .p-service-meta>div{gap:4px}
 .p-service-meta strong{font-size:16px;line-height:1.5}
 .p-service-card .p-service-details{grid-column:1/-1;font-size:16px;line-height:1.55;margin:14px 0 0}
 .p-service-card .p-button{grid-column:1/-1;min-height:44px;margin-top:14px}
 .p-toolbar{gap:12px;margin-bottom:18px}
 .p-filters{display:flex;flex-wrap:wrap;gap:4px;padding:4px}
 .p-filter{flex:1 1 90px;min-height:44px;font-size:16px;padding:8px 9px}
 .p-client-detail-actions{display:flex;flex-wrap:wrap;gap:8px}
 .p-client-detail-actions .p-button{width:auto;flex:1 1 140px;min-height:44px;padding:9px 10px}
 .p-client-detail-head h1{font-size:29px}
 .p-client-info{font-size:16px;line-height:1.55}
 .p-audit-row{font-size:16px;gap:11px;padding:13px 0;line-height:1.5}
 .p-audit-row small{font-size:16px;line-height:1.5}
 .p-definition{grid-template-columns:110px minmax(0,1fr);gap:12px;font-size:16px}
 .p-definition dd{margin-bottom:0}
 .p-dialog-header h2{font-size:25px}
 .p-dialog-header p{font-size:16px}
 .p-dialog-body,.p-invoice-view{padding:20px 16px}
 .p-dialog-footer{display:flex;flex-wrap:wrap;gap:8px}
 .p-dialog-footer .p-button{width:auto;flex:1 1 120px;min-height:44px;padding:10px;font-size:16px;line-height:1.4}
 .p-dialog .p-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}
 .p-dialog .p-form-grid>label{grid-column:1/-1}
 .p-dialog .p-form-grid>label:has(>input[type=number]),.p-dialog .p-form-grid>label:has(>input[type=date]),.p-dialog .p-form-grid>label:has(>select[name=billing_cycle]),.p-dialog .p-form-grid>label:has(>select[name=status]),.p-dialog .p-form-grid>label:has(>select[name=account_status]),.p-dialog .p-form-grid>label:has(>select[name=active]){grid-column:auto}
 .p-dialog label{font-size:16px;gap:6px}
 .p-dialog input,.p-dialog select,.p-dialog textarea{font-size:16px;min-height:46px;padding:11px 12px}
 .p-empty{padding:22px 10px}
 .p-empty h3{font-size:21px}
 .p-empty p{font-size:16px;line-height:1.6}
}
@media(max-width:560px){
 .p-main{padding:20px 12px}
 .p-page-heading h1{font-size:29px}
 .p-card:not(.p-stat){padding:16px}
 .p-welcome{padding:18px}
 .p-section-heading h2{font-size:21px}
 .p-stats .p-stat strong{font-size:clamp(23px,6.4vw,28px)}
 .p-stat-top{padding-right:0;min-height:0}
 .p-stat-icon{display:none}
 .p-invoice-totals{font-size:16px}
 .p-invoice-totals>div:last-child{font-size:22px}
 .p-form-stack{gap:16px}
 .p-dialog .p-form-grid>label:has(>input[type=date]){grid-column:1/-1}
 .p-footer{padding:16px 12px}
}
@media(max-width:380px){
 .p-stat{padding:12px}
 .p-stats{gap:8px}
 .p-service-card{grid-template-columns:minmax(0,1fr) minmax(0,92px);column-gap:9px}
 .p-service-card h2{font-size:20px}
 .p-service-price{font-size:23px}
 .p-dialog .p-form-grid>label:has(>input[type=date]){grid-column:1/-1}
 .p-definition{grid-template-columns:1fr;gap:6px}
 .p-definition dd{margin-bottom:8px}
 .p-responsive-table .p-client-mini{flex-direction:row}
}
.p-invoice-table-wrap{container-type:inline-size;container-name:invoice-list}
.p-invoice-table .p-invoice-issued{display:block;margin-top:4px}
.p-invoice-table .p-invoice-mobile-state{display:none}
.p-invoice-table .p-invoice-total{text-align:right}
.p-invoice-table th{letter-spacing:0}
.p-invoice-table th,.p-invoice-table td{padding:12px 10px;font-size:16px;line-height:1.4}
.p-invoice-table td strong{font-size:16px;line-height:1.4}
.p-invoice-table td.p-money{font-size:18px}
.p-invoice-table .p-invoice-actions{text-align:right;width:65px}
.p-invoice-table .p-invoice-actions .p-link{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:8px;font-size:16px;border:1px solid #b8cae4;border-radius:8px;background:#edf3ff;color:#174c92}
.p-invoice-table .p-invoice-billed,.p-invoice-table .p-invoice-company{white-space:normal;overflow-wrap:anywhere;max-width:260px}
.p-invoice-table .p-invoice-billed>strong{display:block}
.p-invoice-concept{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;white-space:normal;overflow-wrap:anywhere;font-size:16px;line-height:1.4;color:#354f70;margin-top:4px;font-weight:500}
.p-invoice-concept-row{display:none}
.p-invoice-table .p-invoice-group-heading th{padding:12px 10px;background:#f5f8fd;border-radius:0;border-top:1px solid #c6d5e8;border-bottom:1px solid #dce6f3;white-space:normal;letter-spacing:0}
.p-invoice-table .p-invoice-group:first-of-type .p-invoice-group-heading th{border-top:0}
.p-invoice-group-title{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:16px;line-height:1.4}
.p-invoice-group-title>span:first-child{min-width:0;overflow-wrap:anywhere}
.p-invoice-group-label{color:#354f70;font-weight:500;margin-right:8px}
.p-invoice-group-title strong{color:#142f4a;font-weight:800}
.p-invoice-group-count{flex-shrink:0;color:#354f70;font-weight:500}
@container invoice-list (max-width:760px){
 .p-invoice-table{table-layout:auto;width:100%;white-space:normal}
 .p-invoice-table .p-invoice-company,.p-invoice-table .p-invoice-billed,.p-invoice-table .p-invoice-state,.p-invoice-table .p-invoice-issued{display:none}
 .p-invoice-table .p-invoice-mobile-state{display:block;margin-top:5px}
 .p-invoice-table th,.p-invoice-table td{padding:10px 6px;vertical-align:middle;font-size:16px;line-height:1.4}
 .p-invoice-table th:first-child,.p-invoice-table td:first-child{padding-left:0}
 .p-invoice-table th:last-child,.p-invoice-table td:last-child{padding-right:0}
 .p-invoice-table td strong{font-size:16px;line-height:1.4}
 .p-invoice-table .p-invoice-number{width:auto}
 .p-invoice-table .p-invoice-total{width:32%}
 .p-invoice-table td.p-money{font-size:18px;line-height:1.4;overflow-wrap:normal}
 .p-invoice-table .p-invoice-actions{width:52px}
 .p-invoice-table .p-invoice-actions .p-link{min-width:44px;min-height:44px;padding:6px}
 .p-invoice-table .p-badge{font-size:16px;line-height:1.35;padding:3px 6px;max-width:100%;white-space:normal}
 .p-invoice-table .p-invoice-group-heading th{padding:10px 0}
 .p-invoice-group-title{align-items:flex-start;gap:8px}
 .p-invoice-group-label{display:block;margin:0 0 2px}
 .p-invoice-table .p-invoice-row td{border-bottom:0}
 .p-invoice-concept-row{display:table-row}
 .p-invoice-table .p-invoice-concept-row td{padding:0 0 10px}
 .p-invoice-concept-row .p-invoice-concept{margin:0}
}
@media print{
 .p-menu-backdrop,.p-sidebar-close{display:none!important}
 body:has(.p-dialog[open]){overflow:visible}
 .p-table-wrap{container-type:normal}
 .p-dialog-header{position:static}
 .p-responsive-table{display:table}
 .p-responsive-table thead{display:table-header-group;position:static;clip-path:none;width:auto;height:auto}
 .p-responsive-table tbody{display:table-row-group}
 .p-responsive-table tr{display:table-row}
 .p-responsive-table td{display:table-cell}
 .p-responsive-table td:before{content:none}
}
