/* V46: common flow safeguards; brand, themes and immersive scenes remain inherited. */
:root{scroll-padding-top:100px}*,*:before,*:after{box-sizing:border-box}
.header nav a:focus-visible,.button:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #a873ee;outline-offset:4px}
.q-shell,.q-step,.q-receipt,.q-controls,.admin-card,.sp-dialog-box{overflow-wrap:anywhere}
.q-shell :is(input,textarea,select){font-size:16px}.q-shell :is(button,.button){max-width:100%;white-space:normal;min-height:44px}
.q-shell button:not(.button){font:inherit;color:inherit;background:var(--card,var(--bg,#fff));border:1px solid var(--line,#94949c);border-radius:12px;padding:10px 16px;cursor:pointer}
.q-shell button:disabled{cursor:default}.save-strip{flex-wrap:wrap;line-height:1.6}.q-shell [aria-busy=true]{cursor:progress}
.q-step input,.q-step textarea,.access-panel input{scroll-margin-block:140px}.q-step :is(p,legend,dd){line-height:1.65}.q-controls{flex-wrap:wrap}
.access-panel{max-width:680px;border:1px solid var(--line,#94949c);border-radius:24px;padding:clamp(18px,4vw,32px);margin:24px 0;background:var(--card,transparent)}
.access-panel label{display:block;font-weight:650;margin-bottom:10px}.access-panel input[type=email]{width:100%;min-height:48px;border:1px solid var(--line,#94949c);border-radius:12px;padding:12px;background:var(--bg,#fff);color:inherit;font:inherit}
.access-actions,.admin-filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:16px 0}.admin-filters label{display:block;flex:1;min-width:160px}.admin-filters select,.admin-filters input{display:block;width:100%;font:inherit;color:inherit;background:var(--bg,#fff);border:1px solid var(--line,#94949c);padding:12px;border-radius:12px;min-height:48px}
.admin-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.admin-detail-grid>section{min-width:0}.admin-detail-grid h3{margin-top:0}.admin-table{border-collapse:collapse;width:100%;font-size:.875rem}.admin-table th,.admin-table td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line,#94949c);vertical-align:top;overflow-wrap:anywhere}.admin-table-wrap{overflow:auto;max-width:100%;scrollbar-width:thin}.admin-note{display:block;width:100%;font:inherit;padding:12px;min-height:100px;border:1px solid var(--line,#94949c);border-radius:12px;background:var(--bg,#fff);color:inherit}
.admin-card .button,.admin-card button,.admin-card select,.admin-card a{margin:4px 0}.admin-card .file-grid a{display:block}.tracking-timeline li{line-height:1.7}.tracking-timeline [aria-current=step]{background:color-mix(in srgb,#8b5cf6 8%,transparent);border-radius:8px}.tracking-summary{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.tracking-summary dt{margin:14px 0 6px}
.sp-site :is(h3,h4,p,strong,span){overflow-wrap:anywhere}.sp-nav{flex-wrap:wrap}.sp-brand{min-width:0;max-width:100%}.sp-dialog{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.sp-dialog-toolbar{gap:10px}.sp-dialog-toolbar button{flex-shrink:0}.sp-stage-mobile{width:390px;max-width:100%}.sp-site .sp-footer{flex-wrap:wrap}.sp-stage .sp-site{container-type:inline-size}.sp-details:empty{display:none}
@media(max-width:768px){.admin-detail-grid,.tracking-summary{grid-template-columns:1fr}.q-shell{padding-inline:16px}.q-step{padding:24px 18px}.q-main{padding:0}.q-controls{gap:8px}.q-aside{margin-top:4px}.q-top h1{overflow-wrap:normal}}
@media(max-width:390px){.q-shell{padding-inline:12px}.q-step{padding:20px 14px;border-radius:20px}.q-controls>.button{flex:1 1 110px}.q-controls>span{order:3;flex-basis:100%;text-align:center}.file-grid{grid-template-columns:1fr}.color-tools{grid-template-columns:64px minmax(0,1fr)}.color-tools input[type=color]{width:64px!important}.sp-dialog-box{padding:10px}.sp-dialog-toolbar{position:static}.sp-dialog-toolbar button{flex:1 1 90px}.sp-theme-controls{grid-template-columns:1fr}.q-receipt{padding:22px 16px}.admin-table th,.admin-table td{padding:10px 6px}}
@media(pointer:coarse){.q-controls:has(~ :focus-within){position:static}.q-main:focus-within .q-controls{position:static}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Commerce uses the existing theme and readable, independent contract sections. */
#trackingCommerce button,.admin-card section button{margin:.4rem .4rem .4rem 0;white-space:normal;min-height:44px}
#trackingCommerce dl,.admin-card section dl{overflow-wrap:anywhere}
.admin-card section form{display:grid;gap:1rem}.admin-card section form label{display:grid;gap:.4rem}.admin-card section input,.admin-card section textarea{max-width:100%;min-height:44px}
