html.tap-proof-is-open { overflow: hidden; scrollbar-gutter: stable; }
.tap-proof-page { padding-top: 20px; padding-bottom: 50px; }
.tap-proof-page > .prestige-breadcrumb { margin-bottom: 26px; }
.tap-proof-page > .prestige-title { margin-bottom: 14px; }
.tap-proof-page > .prestige-title h1 { font-size: 35px; }
.tap-proof-page > .prestige-title p { font-size: 10px; }
.tap-proof-status { display: flex; align-items: center; justify-content: center; gap: 10px; margin: 0 auto 35px; color: #c5b58f; font-size: 11px; line-height: 1.8; text-align: center; }
.tap-proof-status svg { width: 18px; height: 18px; flex-shrink: 0; color: #dfba63; }
.tap-proof-context { display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #9e7a343d; background: #b58a3510; padding: 12px 18px; margin-bottom: 26px; }
.tap-proof-context small { font-size: 10px; color: #c5aa70; }
.tap-proof-context p { margin: 4px 0 0; color: #e0cd9e; font-size: 13px; }
.tap-proof-context a { display: flex; align-items: center; gap: 10px; color: #ddc184; font-size: 11px; text-decoration: none; min-height: 42px; }
.tap-proof-context svg { width: 14px; height: 14px; }
.tap-proof-stage { display: grid; grid-template-columns: 1fr 1fr; gap: 35px; max-width: 1160px; margin: 0 auto 32px; padding: 25px 24px 12px; background: radial-gradient(ellipse at 50% 55%, #a46d172b, transparent 75%); }
.tap-proof-card { min-width: 0; display: flex; flex-direction: column; }
.tap-proof-card > .tap-proof-frame { flex: 1; display: flex; }
.tap-proof-card .tap-proof-paper { width: 100%; }
.tap-proof-frame { padding: 14px; border: 3px solid #5e370f; background: repeating-linear-gradient(110deg, #976326 0, #e9c46d 3px, #8e571b 6px, #f3d593 8px, #bf8738 11px); box-shadow: 0 0 0 1px #d9ad58, inset 0 0 0 2px #f5cf85, 0 13px 35px #000b, 0 0 35px #bd8c3420; border-radius: 2px; }
.tap-proof-paper { min-height: 340px; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; padding: 26px 30px 22px; color: #3b2d16; border: 1px solid #4f3718; outline: 1px solid #aa7c34; outline-offset: -9px; background: radial-gradient(ellipse at 35% 15%, #fbefd6, #ded0ae); box-shadow: inset 0 0 35px #9d742c2b; text-align: center; }
.tap-proof-paper-brand { display: flex; align-items: center; justify-content: center; gap: 9px; color: #50340f; font: 18px/1.3 Georgia, serif; }
.tap-proof-paper-brand img { width: 28px; height: 32px; filter: brightness(.66); }
.tap-proof-sample { display: table; margin: 15px auto 12px; padding: 3px 12px; border: 1px solid #987238; color: #664817; font-size: 9px; letter-spacing: 1px; line-height: 1.7; }
.tap-proof-paper h2 { color: #55350b; font-size: 24px; font-weight: 500; line-height: 1.6; margin: 0 0 20px; }
.tap-proof-paper dl { margin: 0 auto 19px; width: 100%; max-width: 340px; }
.tap-proof-paper dl > div { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; padding: 9px 0; border-bottom: 1px solid #8c6a343d; text-align: left; font-size: 10px; line-height: 1.6; }
.tap-proof-paper dd { margin: 0; color: #6d5a37; }
.tap-proof-paper-note { color: #6c562f; font-size: 9px; line-height: 1.7; margin: auto 0 0; padding-top: 10px; }
.tap-proof-object-body { display: grid; grid-template-columns: 130px 1fr; gap: 20px; align-items: center; text-align: left; margin-bottom: 12px; }
.tap-proof-object-body figure { position: relative; margin: 0; border: 1px solid #8a652d; background: #111109; }
.tap-proof-object-body img { width: 100%; height: 116px; object-fit: cover; display: block; }
.tap-proof-object-body figcaption { color: #d5bc81; font-size: 8px; text-align: center; padding: 4px; }
.tap-proof-object-body > p { font-size: 13px; color: #765c2e; line-height: 1.9; }
.tap-proof-open { display: flex; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 48px; margin-top: 17px; padding: 9px; color: #d9bf80; background: transparent; border: 0; font: 11px/1.7 system-ui, sans-serif; cursor: pointer; }
.tap-proof-open:disabled { opacity: .5; cursor: default; }
.tap-proof-open:hover { color: #ffdf92; }
.tap-proof-open svg { width: 16px; height: 16px; }
.tap-proof-empty { display: flex; gap: 20px; align-items: center; border-block: 1px solid #91713655; padding: 23px 28px; background: #bea55309; margin-bottom: 30px; }
.tap-proof-empty > span { color: #d1a954; }
.tap-proof-empty h2 { margin: 0 0 6px; font-size: 18px; line-height: 1.7; color: #d9bf83; font-weight: 500; }
.tap-proof-empty p { margin: 0; color: #b9ab8d; font-size: 11px; line-height: 1.8; }
.tap-proof-principles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.tap-proof-principles article { padding: 24px; border: 1px solid #876b333d; background: linear-gradient(130deg, #3c301318, #0b0d08); }
.tap-proof-principles article > span { color: #ad8742; font: 30px/1.3 Georgia, serif; }
.tap-proof-principles h2 { font-size: 18px; line-height: 1.7; color: #e1cd9e; font-weight: 500; margin: 15px 0 10px; }
.tap-proof-principles p { font-size: 11px; line-height: 1.9; color: #b9ac90; margin: 0; }
.tap-proof-bottom { display: flex; justify-content: space-between; align-items: center; gap: 35px; margin-top: 30px; padding: 32px; border: 1px solid #a7833d55; background: radial-gradient(ellipse at 15% 100%, #81561926, transparent 75%); }
.tap-proof-bottom h2 { color: #e3c780; font-size: 26px; line-height: 1.6; font-weight: 500; margin: 0 0 8px; }
.tap-proof-bottom p:not(.prestige-overline) { font-size: 12px; line-height: 1.8; color: #bfb194; margin: 0; max-width: 680px; }
.tap-proof-bottom .prestige-button { flex-shrink: 0; }
.tap-proof-viewer { width: min(900px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); max-width: none; overflow-y: auto; background: #0a0c07; padding: 20px 28px; border: 1px solid #a77d36; border-radius: 7px; box-sizing: border-box; }
.tap-proof-viewer::backdrop { background: #000e; backdrop-filter: blur(5px); }
.tap-proof-viewer header { display: flex; align-items: center; gap: 20px; margin-bottom: 22px; }
.tap-proof-viewer header h2 { color: #e7c780; font-size: 18px; line-height: 1.6; flex: 1; margin: 0; }
.tap-proof-viewer header button { width: 44px; height: 44px; flex-shrink: 0; color: #e9c57b; background: #17180d; border: 1px solid #a5813b; border-radius: 4px; font-size: 28px; cursor: pointer; }
.tap-proof-viewer > p { color: #bcb08e; font-size: 11px; line-height: 1.8; margin: 20px 0 0; text-align: center; }
.tap-proof-viewer .tap-proof-paper { min-height: 430px; padding: 35px 55px; }
.tap-proof-viewer .tap-proof-paper h2 { font-size: 30px; }
.tap-proof-viewer .tap-proof-paper dl > div { font-size: 13px; }
.tap-proof-viewer .tap-proof-object-body { grid-template-columns: 200px 1fr; }
.tap-proof-viewer .tap-proof-object-body img { height: 175px; }
@media (max-width: 1100px) { .tap-proof-stage { gap: 25px; padding-inline: 8px; } .tap-proof-paper { padding-inline: 23px; } .tap-proof-paper h2 { font-size: 21px; } .tap-proof-object-body { grid-template-columns: 110px 1fr; gap: 15px; } }
@media (max-width: 760px) {
  .tap-proof-page { width: calc(100% - 32px); padding-top: 17px; padding-bottom: 30px; }
  .tap-proof-page > .prestige-title h1 { font-size: 27px; }
  .tap-proof-status { font-size: 9px; margin-bottom: 25px; }
  .tap-proof-context { display: block; padding: 12px 14px; }
  .tap-proof-context p { font-size: 12px; }
  .tap-proof-context a { font-size: 10px; margin-top: 5px; }
  .tap-proof-stage { grid-template-columns: 1fr; gap: 22px; padding: 0; margin-bottom: 22px; }
  .tap-proof-frame { padding: 10px; border-width: 2px; }
  .tap-proof-paper { min-height: 300px; padding: 23px 20px; }
  .tap-proof-paper-brand { font-size: 17px; }
  .tap-proof-paper h2 { font-size: 23px; }
  .tap-proof-paper dl > div { font-size: 10px; }
  .tap-proof-object-body { grid-template-columns: 112px 1fr; }
  .tap-proof-open { font-size: 10px; margin-top: 9px; }
  .tap-proof-empty { padding: 20px 15px; gap: 14px; }
  .tap-proof-empty h2 { font-size: 16px; }
  .tap-proof-empty p { font-size: 10px; }
  .tap-proof-principles { grid-template-columns: 1fr; gap: 14px; }
  .tap-proof-principles article { padding: 23px; }
  .tap-proof-principles h2 { margin-top: 10px; font-size: 18px; }
  .tap-proof-bottom { display: block; padding: 25px 22px; margin-top: 22px; }
  .tap-proof-bottom h2 { font-size: 25px; }
  .tap-proof-bottom p:not(.prestige-overline) { font-size: 11px; }
  .tap-proof-bottom .prestige-button { margin-top: 23px; font-size: 12px; }
  .tap-proof-viewer { padding: 14px; }
  .tap-proof-viewer header h2 { font-size: 15px; }
  .tap-proof-viewer .tap-proof-paper { min-height: 310px; padding: 22px 17px; }
  .tap-proof-viewer .tap-proof-paper h2 { font-size: 23px; }
  .tap-proof-viewer .tap-proof-paper dl > div { font-size: 10px; }
  .tap-proof-viewer .tap-proof-object-body { grid-template-columns: 110px 1fr; }
  .tap-proof-viewer .tap-proof-object-body img { height: 116px; }
}
