/* views/user/landing.php */
.landing-shell {
            display: grid;
            gap: 1.5rem;
        }
        .landing-hero {
            position: relative;
            overflow: hidden;
            border: 1px solid #d8e3ef;
            border-radius: 1.5rem;
            background:
                radial-gradient(circle at top right, rgba(15, 118, 110, 0.18), transparent 34%),
                linear-gradient(135deg, #f7fcfb 0%, #ffffff 55%, #eef7f6 100%);
            box-shadow: 0 24px 48px rgba(15, 23, 42, 0.08);
        }
        .landing-hero::before {
            content: "";
            position: absolute;
            inset: 0;
            background:
                linear-gradient(90deg, rgba(15, 118, 110, 0.06) 1px, transparent 1px),
                linear-gradient(rgba(15, 118, 110, 0.06) 1px, transparent 1px);
            background-size: 28px 28px;
            opacity: 0.4;
            pointer-events: none;
        }
        .landing-hero-body,
        .landing-section {
            position: relative;
            z-index: 1;
            padding: 2rem;
        }
        .landing-section {
            border: 1px solid #d8e3ef;
            border-radius: 1.25rem;
            background: #ffffff;
            box-shadow: 0 14px 28px rgba(15, 23, 42, 0.05);
        }
        .landing-eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            padding: 0.35rem 0.75rem;
            border-radius: 999px;
            background: rgba(15, 118, 110, 0.1);
            color: #0f766e;
            font-size: 0.78rem;
            font-weight: 700;
            letter-spacing: 0.04em;
            text-transform: uppercase;
        }
        .landing-copy {
            max-width: 48rem;
        }
        .landing-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.75rem;
            margin-top: 1.5rem;
        }
        .landing-action-btn {
            min-width: 10rem;
        }
        .landing-card {
            border: 1px solid #dbe4f0;
            border-radius: 1rem;
            background: linear-gradient(180deg, #ffffff 0%, #f8fbfc 100%);
            box-shadow: 0 12px 24px rgba(15, 23, 42, 0.04);
            height: 100%;
        }
        .landing-card-icon {
            width: 2.75rem;
            height: 2.75rem;
            border-radius: 0.95rem;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            background: #e8f7f5;
            color: #0f766e;
            font-size: 1.15rem;
        }
        .landing-section-heading {
            max-width: 44rem;
        }
        @media (max-width: 576px) {
            .landing-hero-body,
            .landing-section {
                padding: 1.25rem;
            }
            .landing-actions {
                flex-direction: column;
            }
            .landing-action-btn {
                width: 100%;
            }
        }

/* views/user/help.php */
.help-shell {
        display: grid;
        gap: 1.5rem;
        max-width: 1100px;
        margin: 0 auto;
    }
    .help-hero,
    .help-group,
    .help-empty {
        border: 1px solid #dbe4f0;
        border-radius: 1rem;
        background: #ffffff;
        box-shadow: 0 20px 48px rgba(15, 23, 42, 0.08);
    }
    .help-hero {
        padding: 1.75rem;
        background:
            radial-gradient(circle at top right, rgba(14, 116, 144, 0.16), transparent 34%),
            linear-gradient(160deg, rgba(232, 244, 248, 0.95), rgba(255, 255, 255, 0.98));
    }
    .help-eyebrow {
        display: inline-flex;
        align-items: center;
        gap: 0.45rem;
        padding: 0.35rem 0.8rem;
        border-radius: 999px;
        background: rgba(14, 116, 144, 0.12);
        color: #0f5b6d;
        font-size: 0.8rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.08em;
    }
    .help-title {
        margin: 0.9rem 0 0;
        font-size: clamp(2rem, 4vw, 2.9rem);
        line-height: 1.05;
        color: #0f172a;
    }
    .help-subtitle {
        margin: 0.85rem 0 0;
        max-width: 48rem;
        color: #475569;
        line-height: 1.7;
    }
    .help-group {
        padding: 1.4rem;
    }
    .help-group-header {
        margin-bottom: 1.1rem;
    }
    .help-group-title {
        margin: 0;
        color: #0f172a;
        font-size: 1.35rem;
    }
    .help-group-body {
        margin: 0.4rem 0 0;
        color: #64748b;
        line-height: 1.65;
    }
    .help-card {
        height: 100%;
        border: 1px solid #dbe4f0;
        border-radius: 0.95rem;
        background: linear-gradient(180deg, #ffffff, #f8fbfc);
        padding: 1.15rem;
        box-shadow: 0 14px 28px rgba(15, 23, 42, 0.05);
    }
    .help-card-icon {
        width: 2.75rem;
        height: 2.75rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 0.8rem;
        background: rgba(14, 116, 144, 0.12);
        color: #0f5b6d;
        font-size: 1.2rem;
    }
    .help-card-title {
        margin: 1rem 0 0;
        color: #0f172a;
        font-size: 1.05rem;
    }
    .help-card-body {
        margin: 0.55rem 0 0;
        color: #475569;
        line-height: 1.65;
    }
    .help-card-note {
        margin: 0.75rem 0 0;
        color: #8a5a00;
        background: #fff7db;
        border: 1px solid #f4d58d;
        border-radius: 0.75rem;
        padding: 0.65rem 0.75rem;
        font-size: 0.92rem;
        line-height: 1.5;
    }
    .help-card-action {
        margin-top: 1rem;
    }
    .help-empty {
        padding: 1.75rem;
        text-align: center;
        background:
            radial-gradient(circle at top left, rgba(148, 163, 184, 0.14), transparent 32%),
            #ffffff;
    }
    .help-empty-title {
        margin: 0;
        color: #0f172a;
        font-size: 1.35rem;
    }
    .help-empty-body {
        margin: 0.6rem auto 0;
        max-width: 40rem;
        color: #64748b;
        line-height: 1.7;
    }
    @media (max-width: 767.98px) {
        .help-hero,
        .help-group,
        .help-empty {
            border-radius: 0.85rem;
        }
    }

/* views/site/privacy-policy.php */
.privacy-policy-shell {
            display: grid;
            gap: 1.25rem;
            max-width: 980px;
            margin: 0 auto;
        }
        .privacy-policy-hero {
            position: relative;
            overflow: hidden;
            border: 1px solid #d8e3ef;
            border-radius: 1.5rem;
            background:
                radial-gradient(circle at top right, rgba(14, 116, 144, 0.14), transparent 34%),
                linear-gradient(140deg, #f6fbfd 0%, #ffffff 56%, #edf7fb 100%);
            box-shadow: 0 22px 44px rgba(15, 23, 42, 0.08);
        }
        .privacy-policy-hero::before {
            content: "";
            position: absolute;
            inset: 0;
            background:
                linear-gradient(90deg, rgba(14, 116, 144, 0.05) 1px, transparent 1px),
                linear-gradient(rgba(14, 116, 144, 0.05) 1px, transparent 1px);
            background-size: 30px 30px;
            opacity: 0.5;
            pointer-events: none;
        }
        .privacy-policy-hero-body,
        .privacy-policy-card {
            position: relative;
            z-index: 1;
            padding: 2rem;
        }
        .privacy-policy-card {
            border: 1px solid #d8e3ef;
            border-radius: 1.25rem;
            background: #ffffff;
            box-shadow: 0 14px 28px rgba(15, 23, 42, 0.05);
        }
        .privacy-policy-eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            padding: 0.4rem 0.8rem;
            border-radius: 999px;
            background: rgba(14, 116, 144, 0.1);
            color: #0e7490;
            font-size: 0.78rem;
            font-weight: 700;
            letter-spacing: 0.04em;
            text-transform: uppercase;
        }
        .privacy-policy-meta {
            display: inline-flex;
            align-items: center;
            gap: 0.45rem;
            margin-top: 1rem;
            padding: 0.45rem 0.75rem;
            border-radius: 999px;
            background: #f8fafc;
            color: #475569;
            font-size: 0.88rem;
            font-weight: 600;
        }
        .privacy-policy-card h2 {
            margin-bottom: 0.85rem;
            font-size: 1.15rem;
        }
        .privacy-policy-card p:last-child,
        .privacy-policy-card ul:last-child {
            margin-bottom: 0;
        }
        .privacy-policy-card ul {
            margin-bottom: 0;
            padding-left: 1.15rem;
        }
        .privacy-policy-card li + li {
            margin-top: 0.6rem;
        }
        @media (max-width: 576px) {
            .privacy-policy-hero-body,
            .privacy-policy-card {
                padding: 1.25rem;
            }
        }
