/* V215: one content model across desktop, tablet and phone. */
html[data-layout215]{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:16px}
html[data-layout215] *,html[data-layout215] *::before,html[data-layout215] *::after{box-sizing:border-box}
html[data-layout215] body{min-width:0!important}
html[data-layout215] :is(input,select,textarea){max-width:100%}
html[data-layout215] :is(img,video,canvas,svg){max-width:100%}
html[data-layout215] :is(.container,.wrap,.page,.page-wrap,.content,.main-content){min-width:0;max-width:100%}
html[data-layout215] :is(.container,.service-main){width:min(1440px,calc(100% - 48px));margin-inline:auto}
html[data-layout215] :is(.grid,.grid-2,.grid-3,.svc-grid)>*{min-width:0}
html[data-layout215] :is(.page-title,.section-head,.service-heading,.dc-heading){overflow-wrap:anywhere}
html[data-layout215] :is(.card-name,.svc-body .n,.svc-body .b){white-space:normal;display:block;-webkit-line-clamp:unset;overflow:visible;overflow-wrap:anywhere}
html[data-layout215] .svc-cover{height:auto!important;aspect-ratio:4/3}
html[data-layout215] .svc-cover img{position:absolute;inset:0;object-fit:contain!important;background:var(--bg-2,#f6f7f9)}
html[data-layout215] :is(.rt215-scroll,.table-wrap,.table-scroll){max-width:100%;overflow-x:auto!important;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
html[data-layout215] .rt215-scroll{border-radius:10px}
html[data-layout215] .rt215-scroll:focus-visible{outline:2px solid #64748b;outline-offset:2px}
html[data-layout215] .rt215-table-hint{font-size:12px;color:#64748b;margin:6px 0;line-height:1.5}
html[data-layout215] .rt215-table-hint[hidden]{display:none!important}
html[data-layout215] :is(.pagination,.dc-pagination,.dc-page-buttons,.dc-page-form){flex-wrap:wrap;gap:8px}
html[data-layout215] :is(dialog,.modal-card,.detail-box,.drawer,.order-detail-panel,.dialog){max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px)}
html[data-layout215] dialog{overflow:auto}
html[data-layout215] :is(.modal-body,.detail-body,.drawer-body,.order-detail-body,.dialog-body){min-height:0;overflow:auto;overscroll-behavior:contain}
html[data-layout215] :is(.modal-card,.detail-box,.order-detail-panel) iframe{max-width:100%}
html[data-layout215] .foot-grid{gap:24px}
@media(min-width:1100px){
 html[data-layout215] .svc-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:20px!important}
 html[data-layout215] .public-home .grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1024px){
 html[data-layout215] :is(.dc-layout,.dispatch-layout,.dispatch-grid){grid-template-columns:minmax(0,1fr)!important}
 html[data-layout215] .container{width:calc(100% - 32px)}
 html[data-layout215] .svc-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:767px){
 html[data-layout215] body{font-size:14px;line-height:1.6}
 html[data-layout215] :is(.container,.service-main){width:calc(100% - 24px)!important;padding-inline:0!important}
 html[data-layout215] .site-header .bar{height:auto!important;min-height:64px;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-block:12px!important}
 html[data-layout215] .site-header .brand{min-width:0;max-width:65%}
 html[data-layout215] .site-header .brand img{max-width:140px;max-height:44px;object-fit:contain}
 html[data-layout215] .site-header .header-user{margin-left:auto;min-width:0;flex-wrap:wrap;gap:8px}
 html[data-layout215] .site-header .main-nav{order:3;width:100%;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible!important;gap:6px;flex-wrap:wrap}
 html[data-layout215] .site-header .main-nav a{white-space:normal!important;min-height:44px;display:flex;align-items:center;justify-content:center;text-align:center;padding:8px!important;font-size:13px;line-height:1.4}
 html[data-layout215] :is(.grid-2,.grid-3,.svc-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
 html[data-layout215] .foot-grid{grid-template-columns:1fr!important;gap:20px}
 html[data-layout215] :is(.search-box,.svc-search,.dc-filters){display:flex;flex-wrap:wrap;gap:10px;padding:12px}
 html[data-layout215] :is(.search-box,.svc-search,.dc-filters)>:is(input,select,label){min-width:0!important;flex:1 1 140px;width:auto!important}
 html[data-layout215] :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px!important;min-height:44px}
 html[data-layout215] :is(button,.btn,.button,.dc-button,.pagination a){min-height:44px;touch-action:manipulation}
 html[data-layout215] :is(.page-head,.page-heading,.dc-heading,.service-toolbar){flex-wrap:wrap;gap:12px}
 html[data-layout215] :is(.dc-layout,.dispatch-layout,.dispatch-grid,.form-grid,.detail-grid,.wd-form-grid,.boss-form-grid,.form-row,.ic-fields,.split,.detail-wrap){grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 html[data-layout215] :is(.svc-filter,.dc-status-tabs){flex-wrap:wrap;overflow:visible;gap:8px}
 html[data-layout215] :is(.svc-filter,.dc-status-tabs) a{white-space:normal}
 html[data-layout215] :is(.svc-body,.card-body){padding:12px!important}
 html[data-layout215] :is(.svc-body .p,.dc-row-actions){flex-wrap:wrap;gap:8px}
 html[data-layout215] :is(.d-top h1,.d-kf .t){min-width:0!important}
 html[data-layout215] .service-detail .d-body{padding:16px}
 html[data-layout215] :is(.wd-dialog,.boss-add-dialog,.dc-detail-dialog,dialog){width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;margin:auto!important;max-height:calc(100dvh - 24px)!important}
 html[data-layout215] :is(.modal-card,.detail-box,.order-detail-panel,.dialog){max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important}
 html[data-layout215] :is(.drawer){width:100%!important;max-width:100vw!important}
 html[data-layout215] .public-directory .rt215-scroll{overflow:visible!important}
 html[data-layout215] .public-directory table[data-cards215]{display:block;width:100%!important;min-width:0!important;background:transparent}
 html[data-layout215] .public-directory table[data-cards215] thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 html[data-layout215] .public-directory table[data-cards215] tbody{display:grid;gap:12px}
 html[data-layout215] .public-directory table[data-cards215] tr{display:block;padding:12px;border:1px solid var(--border,#e5e7eb);border-radius:12px;background:#fff}
 html[data-layout215] .public-directory table[data-cards215] td{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0!important;width:100%!important;text-align:right!important;padding:8px!important;border:0;white-space:normal!important;overflow-wrap:anywhere}
 html[data-layout215] .public-directory table[data-cards215] td::before{content:attr(data-label215);color:#64748b;flex-shrink:0;font-size:13px;text-align:left}
 html[data-layout215] .public-directory table[data-cards215] td>*{min-width:0}
 html[data-layout215] .public-directory .list-avatar{margin:0}
 /* Backend shell uses the existing menu toggle and persistence code. */
 html[data-layout215] body.rt215-shell .sidebar.collapsed{width:52px;min-width:52px}
 html[data-layout215] body.rt215-shell .sidebar:not(.collapsed){position:absolute;left:0;top:0;bottom:0;width:min(280px,85vw);min-width:0;z-index:50;box-shadow:12px 0 40px #0f172a30}
 html[data-layout215] body.rt215-shell .iframe-wrap{margin:4px;border-radius:8px}
 html[data-layout215] body.rt215-shell .main-top{padding-inline:16px;min-width:0;white-space:normal;height:auto;min-height:52px}
 html[data-layout215] body.rt215-shell .sidebar-toggle{min-height:36px;width:30px;right:-15px}
 html[data-layout215] body.rt215-shell .sidebar.collapsed .sidebar-brand{padding-inline:7px}
 html[data-layout215] body.rt215-shell .sidebar.collapsed .frontend-link{margin-inline:4px}
 html[data-layout215] body.rt215-shell .nav-item{min-height:44px}
}
@media(max-width:359px){html[data-layout215] :is(.svc-grid,.public-home .grid-3){grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){html[data-layout215] *{scroll-behavior:auto!important}}

@media(max-width:767px){
 html[data-layout215] dialog{inset:0!important;transform:none!important;margin:auto!important}
 html[data-layout215] :is(.dc-detail-summary,.dc-detail-summary dl){grid-template-columns:minmax(0,1fr)!important}
 html[data-layout215] .rt215-shell .sidebar-toggle{font-size:14px}
}

@media(max-width:767px){
 html[data-layout215] .control-main{margin-left:0;min-width:0;padding-inline:12px}
 html[data-layout215] .control-topbar{flex-wrap:wrap;gap:12px;padding-block:16px}
 html[data-layout215] :is(.filter-grid,.formgrid,.profile-grid){grid-template-columns:minmax(0,1fr)!important}
 html[data-layout215] .checks{grid-template-columns:1fr!important}
 html[data-layout215] .control-sidebar{max-width:85vw}
 html[data-layout215] :is(.inline,.club-list-toolbar){flex-wrap:wrap}
 html[data-layout215] .topbar-account{flex-wrap:wrap}
}
