.p2b-sheet { position: fixed; inset: 0; z-index: 100; display: none; }
.p2b-sheet.is-open { display: block; }
.p2b-sheet__backdrop { position: absolute; inset: 0; width: 100%; border: 0; background: rgba(3,14,31,.62); }
.p2b-sheet__panel { position: absolute; left: 0; right: 0; bottom: 0; max-height: 88vh; display: grid; grid-template-rows: auto auto minmax(0,1fr) auto; background: #fff; border-radius: 22px 22px 0 0; box-shadow: 0 -20px 50px rgba(0,0,0,.25); }
.p2b-sheet__handle { width: 54px; height: 5px; margin: 9px auto 4px; border-radius: 999px; background: #ccd3dd; }
.p2b-sheet header, .p2b-sheet footer { padding: 10px 16px; border-bottom: 1px solid var(--p2b-border); }
.p2b-sheet footer { border-top: 1px solid var(--p2b-border); border-bottom: 0; }
.p2b-sheet h2 { margin: 0; font-size: 20px; }
.p2b-sheet__body { overflow-y: auto; padding: 16px; }
.p2b-menu-list { display: grid; }
.p2b-menu-list a { padding: 14px 4px; border-bottom: 1px solid var(--p2b-border); font-weight: 800; color: var(--p2b-text); }
.p2b-toast { position: fixed; z-index: 150; left: 50%; bottom: 90px; transform: translate(-50%, 20px); opacity: 0; pointer-events: none; padding: 10px 14px; border-radius: 999px; background: #101827; color: #fff; transition: .2s; }
.p2b-toast.is-visible { opacity: 1; transform: translate(-50%, 0); }
@media (min-width: 720px) { .p2b-sheet__panel { width: min(100%,620px); left: 50%; transform: translateX(-50%); } }
