:root{color-scheme:dark;--red:#ef243c;--red2:#a90f22;--bg:#07080a;--panel:#111318;--muted:#969eaa;--green:#55e5a4}
    *{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% 0,#241016 0,#090a0d 40%,#050607 100%);color:#fff;font-family:Inter,Segoe UI,Arial,sans-serif;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:18px;overflow:hidden}
    .app{width:min(1180px,100%);display:grid;gap:13px}.head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.kicker{font-weight:900;letter-spacing:.18em;color:#ff4a5f;font-size:12px}.head h1{margin:3px 0 0;font-size:clamp(24px,4vw,44px);letter-spacing:-.035em}.status{font-size:12px;color:var(--muted);text-align:right}.ticket-shell{position:relative;width:100%;aspect-ratio:1800/580;min-height:210px;border-radius:28px;overflow:hidden;background:#030405;border:1px solid #4b1d27;box-shadow:0 28px 80px rgba(0,0,0,.55);touch-action:none}
    .ticket-img,.stub-fly{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none;pointer-events:none}.ticket-img{z-index:1;clip-path:inset(0 20% 0 0)}.stub-fly{z-index:5;clip-path:inset(0 0 0 80%);opacity:1;transform-origin:80% 10%;will-change:transform}
    .guide{position:absolute;z-index:3;left:80%;top:3%;bottom:3%;border-left:2px dashed rgba(255,255,255,.77)}.tear{position:absolute;z-index:4;left:calc(80% - 7px);top:2%;width:14px;height:0;overflow:hidden;pointer-events:none}.tear:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 5px,#f2f2f2 5px 9px,transparent 9px 14px);filter:drop-shadow(0 0 2px #000)}
    .scissors{position:absolute;z-index:8;left:80%;top:4%;transform:translate(-50%,-50%);width:58px;height:58px;border-radius:50%;border:2px solid #ff4055;background:#0a0c10;color:#fff;font-size:29px;display:grid;place-items:center;cursor:ns-resize;box-shadow:0 10px 30px #000,0 0 0 5px rgba(239,36,60,.16);touch-action:none}.scissors:active{scale:.95}.scissors[disabled]{opacity:.25;cursor:not-allowed}
    .meter{height:8px;border-radius:999px;overflow:hidden;background:#1b1f25;border:1px solid #303641}.meter>i{display:block;height:100%;width:0;background:linear-gradient(90deg,#a81328,#ff354c);transition:width .04s linear}.line{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#c9ced6;font-size:13px}.actions{display:flex;gap:10px;flex-wrap:wrap}.btn{border:1px solid #60303a;background:#1a1115;color:#fff;border-radius:12px;padding:12px 18px;font-weight:900;cursor:pointer;min-height:46px}.btn.primary{background:linear-gradient(135deg,#f12742,#b8142b);border-color:#ff5164}.btn:disabled{opacity:.35;cursor:not-allowed}.result{min-height:24px;color:#b7bdc7;font-size:13px}.ripword{position:absolute;z-index:9;left:80%;top:52%;transform:translate(-50%,-50%) rotate(-8deg) scale(.6);opacity:0;font-weight:1000;font-style:italic;font-size:clamp(28px,6vw,68px);color:#ff324b;text-shadow:0 6px 22px #000;pointer-events:none}.ticket-shell.used .ripword{opacity:1;transform:translate(-50%,-50%) rotate(-8deg) scale(1);transition:.28s cubic-bezier(.2,.85,.3,1.3)}.ticket-shell.used .stub-fly{opacity:1;animation:stubAway .9s cubic-bezier(.16,.8,.22,1) forwards}.ticket-shell.used .guide{opacity:.2}.ticket-shell.used .scissors{opacity:.15}@keyframes stubAway{0%{transform:translateX(0) rotate(0)}100%{transform:translateX(9%) rotate(4deg)}}
    .loading{padding:35px;text-align:center;color:#a6adb8}.pulse{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--red);box-shadow:0 0 18px var(--red);animation:pulse 1s infinite alternate}@keyframes pulse{to{opacity:.35;scale:.7}}
    @media(max-width:720px){body{padding:10px;align-items:flex-start}.head{align-items:flex-start;flex-direction:column}.status{text-align:left}.ticket-shell{border-radius:18px}.scissors{width:48px;height:48px;font-size:24px}.actions{display:grid;grid-template-columns:1fr}.btn{width:100%}}
    @media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* V5.0.3 Discord Activity CSP-safe + one-motion cutter */
html,body{background:#050607!important;color:#fff!important}
.brand-x{color:#ef243c;font-size:1.25em}
.cut-lane{position:absolute;z-index:7;left:80%;top:0;bottom:0;width:220px;transform:translateX(-50%);cursor:ns-resize;touch-action:none;user-select:none;-webkit-user-select:none;background:transparent}
.cut-lane:hover,.ticket-shell.dragging .cut-lane{background:linear-gradient(90deg,transparent,rgba(239,36,60,.09),transparent)}
.scissors{pointer-events:auto!important;z-index:10!important;cursor:grab!important}
.ticket-shell.dragging .scissors{cursor:grabbing!important;box-shadow:0 10px 32px #000,0 0 0 8px rgba(239,36,60,.24)}
.fatal{border:1px solid #8d2f3d;background:#2b0d14;color:#ffd5db;border-radius:10px;padding:12px;font-weight:800}
