@font-face{font-family:'DM Sans';src:url('assets/fonts/DM-Sans-400-latin.ttf') format('truetype');font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DM-Sans-500-latin.ttf') format('truetype');font-weight:500;font-style:normal;font-display:block}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DM-Sans-600-latin.ttf') format('truetype');font-weight:600;font-style:normal;font-display:block}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DM-Sans-700-latin.ttf') format('truetype');font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DM-Sans-400-Italic-latin.ttf') format('truetype');font-weight:400;font-style:italic;font-display:block}
@font-face{font-family:'DM Sans';src:url('assets/fonts/DM-Sans-700-Italic-latin.ttf') format('truetype');font-weight:700;font-style:italic;font-display:block}
@font-face{font-family:'Bodoni Moda';src:url('assets/fonts/Bodoni-Moda-400-Italic-latin.ttf') format('truetype');font-weight:400;font-style:italic;font-display:block}
#trace-checker{--tc-bg:#0a0a0a;--tc-text:#f0f0f0;--tc-muted:#b4b4b4;--tc-pink:#f8037c;--tc-line:#3a3a3a;position:relative;isolation:isolate;background:var(--tc-bg);color:var(--tc-text);font-family:'DM Sans',sans-serif;font-synthesis:none;font-optical-sizing:none;font-size:15px;line-height:1.45;min-height:850px;overflow:hidden;color-scheme:dark}
#trace-checker *{box-sizing:border-box}
#trace-checker [hidden]{display:none!important}
#trace-checker .tc-background{position:absolute;inset:0;width:100%;height:850px;z-index:-2;pointer-events:none}
#trace-checker .tc-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 20%,#0a0a0a55 65%,#0a0a0a 900px);pointer-events:none}
#trace-checker header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 38px}
#trace-checker .tc-logo{font-size:27px;letter-spacing:-1.3px;color:var(--tc-text);text-decoration:none;white-space:nowrap}
#trace-checker em{font-family:'Bodoni Moda',serif;font-size:1.1em;font-weight:400;line-height:1}
#trace-checker .tc-demo-label{font-size:12px;color:#949494;letter-spacing:.06em;text-transform:uppercase}
#trace-checker main{width:min(100% - 36px,960px);margin:0 auto;padding:65px 0 55px}
#trace-checker .tc-intro{text-align:center;max-width:560px;margin:0 auto 38px}
#trace-checker h1{font-size:clamp(38px,6vw,60px);font-weight:400;line-height:1.08;letter-spacing:-2px;margin:0 0 15px}
#trace-checker p{margin:0;color:var(--tc-muted)}
#trace-checker .tc-search{margin:28px auto 0;display:flex;gap:8px;width:100%;max-width:530px}
#trace-checker input[type=text]{font:inherit;font-size:16px;color:var(--tc-text);background:#111;border:1px solid var(--tc-line);border-radius:8px;padding:12px 15px;min-width:0;flex:1}
#trace-checker button{font:inherit;line-height:1.2;font-weight:500;border:1px solid var(--tc-line);border-radius:8px;padding:12px 18px;background:#161616;color:var(--tc-text);min-height:44px;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}
#trace-checker button:hover{background:#232323;border-color:#666}
#trace-checker button:active{transform:translateY(1px)}
#trace-checker .tc-primary{color:#0a0a0a;background:var(--tc-pink);border-color:var(--tc-pink)}
#trace-checker .tc-primary:hover{background:#ff3d96;border-color:#ff3d96;color:#0a0a0a}
#trace-checker button:disabled{opacity:.5;cursor:wait;transform:none}
#trace-checker :focus-visible{outline:2px solid #96feff;outline-offset:4px}
#trace-checker .tc-samples{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:15px auto 0;max-width:550px}
#trace-checker .tc-samples button{font-size:12px;min-height:34px;padding:7px 10px;background:#0a0a0acc;color:#b4b4b4}
#trace-checker .tc-samples button[aria-pressed=true]{border-color:#f8037c;color:#f0f0f0}
#trace-checker .tc-search-status{font-size:13px;min-height:22px;margin-top:10px}
#trace-checker .tc-result{max-width:820px;margin:0 auto;animation:tc-reveal .4s ease}
#trace-checker .tc-result-heading{text-align:center;margin-bottom:24px}
#trace-checker h2{font-size:25px;line-height:1.15;font-weight:400;margin:0 0 7px;letter-spacing:-.7px}
#trace-checker .tc-result-heading p{font-size:13px}
#trace-checker .tc-result-grid{display:grid;grid-template-columns:minmax(0,410px) minmax(240px,300px);gap:48px;align-items:start;justify-content:center}
#trace-checker .tc-printer{position:relative;width:100%;max-width:410px;margin:0 auto;padding-top:19px}
#trace-checker .tc-slot{position:absolute;top:0;left:0;right:0;height:36px;border-radius:19px;background:linear-gradient(180deg,#a2a4a0,#343735 35%,#181a19 70%,#626560);box-shadow:0 2px 12px #0009,inset 0 1px 1px #d4d5d066;z-index:1;pointer-events:none}
#trace-checker .tc-slot:after{content:'';position:absolute;left:19px;right:19px;top:15px;height:7px;border-radius:5px;background:#030303;box-shadow:0 1px 1px #a4a8a044}
#trace-checker .tc-paper-window{position:relative;z-index:2;overflow:hidden;padding:0 24px 34px}
#trace-checker .tc-paper{position:relative;width:100%;aspect-ratio:643/1355;transform-origin:top center;transform:translateY(24px);filter:drop-shadow(0 12px 12px #0005)}
#trace-checker .tc-paper.tc-printing{animation:tc-print var(--tc-print-time,2300ms) cubic-bezier(.18,.52,.32,1) both}
#trace-checker .tc-paper canvas{display:block;width:100%;height:100%}
#trace-checker .tc-ink{position:absolute;inset:0;touch-action:none;cursor:crosshair}
#trace-checker .tc-paper.tc-printing .tc-ink{pointer-events:none}
#trace-checker .tc-panel{padding-top:28px}
#trace-checker .tc-panel h3{font-size:21px;font-weight:400;letter-spacing:-.4px;margin:0 0 8px}
#trace-checker .tc-panel p{font-size:14px;line-height:1.5}
#trace-checker .tc-edit-actions{display:flex;gap:8px;margin:17px 0 20px}
#trace-checker .tc-edit-actions button{padding:9px 12px;font-size:13px}
#trace-checker .tc-toggles{display:grid;gap:10px;padding:20px 0;border-top:1px solid #262626;border-bottom:1px solid #262626;margin-bottom:20px}
#trace-checker .tc-toggles label{display:flex;align-items:center;gap:10px;min-height:25px;font-size:14px;cursor:pointer}
#trace-checker input[type=checkbox]{accent-color:var(--tc-pink);width:16px;height:16px;margin:0}
#trace-checker .tc-export{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#trace-checker .tc-export .tc-primary{grid-column:1/-1}
#trace-checker .tc-action-status{font-size:12px;min-height:40px;margin:10px 0;color:#b4b4b4}
#trace-checker .tc-replay{width:100%;background:transparent;font-size:13px;color:#b4b4b4}
#trace-checker details{border-top:1px solid #262626;margin-top:25px;padding-top:18px;font-size:13px}
#trace-checker summary{cursor:pointer;font-size:14px;padding:5px 0}
#trace-checker dl{margin:15px 0;display:grid;grid-template-columns:1fr auto;gap:9px 12px}
#trace-checker dt{color:#949494}
#trace-checker dd{margin:0;text-align:right;overflow-wrap:anywhere;max-width:160px}
#trace-checker .tc-collections{font-size:12px;color:#949494;line-height:1.7;margin-top:12px}
#trace-checker .tc-wallet-info{overflow-wrap:anywhere;font-size:12px;margin-top:12px;color:#949494}
#trace-checker .tc-phases{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:38px auto 0;max-width:772px;padding-top:25px;border-top:1px solid #262626}
#trace-checker .tc-phase strong{font-weight:500;font-size:15px}
#trace-checker .tc-phase time{display:block;color:#b4b4b4;font-size:12px;margin:6px 0 10px}
#trace-checker .tc-phase p{font-size:12px;color:#949494}
#trace-checker .tc-phase.tc-yours strong{color:#96feff}
#trace-checker footer{text-align:center;color:#949494;font-size:12px;padding:15px 20px 28px}
#trace-checker .tc-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@keyframes tc-print{0%{transform:translateY(-100%)}92%{transform:translateY(0)}100%{transform:translateY(24px)}}
@keyframes tc-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){#trace-checker header{padding:22px}#trace-checker main{padding-top:48px}#trace-checker .tc-result-grid{grid-template-columns:minmax(0,400px);gap:12px}#trace-checker .tc-panel{padding:10px 10px 0}#trace-checker .tc-phases{gap:20px}#trace-checker .tc-background{height:760px}#trace-checker .tc-intro{margin-bottom:25px}#trace-checker .tc-search button{padding:12px}#trace-checker .tc-printer{max-width:390px}}
@media(prefers-reduced-motion:reduce){#trace-checker *,#trace-checker *:before,#trace-checker *:after{animation:none!important;transition:none!important}}

/* Paper is clipped at y=19, inside the slot (y=15..22), above its lower face. */
#trace-checker .tc-paper-window:after{content:"";position:absolute;top:0;left:24px;right:24px;height:7px;background:linear-gradient(#0009,transparent);pointer-events:none;z-index:3}
