
        :root {
            --overlay: rgba(0, 0, 0, .75);
            --card-bg: #1f1f1f;
            --card-edge: #3a3a3a;
            --text: #e8e8e8;
            --muted: #bbbbbb;
        }

        .mp-backdrop {
            position: fixed;
            inset: 0;
            background: var(--overlay);
            display: none;
            z-index: 9998;
        }

        .mp {
            position: fixed;
            inset: 0;
            display: none;
            place-items: center;
            z-index: 9999;
        }

        .mp-card {
            width: min(92vw, 800px);
            background: var(--card-bg);
            color: var(--text);
            padding: 28px 22px 26px;
            border-radius: 10px;
            position: relative;
            box-shadow: 0 20px 60px rgba(0, 0, 0, .45);
            border: 1px solid var(--card-edge);
            background-image: radial-gradient(rgba(255, 255, 255, .03) 1px, transparent 1px);
            background-size: 10px 10px;
            outline: none;
        }

        .mp-card::before {
            content: "";
            position: absolute;
            inset: 10px;
            border: 1px solid #4a4a4a;
            border-radius: 8px;
            pointer-events: none;
        }

        .mp-close {
            position: absolute;
            top: 10px;
            right: 12px;
            width: 36px;
            height: 36px;
            line-height: 36px;
            border-radius: 50%;
            background: transparent;
            color: #aaa;
            border: none;
            font-size: 22px;
            cursor: pointer;
        }

        .mp-close:hover {
            color: #fff;
        }

        .mp-head {
            display: grid;
            place-items: center;
            gap: 10px;
            margin-bottom: 12px;
        }

        .mp-portrait {
            width: 132px;
            height: 178px;
            border-radius: 50%;
            object-fit: cover;
            filter: grayscale(100%);
            border: 2px solid #6d6d6d;
            background: #000;
        }

        h2#mp-title {
            font-size: clamp(20px, 4.6vw, 28px);
            margin: 6px 0 4px;
            text-align: center;
            letter-spacing: .5px;
        }

	h3#mp-title {
            font-size: clamp(20px, 4.6vw, 28px);
            margin: 6px 0 4px;
            text-align: center;
            letter-spacing: .5px;
        }

        .mp-sub {
            font-size: 14px;
            color: var(--muted);
            text-align: center;
            margin: 0;
        }

        .mp-body {
            margin-top: 14px;
            text-align: center;
            font-size: 14px;
            line-height: 1.6;
            color: #d8d8d8;
        }

        .mp-org {
            margin-top: 10px;
            font-size: 12px;
            color: #b9b9b9;
        }

        .mp-actions {
            margin-top: 18px;
            text-align: center;
        }

        .mp-btn {
            background: #2c2c2c;
            border: 1px solid #4a4a4a;
            padding: 10px 18px;
            color: #eaeaea;
            border-radius: 6px;
            cursor: pointer;
        }

        .mp-btn:hover {
            background: #333;
        }

        body.mp-lock {
            overflow: hidden;
        }
