.public-service-dialog{width:min(760px,calc(100% - 30px));border:0;border-radius:8px;padding:0;box-shadow:0 24px 70px #182c4d66}
.public-service-dialog::backdrop{background:#0d1d348c}
.public-service-dialog article{position:relative;padding:0 24px 20px;overflow:hidden}
.public-service-dialog h2{margin:0 -24px 20px;padding:18px 55px 18px 20px;background:linear-gradient(100deg,#3150f5,#5638f5);color:#fff;font-size:17px;font-weight:900;line-height:1.45}
.public-service-dialog .close{position:absolute;z-index:2;right:15px;top:10px;border:0;background:transparent;color:#fff;font-size:25px;font-weight:900;opacity:.85}
.public-service-dialog .close:hover{opacity:1}
.public-service-meta{display:none}
.public-service-description{min-height:220px;max-height:52vh;overflow-y:auto;white-space:pre-wrap;line-height:1.9;padding:6px 8px 20px;background:#fff;border:0;border-bottom:1px solid #e2e8f2;border-radius:0;margin-bottom:16px;color:#102d59;font-size:15px;font-weight:750;letter-spacing:.1px}
.public-service-actions{display:flex;justify-content:flex-end;gap:12px}
.public-service-actions button{min-width:132px;padding:12px 22px;border-radius:5px;font-size:14px;font-weight:900;cursor:pointer}
.public-service-close-button{border:0;background:#ec3348;color:#fff}
.public-service-order-button{border:0;background:#2782e9;color:#fff;box-shadow:0 6px 16px #267ed438}
.public-service-close-button:hover,.public-service-order-button:hover{filter:brightness(1.08);transform:translateY(-1px)}
@media(max-width:600px){.public-service-dialog h2{font-size:15px}.public-service-description{font-size:14px;min-height:180px}.public-service-actions{display:grid;grid-template-columns:1fr 1fr}.public-service-actions button{min-width:0}}
.toolbar #categoryFilter{width:230px;border:2px solid #4c72ff;background:linear-gradient(100deg,#d31758,#3f5df5);color:#fff;font-weight:800;box-shadow:0 0 0 3px #4a75ff21}
.toolbar #categoryFilter option{background:#fff;color:#17223b;font-weight:500}
.service-search-box{display:flex;flex:1;min-width:0}.service-search-box #serviceSearch{min-width:0;border-radius:8px 0 0 8px}.service-search-box button{flex:0 0 48px;border:0;border-radius:0 8px 8px 0;background:#d10939;color:#fff;font-size:20px;font-weight:900;cursor:pointer}.service-search-box button:hover{background:#b60730}.workspace:has(#page-services:not(.hidden)) .portal-topbar>div:first-of-type{visibility:hidden}
@media(max-width:760px){.toolbar #categoryFilter{width:100%}.service-search-box{width:100%}}
.service-category-nav{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 14px;margin-bottom:5px;scrollbar-width:thin}.service-category-nav button{flex:0 0 auto;border:1px solid #d9e1ee;border-radius:20px;background:#fff;color:#365074;padding:9px 14px;font-size:11px;font-weight:700;cursor:pointer}.service-category-nav button:hover,.service-category-nav button.active{border-color:#4968f3;background:linear-gradient(100deg,#3150f5,#643ce9);color:#fff;box-shadow:0 5px 14px #465ff32e}.service-category-nav .favorite-tab{color:#d28a00}.favorite-star{border:0;background:transparent;color:#93a0b5;font-size:21px;line-height:1;cursor:pointer;padding:5px}.favorite-star:hover{color:#ffb000;transform:scale(1.12)}.favorite-star.selected{color:#ffad00;text-shadow:0 2px 8px #ffb3005c}.service-catalog-head,.service-catalog-row{grid-template-columns:38px 70px minmax(330px,2.8fr) minmax(135px,1fr) 90px 100px 130px 80px}
.service-catalog-row.id-match{background:#fff9dc;box-shadow:inset 4px 0 #ffb000}.service-catalog-row.id-match>span:nth-child(2){color:#e07600;font-weight:900}
.service-category-banner{min-width:1000px;margin:12px 0 3px;padding:14px 22px;border-radius:9px;background:linear-gradient(100deg,#3150f5,#5638f5);color:#fff;font-size:14px;font-weight:900;box-shadow:0 6px 16px #465ff329}.service-category-banner:first-of-type{margin-top:12px}

/* Mobile catalog: replace the 1000px desktop grid with readable full-width cards. */
@media(max-width:760px){
  #page-services.card{padding:14px 12px}
  #page-services .toolbar{gap:10px}
  #page-services .service-table{overflow:visible;width:100%;min-width:0}
  #page-services .service-catalog-head{display:none}
  #page-services .service-category-banner{min-width:0;width:100%;margin:14px 0 6px;padding:12px 14px;border-radius:9px;font-size:14px}
  #page-services .service-catalog-row{min-width:0;width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto;grid-template-rows:auto auto auto auto;gap:7px 10px;padding:12px 10px;margin:0 0 8px;border:1px solid #e1e9f5;border-radius:10px;background:#fff;box-shadow:0 3px 12px rgba(31,78,135,.06);font-size:11px}
  #page-services .service-catalog-row>span{min-width:0}
  #page-services .service-catalog-row>span:nth-child(1){grid-column:1;grid-row:1/3;align-self:center}
  #page-services .service-catalog-row>span:nth-child(2){grid-column:2;grid-row:1;color:#5e708a;font-weight:800}
  #page-services .service-catalog-row>span:nth-child(2)::before{content:'ID ';color:#9aa7b8;font-weight:500}
  #page-services .service-catalog-row>span:nth-child(3){grid-column:2/4;grid-row:2;overflow-wrap:anywhere}
  #page-services .service-catalog-row>span:nth-child(4){grid-column:3;grid-row:1;text-align:right;white-space:nowrap}
  #page-services .service-catalog-row>span:nth-child(5){grid-column:2;grid-row:3}
  #page-services .service-catalog-row>span:nth-child(6){grid-column:3;grid-row:3;text-align:right}
  #page-services .service-catalog-row>span:nth-child(7){grid-column:2;grid-row:4}
  #page-services .service-catalog-row>span:nth-child(8){grid-column:3;grid-row:4;justify-self:end}
  #page-services .service-catalog-row>span:nth-child(5)::before{content:'最低 ';color:#8b98aa}
  #page-services .service-catalog-row>span:nth-child(6)::before{content:'最高 ';color:#8b98aa}
  #page-services .service-catalog-row>span:nth-child(7)::before{content:'时间 ';color:#8b98aa}
  #page-services .service-catalog-row .service-name b{line-height:1.45;white-space:normal}
  #page-services .service-catalog-row .service-name small{white-space:normal;overflow-wrap:anywhere}
  #page-services .service-catalog-row .outline{padding:7px 11px}
}
