    /**
    * Pływający koszyk — spójny, nowoczesny wygląd (Nivoda shortcode)
    */
    :root {
        --fc-surface: #ffffff;
        --fc-surface-muted: #f8fafc;
        --fc-border: #e2e8f0;
        --fc-text: #0f172a;
        --fc-text-muted: #64748b;
        --fc-accent: #2563eb;
        --fc-accent-hover: #1d4ed8;
        --fc-danger: #dc2626;
        --fc-danger-hover: #b91c1c;
        --fc-success: #059669;
        --fc-success-hover: #047857;
        --fc-radius: 12px;
        --fc-shadow: 0 10px 40px rgba(15, 23, 42, 0.12);
        --fc-font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    }

    /* Floating Cart Container */
    #floating-cart-container {
        position: fixed !important;
        top: 150px !important;
        right: 0 !important;
        left: auto !important;
        width: fit-content !important;
        z-index: 99999 !important;
        font-family: var(--fc-font);
    }

    /* Floating Cart Toggle Button */
    #floating-cart-toggle {
        position: relative;
        background: linear-gradient(135deg, var(--fc-accent) 0%, #4f46e5 100%);
        color: #fff;
        padding: 12px 18px;
        border-radius: 999px;
        cursor: pointer;
        display: flex;
        align-items: center;
        gap: 6px;
        box-shadow: var(--fc-shadow);
        border: 1px solid rgba(255, 255, 255, 0.2);
        transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
    }

    #floating-cart-toggle:hover {
        filter: brightness(1.05);
        transform: translateY(-1px);
        box-shadow: 0 14px 44px rgba(37, 99, 235, 0.25);
    }

    #floating-cart-toggle .dashicons {
        font-size: 20px;
        margin-right: 5px;
        line-height: 1; /* Align icon vertically */
    }

    /* Cart Count Badge */
    #floating-cart-count {
        background: linear-gradient(135deg, #ef4444, #dc2626);
        color: #fff;
        border-radius: 999px;
        padding: 2px 8px;
        font-size: 0.75rem;
        font-weight: 700;
        position: absolute;
        top: -6px;
        right: -4px;
        min-width: 22px;
        text-align: center;
        line-height: 1.35;
        box-shadow: 0 2px 8px rgba(220, 38, 38, 0.35);
    }

    /* Floating Cart Details Dropdown */
    #floating-cart-details {
        display: none;
        position: absolute;
        top: calc(100% + 10px);
        right: 0;
        background: var(--fc-surface);
        border: 1px solid var(--fc-border);
        border-radius: var(--fc-radius);
        box-shadow: var(--fc-shadow);
        width: min(340px, 92vw);
        padding: 18px;
        max-height: min(420px, 70vh);
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    #floating-cart-details h3 {
        margin: 0 0 14px;
        color: var(--fc-text);
        font-size: 1.05rem;
        font-weight: 700;
        letter-spacing: -0.02em;
    }

    #floating-cart-details ul {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    #floating-cart-details li {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 8px 0;
        border-bottom: 1px dashed #eee;
        font-size: 0.9em;
        color: #555;
    }

    #floating-cart-details li:last-child {
        border-bottom: none;
    }

    #floating-cart-details .remove-from-cart-btn {
        background: var(--fc-danger);
        color: #fff;
        border: none;
        border-radius: 8px;
        padding: 6px 12px;
        font-size: 0.75rem;
        font-weight: 600;
        cursor: pointer;
        transition: background 0.2s ease, transform 0.15s ease;
        flex-shrink: 0;
    }

    #floating-cart-details .remove-from-cart-btn:hover {
        background: var(--fc-danger-hover);
        transform: scale(1.02);
    }

    #floating-cart-details p {
        font-weight: 700;
        text-align: right;
        margin-top: 16px;
        color: var(--fc-text);
        font-size: 0.95rem;
    }

    #floating-cart-details button {
        display: block;
        width: 100%;
        padding: 11px 14px;
        margin-top: 10px;
        border: none;
        border-radius: 10px;
        cursor: pointer;
        font-size: 0.875rem;
        font-weight: 600;
        font-family: inherit;
        transition: background 0.2s ease, transform 0.15s ease;
    }

    #floating-cart-details #clear-cart-button {
        background: var(--fc-danger);
        color: #fff;
    }

    #floating-cart-details #clear-cart-button:hover {
        background: var(--fc-danger-hover);
    }

    #floating-cart-details #go-to-cart-button {
        background: var(--fc-success);
        color: #fff;
    }

    #floating-cart-details #go-to-cart-button:hover {
        background: var(--fc-success-hover);
    }

    #floating-cart-details li img {
        width: 50px; /* Small thumbnail size */
        height: 50px;
        object-fit: contain;
        margin-right: 10px;
        border: 1px solid #eee;
        border-radius: 4px;
    }

    /* --- Full Cart Page Specific Styles --- */
    #diamond-cart {
        margin: 20px 0;
        padding: 20px;
        background-color: #f9f9f9;
        border: 1px solid #ddd;
        border-radius: 8px;
    }

    #diamond-cart h3 {
        color: #333;
        margin-bottom: 20px;
        font-size: 1.8em;
        border-bottom: 2px solid #eee;
        padding-bottom: 10px;
    }

    .diamond-cart-items-full {
        list-style: none;
        padding: 0;
        margin: 0;
    }

    .diamond-cart-item-full {
        background-color: white;
        border: 1px solid #eee;
        border-radius: 8px;
        padding: 15px;
        margin-bottom: 20px;
        box-shadow: 0 2px 5px rgba(0,0,0,0.05);
        display: flex;
        flex-direction: column; /* Stack header and details */
    }

    .diamond-cart-item-full .item-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 15px;
        padding-bottom: 10px;
        border-bottom: 1px dashed #eee;
    }

    .diamond-cart-item-full .item-header .item-image-full {
        width: 80px; /* Larger thumbnail for full cart */
        height: 80px;
        object-fit: contain;
        margin-right: 15px;
        border: 1px solid #ddd;
        border-radius: 4px;
        flex-shrink: 0; /* Prevent shrinking */
    }

    .diamond-cart-item-full .item-header .item-title {
        flex-grow: 1;
        font-size: 1.1em;
        color: #333;
    }

    .diamond-cart-item-full .item-header .item-title strong {
        display: block; /* Ensure shape/carats are on their own line if needed */
        margin-bottom: 5px;
    }

    .diamond-cart-item-full .remove-from-cart-btn-full {
        background-color: #dc3232; /* Red for delete */
        color: white;
        border: none;
        border-radius: 4px;
        padding: 8px 15px;
        font-size: 0.9em;
        cursor: pointer;
        transition: background-color 0.3s ease;
        flex-shrink: 0; /* Prevent shrinking */
    }

    .diamond-cart-item-full .remove-from-cart-btn-full:hover {
        background-color: #a00;
    }

    /* Grid for diamond details */
    .diamond-cart-item-full .item-details-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); /* Responsive grid */
        gap: 10px 20px; /* Row and column gap */
        font-size: 0.95em;
        color: #444;
    }

    .diamond-cart-item-full .item-details-grid span {
        display: block; /* Each detail takes its own line */
    }

    .diamond-cart-item-full .item-details-grid strong {
        color: #000;
        margin-right: 5px;
    }

    .diamond-cart-item-full .item-details-grid a {
        color: #0073aa;
        text-decoration: none;
    }

    .diamond-cart-item-full .item-details-grid a:hover {
        text-decoration: underline;
    }

    #clear-cart-full-page-button {
        background-color: #f44336;
        color: white;
        border: none;
        border-radius: 4px;
        padding: 10px 20px;
        margin-top: 20px;
        cursor: pointer;
        font-size: 1em;
        transition: background-color 0.3s ease;
    }

    #clear-cart-full-page-button:hover {
        background-color: #d32f2f;
    }

    /* Order Form Styles */
    .cart-order-form {
        background-color: #f9f9f9;
        border: 1px solid #ddd;
        border-radius: 8px;
        padding: 20px;
        margin-top: 30px;
    }

    .cart-order-form h3 {
        margin-top: 0;
        margin-bottom: 20px;
        font-size: 1.5em;
        color: #333;
        border-bottom: 1px solid #eee;
        padding-bottom: 10px;
    }

    .cart-order-form label {
        display: block;
        margin-bottom: 8px;
        font-weight: bold;
        color: #555;
    }

    .cart-order-form input[type="text"],
    .cart-order-form input[type="email"],
    .cart-order-form input[type="tel"],
    .cart-order-form textarea {
        width: calc(100% - 20px); /* Adjust for padding */
        padding: 10px;
        margin-bottom: 15px;
        border: 1px solid #ccc;
        border-radius: 4px;
        box-sizing: border-box; /* Include padding in width */
    }

    .cart-order-form textarea {
        resize: vertical; /* Allow vertical resizing */
        min-height: 80px;
    }

    .cart-order-form button[type="submit"] {
        background-color: #0073aa;
        color: white;
        border: none;
        border-radius: 4px;
        padding: 12px 20px;
        cursor: pointer;
        font-size: 1.1em;
        transition: background-color 0.3s ease;
        width: auto; /* Allow button to size based on content */
    }

    .cart-order-form button[type="submit"]:hover {
        background-color: #005177;
    }

    #order-message {
        margin-top: 15px;
        padding: 10px;
        border-radius: 4px;
        font-weight: bold;
    }