/* Quiet technical framing: bracketed perimeter, inset rule, fine grid. */
.detailed-surface{--trim-line:rgba(255,255,255,.25);--trim-corner:rgba(255,255,255,.58);--trim-grid:rgba(255,255,255,.025)}
.surface-positioned{position:relative}
.surface-trim{position:absolute;inset:3px;z-index:3;display:block!important;pointer-events:none!important;border-radius:inherit;overflow:hidden;
  background:linear-gradient(var(--trim-corner),var(--trim-corner)) left top/14px 2px no-repeat,linear-gradient(var(--trim-corner),var(--trim-corner)) left top/2px 14px no-repeat,linear-gradient(var(--trim-corner),var(--trim-corner)) right top/14px 2px no-repeat,linear-gradient(var(--trim-corner),var(--trim-corner)) right top/2px 14px no-repeat,linear-gradient(var(--trim-corner),var(--trim-corner)) left bottom/14px 2px no-repeat,linear-gradient(var(--trim-corner),var(--trim-corner)) left bottom/2px 14px no-repeat,linear-gradient(var(--trim-corner),var(--trim-corner)) right bottom/14px 2px no-repeat,linear-gradient(var(--trim-corner),var(--trim-corner)) right bottom/2px 14px no-repeat}
.surface-trim::before{content:"";position:absolute;inset:4px;border:1px solid var(--trim-line);pointer-events:none}
.surface-trim::after{content:"";position:absolute;inset:7px;pointer-events:none;background-image:linear-gradient(var(--trim-grid) 1px,transparent 1px),linear-gradient(90deg,var(--trim-grid) 1px,transparent 1px);background-size:5px 5px;mask-image:linear-gradient(125deg,#000,transparent 70%)}
.primary:not(:disabled):not(.summon-single),.complete-actions button,.quest-popup-actions [data-quest-popup="view"]{--trim-line:rgba(30,25,0,.22);--trim-corner:rgba(30,25,0,.46);--trim-grid:rgba(30,25,0,.025)}
/* Buttons and the profile dock retain only the fading, edge-to-edge grid. */
:is(button,.primary,.profile-dock)>.surface-trim{inset:0;background:none}
:is(button,.primary,.profile-dock)>.surface-trim::before{display:none}
:is(button,.primary,.profile-dock)>.surface-trim::after{display:block;inset:0}
@media(forced-colors:active){.surface-trim{display:none!important}}
/* Nameplates keep their texture without ornamental outlines. */
.profile-identity>.surface-trim{background:none}
.profile-identity>.surface-trim::before{display:none}
