
/* V54: Perfex Event module and unified mobile-app previews */
:root{--v54-ink:#29232e;--v54-accent:#88455a;--v54-muted:#756a76;--v54-stroke:#e9e1e7;--v54-mist:#f8f5f7}
.p54-shell{max-width:1200px;margin:auto;padding-bottom:60px;color:var(--v54-ink)}
.p54-overline{display:block;color:var(--v54-accent);font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}
.p54-intro{padding:35px 0 27px;display:flex;align-items:flex-end;justify-content:space-between;gap:18px;border-bottom:1px solid var(--v54-stroke)}
.p54-intro h1{font-size:clamp(32px,4vw,52px);letter-spacing:-.05em;line-height:1.08;margin:0 0 12px}.p54-intro p{margin:0;color:var(--v54-muted);max-width:670px;line-height:1.6}
.p54-actions{display:flex;gap:8px;flex-wrap:wrap}.p54-btn{background:#88455a;color:#fff!important;border:1px solid #88455a;border-radius:12px;padding:12px 16px;text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center}.p54-btn.secondary{background:white;color:#493b46!important;border-color:var(--v54-stroke)}
.p54-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-top:22px}.p54-card{grid-column:span 4;background:#fff;border:1px solid var(--v54-stroke);border-radius:18px;padding:24px;min-width:0;box-shadow:0 3px 20px #34223205}.p54-card.wide{grid-column:span 8}.p54-card.full{grid-column:1/-1}.p54-card h2{font-size:20px;letter-spacing:-.035em;margin:7px 0 10px}.p54-card p{font-size:14px;line-height:1.6;color:var(--v54-muted);margin:8px 0 14px}.p54-card a{color:#88455a;font-weight:700;text-decoration:none}.p54-card a:hover{text-decoration:underline}.p54-number{font-size:42px;line-height:1;font-weight:760;letter-spacing:-.055em;display:block;margin:18px 0 8px}.p54-note{margin-top:22px;padding:15px 18px;border:1px solid #e8d9e0;background:#f9f1f5;border-radius:12px;color:#705464;font-size:13px;line-height:1.55}
.p54-table-scroll{overflow-x:auto}.p54-table{width:100%;min-width:640px;border-collapse:collapse;text-align:left}.p54-table th,.p54-table td{padding:14px 11px;border-bottom:1px solid var(--v54-stroke);font-size:13px;vertical-align:middle}.p54-table th{color:#746774;font-size:11px;letter-spacing:.06em;text-transform:uppercase}.p54-badge{display:inline-block;border-radius:999px;padding:6px 10px;background:#f2e9ee;color:#824a60;font-size:11px;font-weight:750;white-space:nowrap}.p54-badge.demo{background:#eeeef0;color:#625e66}.p54-progress{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.p54-progress span{padding:9px 12px;background:white;border:1px solid var(--v54-stroke);border-radius:100px;font-size:12px;color:#554853}.p54-progress span:first-child{background:#f1e5eb;border-color:#e5cbd6;color:#824a60}
.p54-tabbar{display:flex;gap:10px;overflow-x:auto;padding:17px 0}.p54-tabbar a{white-space:nowrap;text-decoration:none;color:#55434f;background:white;border:1px solid var(--v54-stroke);border-radius:999px;padding:10px 14px;font-weight:650;font-size:12px}.p54-tabbar a[aria-current=page]{background:#88455a;color:white}
.p54-app-intro{max-width:1080px;margin:0 auto;padding:45px 20px 12px}.p54-app-intro h1{font-size:clamp(32px,5vw,64px);line-height:1.04;letter-spacing:-.055em;margin:10px 0}.p54-app-intro p{max-width:660px;color:#746976;line-height:1.65}.p54-phone-stage{display:flex;gap:28px;align-items:flex-start;justify-content:center;flex-wrap:wrap;padding:20px 20px 65px;background:linear-gradient(160deg,#f6eff3,#f9f7f8)}.p54-phone{width:345px;max-width:100%;border:8px solid #26212b;border-radius:42px;min-height:620px;background:#faf8fa;box-shadow:0 24px 55px #281b2833;padding:22px 17px 18px;display:flex;flex-direction:column}.p54-notch{height:23px;width:95px;background:#26212b;border-radius:0 0 18px 18px;align-self:center;margin:-22px 0 25px}.p54-phone-head{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#7e6876}.p54-phone h2{font-size:29px;letter-spacing:-.05em;margin:19px 0 12px}.p54-phone-card{background:#fff;border:1px solid #e8dfe6;padding:16px;border-radius:16px;margin-bottom:11px}.p54-phone-card.dark{background:#3b2c3c;color:white;border-color:#3b2c3c}.p54-phone-card h3{font-size:18px;margin:7px 0}.p54-phone-card p{color:inherit;opacity:.7;font-size:12px;line-height:1.5}.p54-phone-bottom{display:flex;justify-content:space-between;margin-top:auto;padding-top:16px;border-top:1px solid #e9e2e7;font-size:11px;color:#786a76}.p54-phone-bottom strong{color:#88455a}.p54-phone-tag{font-size:10px;letter-spacing:.14em;font-weight:700;color:#a86880}.p54-phone-ticket{background:linear-gradient(150deg,#503647,#2c2430);color:#fff;border-radius:18px;padding:20px;margin:10px 0 18px;min-height:235px;display:flex;flex-direction:column;justify-content:space-between}.p54-phone-ticket .rule{height:1px;background:#ffffff50;margin:15px 0}.p54-phone-ticket .dummy{border:1px dashed #ffffff88;border-radius:8px;padding:15px;text-align:center;color:#fff8;font-size:11px;letter-spacing:.1em}.p54-app-nav{display:flex;flex-wrap:wrap;gap:9px;margin:20px 0}.p54-app-nav a{border:1px solid #ded2da;color:#6d3a51;text-decoration:none;border-radius:999px;padding:9px 13px;background:white;font-weight:700;font-size:12px}
@media(max-width:900px){.p54-card,.p54-card.wide{grid-column:span 6}.p54-intro{align-items:flex-start;flex-direction:column}}
@media(max-width:580px){.p54-card,.p54-card.wide{grid-column:1/-1}.p54-card{padding:19px}.p54-intro{padding-top:20px}.p54-phone-stage{padding-inline:8px}.p54-phone{width:335px}.p54-intro h1{font-size:34px}}
