/**
 * Styles for Smart PDF Signer & Stamp Module
 */

#signature-pad {
    touch-action: none;
    user-select: none;
}

#signer-drop-zone.dragover {
    border-color: #4f46e5 !important;
    background-color: #f5f3ff !important;
}

/* Translucent checkered background pattern for transparent signatures */
.checkered-bg {
    background-image: linear-gradient(45deg, #f8fafc 25%, transparent 25%), 
                      linear-gradient(-45deg, #f8fafc 25%, transparent 25%), 
                      linear-gradient(45deg, transparent 75%, #f8fafc 75%), 
                      linear-gradient(-45deg, transparent 75%, #f8fafc 75%);
    background-size: 10px 10px;
    background-position: 0 0, 0 5px, 5px -5px, -5px 0px;
    background-color: #ffffff;
}

/* Draggable/resizable element overlay on PDF page */
.signer-element {
    position: absolute;
    box-sizing: border-box;
    cursor: move;
    border: 1.5px dashed transparent;
    padding: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: border-color 0.15s ease;
}

.signer-element:hover {
    border-color: rgba(79, 70, 229, 0.4);
}

.signer-element.active {
    border-color: #4f46e5 !important;
}

.signer-element img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    user-select: none;
    pointer-events: none;
}

/* Active element delete button */
.signer-element .btn-delete-element {
    position: absolute;
    top: -12px;
    left: -12px;
    width: 22px;
    height: 22px;
    background-color: #ef4444;
    color: #ffffff;
    font-size: 10px;
    font-weight: bold;
    border-radius: 50%;
    display: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
    border: 1.5px solid #ffffff;
    z-index: 100;
}

.signer-element.active .btn-delete-element {
    display: flex;
}

/* Active element resize handle */
.signer-element .resize-handle {
    position: absolute;
    bottom: -8px;
    right: -8px;
    width: 14px;
    height: 14px;
    background-color: #3b82f6;
    border-radius: 50%;
    display: none;
    cursor: se-resize;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
    border: 2px solid #ffffff;
    z-index: 100;
}

.signer-element.active .resize-handle {
    display: block;
}

/* Active element rotate handle & line */
.signer-element .rotate-handle {
    position: absolute;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    width: 20px;
    height: 20px;
    background-color: #10b981;
    color: #ffffff;
    font-size: 10px;
    border-radius: 50%;
    display: none;
    align-items: center;
    justify-content: center;
    cursor: grab;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
    border: 1.5px solid #ffffff;
    z-index: 100;
}

.signer-element.active .rotate-handle {
    display: flex;
}

.signer-element .rotate-line {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    width: 1.5px;
    height: 12px;
    background-color: #4f46e5;
    display: none;
    z-index: 99;
}

.signer-element.active .rotate-line {
    display: block;
}

/* Saved Asset Card in Left Panel */
.saved-asset-card {
    position: relative;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    padding: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 80px;
    cursor: pointer;
    background-color: #ffffff;
    transition: all 0.2s ease;
    overflow: hidden;
}

.saved-asset-card:hover {
    border-color: #4f46e5;
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.08);
    transform: translateY(-1px);
}

.saved-asset-card img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.saved-asset-card .btn-delete-asset {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 18px;
    height: 18px;
    background-color: rgba(239, 68, 68, 0.9);
    color: #ffffff;
    font-size: 8px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    border: none;
    opacity: 0;
    transition: opacity 0.2s ease;
}

.saved-asset-card:hover .btn-delete-asset {
    opacity: 1;
}

.saved-asset-card .btn-delete-asset:hover {
    background-color: #dc2626;
}

/* Custom Scrollbar for elements list */
#saved-assets-list::-webkit-scrollbar {
    width: 4px;
}

#saved-assets-list::-webkit-scrollbar-track {
    background: transparent;
}

#saved-assets-list::-webkit-scrollbar-thumb {
    background: #cbd5e1;
    border-radius: 4px;
}

#saved-assets-list::-webkit-scrollbar-thumb:hover {
    background: #94a3b8;
}

/* Responsive scale configurations for PDF view container */
#pdf-signer-view-container {
    max-width: 100%;
    box-sizing: border-box;
}

#pdf-bg-canvas {
    max-width: 100%;
    height: auto !important;
}
