    @font-face {
        font-family: 'Poppins';
        src: url('https://www.precitools-it.com/2025-fonts/Poppins-Regular.woff') format('woff');
        font-weight: 400;
        font-style: normal;
        font-display: swap;
    }
    @font-face {
        font-family: 'Poppins';
        src: url('https://www.precitools-it.com/2025-fonts/Poppins-Medium.woff') format('woff');
        font-weight: 500;
        font-style: normal;
        font-display: swap;
    }
    @font-face {
        font-family: 'Poppins';
        src: url('https://www.precitools-it.com/2025-fonts/Poppins-Bold.woff') format('woff');
        font-weight: 600;
        font-style: normal;
        font-display: swap;
        font-synthesis: weight;
    }

        * { box-sizing: border-box; }
        :root {
            --splitter-size: 1px;
            --splitter-color: #ccc;
            --splitter-active: #4dabf7;
        }
        body { 
            margin: 0; 
            padding: 0;
            height: 100vh; 
            display: flex; 
            flex-direction: column; 
            overflow: hidden; 
            background-color: #1e1e32; 
            font-family: 'Poppins', Arial, sans-serif;
        }
        /* TOP BAR */
        .top-bar {
            display: flex;
            align-items: center;
            gap: 15px;
            padding: 10px 15px;
            background: #f8f9fa; 
            flex-shrink: 0;
            height: 56px; 
            overflow: hidden; 
        }
        .btn-normal { 
            font-family: 'Poppins', Arial, sans-serif;
            padding: 4px 6px; 
            font-size: 12px; 
            cursor: pointer; 
            background: #1c3ba5;  
            color: white; 
            border: none; 
            border-radius: 4px; 
            display: inline-flex; 
            align-items: center; 
            justify-content: center;
        }
        .btn-normal svg {
            width: 18px;
            height: 18px;
            flex-shrink: 0;
        }
        .btn-normal:disabled { 
            background: #e9ecef !important; 
            color: #adb5bd !important; 
            cursor: not-allowed; 
        }
        .btn-normal:hover, .btn-medium-color:hover { 
            background: #1a4af2; 
        }
        
        /* 1) Cursor pointer on all parts of upload button */
        .file-input-wrapper {
            position: relative;
            overflow: hidden;
            display: flex;
        }
        .file-input-wrapper, 
        .file-input-wrapper button, 
        .file-input-wrapper input[type=file],
        .file-input-wrapper svg {
            cursor: pointer !important;
        }
        
        .file-input-wrapper input[type=file] {
            font-size: 100px;
            position: absolute;
            left: 0;
            top: 0;
            opacity: 0;
            cursor: pointer;
        }

        /* MAIN CONTENT & CANVAS */
        .main-content {
            display: flex;
            flex-direction: column;
            flex: 1;
            min-height: 0; 
        }

        .canvas-container {
            flex: 1;
            min-height: 0; 
            position: relative;
            background-color: #4a02b4;
        }

        #canvas-container {
            width: 100%;
            height: 100%;
            display: block;
        }

        /* SPLITTER EXACTLY AS IN PROFILE BUILDER */
        .h-splitter {
            flex: 0 0 var(--splitter-size);
            height: var(--splitter-size);
            min-height: var(--splitter-size);
            max-height: var(--splitter-size);
            background: var(--splitter-color);
            cursor: row-resize;
            transition: background 0.2s;
            z-index: 10;
            
            box-sizing: border-box !important;
            flex-shrink: 0 !important;
            border: none !important;
            outline: none !important;
            shape-rendering: crispEdges !important; 
        }
        .h-splitter:hover, .h-splitter.active {
            background: var(--splitter-active);
        }

        /* ACTION LOG */
        .log-wrapper {
            flex: 0 0 150px; 
            display: flex;
            flex-direction: column;
            background: #fff;
            min-height: 40px; 
        }

        .log-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 5px 10px;
            background: #f8f9fa;
            border-bottom: 1px solid #ddd;
            font-size: 12px;
            font-weight: bold;
        }

        #actionLog {
            flex: 1;
            overflow-y: auto;
            padding: 10px;
            font-size: 13px;
        }

        .log-entry { margin-bottom: 3px; }
        .log-error { color: #fa5252; font-weight: bold; }
        .log-success { color: #008431; font-weight: bold; }
        .log-result { color: #1c3ba5; font-weight: bold; }

        /* ==========================================
           VIEW CONTROLS (CAMERA AND ZOOM)
           ========================================== */
        .view-panel {
            position: absolute;
            top: 15px;
            left: 15px;
            display: flex;
            flex-direction: column;
            gap: 4px;
            background: rgba(30, 30, 50, 0.75);
            backdrop-filter: blur(4px);
            padding: 6px;
            border-radius: 6px;
            border: 1px solid rgba(255, 255, 255, 0.1);
            z-index: 100;
        }
        .view-btn {
            background: transparent;
            border: none;
            color: #e9ecef;
            cursor: pointer;
            width: 36px;
            height: 36px;
            border-radius: 4px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 11px;
            font-weight: 600;
            font-family: 'Poppins', sans-serif;
            transition: all 0.2s;
        }
        .view-btn:hover { 
            background: rgba(77, 171, 247, 0.4); 
            color: #fff;
        }
        .view-btn svg {
            width: 20px;
            height: 20px;
        }
        .view-divider {
            height: 1px;
            background: rgba(255, 255, 255, 0.2);
            margin: 4px 0;
        }

        /* ==========================================
           ABOUT MODAL
           ========================================== */
        .modal-overlay {
            position: fixed;
            top: 0;
            left: 0;
            width: 100vw;
            height: 100vh;
            background: rgba(0, 0, 0, 0.6);
            display: none; /* Hidden by default */
            align-items: center;
            justify-content: center;
            z-index: 9999;
            backdrop-filter: blur(3px);
        }
        .modal-content {
            background: #fff;
            padding: 24px 30px;
            border-radius: 8px;
            position: relative;
            min-width: 320px;
            max-width: 90%;
            box-shadow: 0 10px 25px rgba(0,0,0,0.5);
            color: #333;
            animation: modalFadeIn 0.2s ease-out;
        }
        @keyframes modalFadeIn {
            from { opacity: 0; transform: translateY(-10px); }
            to { opacity: 1; transform: translateY(0); }
        }
        .modal-content h3 {
            margin-top: 0;
            margin-bottom: 10px;
            font-size: 18px;
            color: #1e1e32;
        }
        .modal-content p {
            margin: 0;
            font-size: 14px;
            color: #555;
        }
        .modal-close {
            position: absolute;
            top: 12px;
            right: 12px;
            background: none;
            border: none;
            cursor: pointer;
            color: #888;
            padding: 4px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 4px;
            transition: all 0.2s;
        }
        .modal-close:hover {
            background: #ffe3e3;
            color: #fa5252;
        }
        .modal-close svg {
            width: 20px;
            height: 20px;
        }