    /* ############################################################
        Website Application Digital Signature Custom StyleSheet
    ############################################################### */

/* ========== Digital Signature Top Hero Section ========== */
    /* Digital Signature Quick Actions Container */
    .quick-actions {
        max-width: 920px;
        margin-top: 30px;
        display: grid;
        gap: 14px;
        grid-template-columns: 1fr 1fr 1fr;
    }
    .q-action {
        padding: 22px;
        display: flex;
        gap: 14px;
        align-items: center;
        cursor: pointer;
        transition: all 0.15s;
        border-radius: 14px;
        background: var(--bg-card);
        border: 1px solid var(--border);
    }
    .q-action:hover {
        transform: translateY(-2px);
        border-color: var(--navy);
    }
    .q-action.dark {
        color: #fff;
        border: none;
        background: var(--navy);
    }
    .q-action.dark:hover { background: var(--navy-2); }
    .q-action i.ic {
        width: 44px;
        height: 44px;
        display: flex;
        flex-shrink: 0;
        align-items: center;
        justify-content: center;
        color: var(--mint-deep);
        font-size: 22px;
        border-radius: 11px;
        background: var(--mint-soft);
    }
    .q-action.dark i.ic {
        color: var(--navy);
        background: var(--mint);
    }
    .q-action h3 {
        margin-bottom: 2px;
        font-size: 16px;
        font-weight: 500;
        font-family: 'Fraunces', serif;
    }
    .q-action p {
        margin: 0;
        color: var(--muted);
        font-size: 11px;
    }
    .q-action.dark p { color: var(--light-blue); }

/* ==========  Main Digital Signature File Upload Section ==========  */
    .signing-area { padding: 40px 0; }
    .signing-grid {
        display: grid;
        gap: 28px;
        align-items: start;
        grid-template-columns: 1fr 320px;
    }

    /* Sign Step Bar Block */
    .sign-steps {
        margin-bottom: 24px;
        padding: 18px 24px;
        display: flex;
        gap: 0;
        border-radius: 14px;
        border: 1px solid var(--border);
        background: var(--bg-card);
    }
    .sign-step {
        display: flex;
        flex: 1;
        gap: 12px;
        align-items: center;
    }
    .sign-step .n {
        width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: var(--muted);
        font-size: 14px;
        font-weight: 500;
        font-family: 'Fraunces', serif;
        border-radius: 50%;
        background: var(--bg-cream);
    }
    .sign-step.done .n {
        color: var(--mint-deeper);
        background: var(--mint);
    }
    .sign-step.active .n {
        color: #fff;
        background: var(--navy);
    }
    .sign-step .info .t {
        color: var(--text);
        font-size: 13px;
        font-weight: 500;
    }
    .sign-step .info .s {
        margin-top: 1px;
        color: var(--muted);
        font-size: 11px;
    }
    .sign-step.active .info .t { color: var(--navy); }
    .sign-step::after {
        height: 1px;
        margin: 0 10px;
        flex: 0.6;
        content: '';
        background: var(--border);
    }
    .sign-step:last-child::after { display: none; }

    /* Document Upload And Sign Block */
    .up-card {
        padding: 32px;
        border-radius: 18px;
        border: 1px solid var(--border);
        background: var(--bg-card);
    }
    .up-card h2 {
        margin-bottom: 8px;
        color: var(--navy);
        font-weight: 400;
        font-size: 24px;
        font-family: 'Fraunces', serif;
    }
    .up-card p.lede {
        margin-bottom: 22px;
        line-height: 1.5;
        color: var(--muted);
        font-size: 14px;
    }

    /* Uploade To Verify Genius File Block */
    .upload-big {
        padding: 60px 30px;
        text-align: center;
        cursor: pointer;
        transition: all 0.15s;
        border-radius: 14px;
        border: 2px dashed var(--border);
        background: var(--bg-cream-2);
    }
    .upload-big:hover {
        border-color: var(--navy);
        background: var(--bg-cream);
    }
    .upload-big i {
        margin-bottom: 14px;
        display: block;
        color: var(--mint-deep);
        font-size: 48px;
    }
    .upload-big .ttl {
        margin-bottom: 6px;
        color: var(--navy);
        font-size: 22px;
        font-weight: 500;
        font-family: 'Fraunces', serif;
    }
    .upload-big .sub {
        margin-bottom: 14px;
        color: var(--muted);
        font-size: 13px;
    }
    .upload-big .btns {
        display: flex;
        gap: 10px;
        justify-content: center;
    }

    /* Document Upload And Sign Bblock */
    .doc-edit-area {
        display: grid;
        gap: 22px;
        grid-template-columns: 1.4fr 1fr;
    }
    .doc-preview {
        min-height: 460px;
        padding: 22px;
        border-radius: 14px;
        border: 1px solid var(--border);
        background: var(--bg-cream-2);
    }
    .doc-preview-toolbar {
        margin-bottom: 18px;
        padding-bottom: 14px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-bottom: 1px solid var(--border);
    }
    .doc-name-tag {
        display: flex;
        gap: 10px;
        align-items: center;
        font-size: 13px;
        font-weight: 500;
    }
    .doc-name-tag i {
        color: var(--red);
        font-size: 20px;
    }
    .doc-zoom {
        display: flex;
        gap: 6px;
        align-items: center;
        color: var(--muted);
        font-size: 12px;
    }
    .doc-zoom button {
        padding: 4px 6px;
        color: var(--muted);
        border-radius: 4px;
        background: transparent;
    }
    .doc-zoom button:hover {
        color: var(--navy);
        background: var(--bg-cream);
    }

    /* Load Agreement, Terms Conditions, Signature Block */
    .doc-page {
        padding: 30px 26px;
        border-radius: 8px;
        border: 1px solid var(--border);
        background: #fff;
    }
    .doc-h {
        margin-bottom: 14px;
        padding-bottom: 8px;
        color: var(--navy);
        font-size: 16px;
        font-weight: 500;
        font-family: 'Fraunces', serif;
        border-bottom: 1px solid var(--border);
    }
    .doc-text {
        margin-bottom: 16px;
        display: flex;
        gap: 7px;
        flex-direction: column;
    }
    .doc-text .ln {
        height: 7px;
        background: #F0EDE5;
        border-radius: 999px;
    }
    .doc-text .ln.s { width: 80%; }
    .doc-text .ln.m { width: 65%; }
    .doc-sig-area {
        margin-top: 24px;
        padding: 16px;
        cursor: pointer;
        text-align: center;
        border-radius: 10px;
        border: 2px dashed var(--mint);
        background: var(--mint-soft);
    }
    .doc-sig-area .lbl {
        margin-bottom: 6px;
        letter-spacing: 0.08em;
        color: var(--mint-deep);
        font-size: 11px;
        text-transform: uppercase;
    }
    .doc-sig-area .placeholder {
        color: var(--mint-deep);
        font-size: 16px;
        font-style: italic;
        font-family: 'Fraunces', serif;
    }

    /* Sign Panel Content */
    .sign-panel {
        padding: 22px;
        border-radius: 14px;
        border: 1px solid var(--border);
        background: var(--bg-card);
    }
    .sign-panel h3 {
        margin-bottom: 14px;
        color: var(--navy);
        font-size: 18px;
        font-weight: 500;
        font-family: 'Fraunces', serif;
    }

    /* Signature Action Buttons Tab */
    .method-tabs {
        margin-bottom: 16px;
        padding: 4px;
        display: flex;
        gap: 6px;
        border-radius: 10px;
        background: var(--bg-cream);
    }
    .method-tab {
        padding: 8px;
        flex: 1;
        text-align: center;
        cursor: pointer;
        color: var(--muted);
        font-size: 12px;
        border-radius: 7px;
        transition: all 0.15s;
    }
    .method-tab.on {
        color: var(--navy);
        font-weight: 500;
        background: var(--bg-card);
        box-shadow: 0 1px 2px rgba(10,31,68,0.08);
    }
    .method-tab i {
        margin-right: 4px;
        vertical-align: -1px;
        font-size: 13px;
    }

    /* Signature Pad */
    .sig-pad {
        height: 140px;
        margin-bottom: 14px;
        position: relative;
        overflow: hidden;
        cursor: crosshair;
        border-radius: 10px;
        border: 1px solid var(--border);
        background: var(--bg-cream-2);
    }
    .sig-pad-svg {
        width: 100%;
        height: 100%;
    }
    .sig-pad-baseline {
        left: 14px;
        right: 14px;
        bottom: 24px;
        position: absolute;
        border-bottom: 1px dashed var(--border);
    }
    .sig-pad-x {
        bottom: 30px;
        left: 16px;
        position: absolute;
        color: var(--muted-2);
        font-size: 13px;
    }
    .sig-actions {
        margin-bottom: 18px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        font-size: 11px;
    }
    .sig-actions a {
        cursor: pointer;
        color: var(--mint-deep);
    }

    /* Verify Uploaded File Block */
    .verify-list {
        margin-bottom: 16px;
        display: flex;
        gap: 10px;
        flex-direction: column;
    }
    .verify-row {
        padding: 12px;
        display: flex;
        gap: 12px;
        align-items: center;
        border-radius: 10px;
        background: var(--bg-cream);
    }
    .verify-row i {
        color: var(--mint-deep);
        font-size: 18px;
    }
    .verify-row .info { flex: 1; }
    .verify-row .t {
        color: var(--navy);
        font-size: 13px;
        font-weight: 500;
    }
    .verify-row .s {
        margin-top: 1px;
        color: var(--muted);
        font-size: 11px;
    }
    .verify-row .ck {
        color: var(--mint-deep);
        font-size: 18px;
    }

    /* Top Section Block */
    .side-card {
        margin-bottom: 14px;
        padding: 22px;
        border-radius: 14px;
        border: 1px solid var(--border);
        background: var(--bg-card);
    }
    .side-card.dark {
        color: #fff;
        border: none;
        background: var(--navy);
    }
    .side-card h4 {
        margin-bottom: 14px;
        color: var(--navy);
        font-size: 16px;
        font-weight: 500;
        font-family: 'Fraunces', serif;
    }
    .side-card.dark h4 { color: #fff; }
    .bullet-list {
        display: flex;
        gap: 10px;
        flex-direction: column;
        font-size: 12px;
    }
    .bullet-list .bp {
        display: flex;
        gap: 8px;
        align-items: start;
    }
    .bullet-list .bp i {
        margin-top: 1px;
        flex-shrink: 0;
        color: var(--mint);
        font-size: 14px;
    }
    .bullet-list .bp b { font-weight: 500; }
    .side-card.dark .bullet-list { color: var(--light-blue); }
    .side-card.dark .bullet-list .bp b { color: #fff; }

/* ========== Main Detail Uploaded Documents Listing Section ========== */
    .library-section {
        padding: 50px 0;
        background: var(--bg-cream-2);
    }
    .lib-table {
        overflow: hidden;
        border-radius: 14px;
        border: 1px solid var(--border);
        background: var(--bg-card);
    }
    .lib-row {
        padding: 16px 22px;
        display: grid;
        gap: 18px;
        align-items: center;
        grid-template-columns: 1.6fr 1fr 1fr 1fr auto;
        transition: background 0.15s;
        border-bottom: 1px solid var(--border);
    }
    .lib-row:last-child { border-bottom: none; }
    .lib-row.header {
        padding: 12px 22px;
        letter-spacing: 0.08em;
        color: var(--muted);
        font-size: 11px;
        text-transform: uppercase;
        background: var(--bg-cream);
    }
    .lib-row:not(.header):hover { background: var(--bg-cream-2); }
    .lib-doc {
        display: flex;
        gap: 10px;
        align-items: center;
    }
    .lib-doc i {
        color: var(--red);
        font-size: 20px;
    }
    .lib-doc .name {
        color: var(--navy);
        font-size: 14px;
        font-weight: 500;
    }
    .lib-doc .info {
        margin-top: 1px;
        color: var(--muted);
        font-size: 11px;
    }
    .lib-cell {
        color: var(--text);
        font-size: 13px;
    }
    .lib-cell b {
        color: var(--navy);
        font-weight: 500;
    }
    .lib-actions {
        display: flex;
        gap: 4px;
    }
    .lib-actions button {
        padding: 6px;
        color: var(--muted);
        border-radius: 6px;
        font-size: 16px;
        background: transparent;
    }
    .lib-actions button:hover {
        color: var(--navy);
        background: var(--bg-cream);
    }

/* ========== Verify Document With Existence Genius Section ========== */
    .trust-section { padding: 60px 0; }
    .trust-grid {
        display: grid;
        gap: 14px;
        grid-template-columns: 1fr 1fr 1fr;
    }
    .trust-card {
        padding: 26px;
        border-radius: 14px;
        border: 1px solid var(--border);
        background: var(--bg-card);
    }
    .trust-card i {
        margin-bottom: 14px;
        display: block;
        color: var(--mint-deep);
        font-size: 32px;
    }
    .trust-card h4 {
        margin-bottom: 8px;
        color: var(--navy);
        font-size: 19px;
        font-weight: 500;
        font-family: 'Fraunces', serif;
    }
    .trust-card p {
        line-height: 1.6;
        color: var(--muted);
        font-size: 13px;
    }

/* ========== Trust Cards Section ========== */
    .action-final {
        margin: 24px -32px -32px;
        padding: 18px 22px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        border-top: 1px solid var(--border);
        border-radius: 0 0 18px 18px;
        background: var(--bg-cream);
    }
    .action-final-info {
        display: flex;
        gap: 6px;
        align-items: center;
        color: var(--muted);
        font-size: 12px;
    }

    /* ################
        Media Query
    ################### */
    @media (max-width: 1024px) {
        .signing-grid { grid-template-columns: 1fr; }
        .doc-edit-area { grid-template-columns: 1fr; }
        .quick-actions { grid-template-columns: 1fr; }
        .trust-grid { grid-template-columns: 1fr; }
        .lib-row {
            gap: 8px;
            grid-template-columns: 1fr;
        }
        .lib-row.header { display: none; }
        .lib-row:not(.header) { padding: 14px; }
    }
    @media (max-width: 640px) {
        .up-card { padding: 22px; }
        .upload-big { padding: 36px 18px; }
        .sign-steps {
            padding: 14px;
            overflow-x: auto;
        }
        .sign-step .info { display: none; }
        .sign-step::after { margin: 0 4px; }
        .method-tabs { flex-direction: column; }
        .action-final {
            margin: 24px -22px -22px;
            gap: 12px;
            align-items: stretch;
            flex-direction: column;
        }
    }
