.qr-code-section{background:#fff;border-radius:8px;overflow:hidden;width:100%}.qr-code-content{background:#f5f5f5;border:1px dashed #e1e1e1;border-radius:6px;flex-direction:column;min-height:180px;padding:16px;position:relative}.qr-code-content,.qr-code-skeleton{align-items:center;display:flex;justify-content:center}.qr-code-skeleton{width:100%}.qr-skeleton-box{animation:skeleton-pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,#e1e1e1 25%,#f0f0f0 50%,#e1e1e1 75%);background-size:200% 100%;border-radius:6px;height:150px;width:150px}.qr-code-generate{align-items:center;display:flex;flex-direction:column;gap:12px;padding:16px}.qr-code-icon-wrapper{align-items:center;color:#616161;display:flex;justify-content:center}.qr-code-generate-text{color:#616161;font-size:13px;margin:0;text-align:center}.qr-code-generate-button{align-items:center;background:#000;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;justify-content:center;padding:8px 16px;transition:background .2s ease}.qr-code-generate-button:hover{background:#333}.qr-code-generate-button:disabled{background:#ccc;cursor:not-allowed}.qr-code-display{align-items:center;display:flex;flex-direction:column;gap:12px;width:100%}.qr-code-image-wrapper{align-items:center;background:#fff;border:1px solid #e1e1e1;border-radius:6px;display:flex;justify-content:center;padding:8px}.qr-code-image{height:150px;object-fit:contain;width:150px}.qr-code-stats-row{border-top:1px solid #e1e1e1}.qr-code-preview-label,.qr-code-stats-row{align-items:center;display:flex;justify-content:space-between;padding-top:8px;width:100%}.qr-code-preview-badge{align-items:center;background:#f0f0f0;border:1px solid #e1e1e1;border-radius:4px;color:#616161;display:inline-flex;font-size:11px;font-weight:500;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.qr-code-stats{align-items:center;color:#616161;display:flex;font-size:13px;gap:6px}.qr-code-stats svg{color:#616161}.qr-code-actions{align-items:center;display:flex;gap:6px}.qr-code-action-button{align-items:center;background:#fff;border:1px solid #e1e1e1;border-radius:6px;color:#616161;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .2s ease}.qr-code-action-button:hover{background:#f5f5f5;border-color:#d1d1d1;color:#303030}.qr-code-action-button:disabled{cursor:not-allowed;opacity:.5}.qr-code-action-button svg{align-items:center;display:flex;justify-content:center}.qr-code-error{align-items:center;display:flex;flex-direction:column;gap:12px;padding:16px}.qr-code-error p{color:#ef4444;font-size:13px;margin:0;text-align:center}.qr-code-retry-button{align-items:center;background:#0000;border:1px solid #e1e1e1;border-radius:6px;color:#616161;cursor:pointer;display:flex;font-size:13px;gap:6px;padding:6px 12px;transition:all .2s ease}.qr-code-retry-button:hover{background:#f5f5f5;border-color:#d1d1d1}.dark-mode .qr-code-section{background:#002331}.dark-mode .qr-code-content{background:#001a23;border-color:#444}.dark-mode .qr-skeleton-box{background:linear-gradient(90deg,#333 25%,#444 50%,#333 75%);background-size:200% 100%}.dark-mode .qr-code-generate-text,.dark-mode .qr-code-icon-wrapper{color:#999}.dark-mode .qr-code-generate-button{background:#fff;color:#000}.dark-mode .qr-code-generate-button:hover{background:#e0e0e0}.dark-mode .qr-code-generate-button:disabled{background:#444;color:#666}.dark-mode .qr-code-image-wrapper{background:#002331;border-color:#444}.dark-mode .qr-code-stats-row{border-top-color:#444}.dark-mode .qr-code-stats,.dark-mode .qr-code-stats svg{color:#999}.dark-mode .qr-code-action-button{background:#002331;border-color:#444;color:#999}.dark-mode .qr-code-action-button:hover{background:#001a23;border-color:#666;color:#fff}.dark-mode .qr-code-error p{color:#ff6b6b}.dark-mode .qr-code-retry-button{background:#002331;border-color:#444;color:#999}.dark-mode .qr-code-retry-button:hover{background:#001a23;border-color:#666;color:#fff}.dark-mode .qr-code-preview-badge{background:#1a3a4a;border-color:#444;color:#999}@media screen and (max-width:768px){.qr-code-content{min-height:160px;padding:12px}.qr-code-image{height:120px;width:120px}.qr-code-generate-button{font-size:12px;padding:6px 12px}.qr-code-stats{font-size:12px}.qr-code-action-button{padding:5px}}@media screen and (max-width:480px){.qr-code-image{height:100px;width:100px}.qr-code-stats-row{flex-direction:column;gap:10px}.qr-code-stats{order:2}.qr-code-actions{order:1}}.qr-customizer-overlay{align-items:center;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffffd9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.qr-customizer-modal{background:#fff;border:1px solid #ccc;border-radius:18px;box-shadow:none;display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:100%}.qr-customizer-header{align-items:center;border-bottom:1px solid #e1e1e1;display:flex;justify-content:space-between;padding:20px 24px}.qr-customizer-header-left{align-items:center;display:flex;gap:8px}.qr-customizer-header h2{color:#000;font-size:16px;font-weight:600;margin:0}.qr-header-help-icon{color:#666;cursor:pointer}.qr-customizer-close-btn{align-items:center;background:none;border:none;border-radius:6px;color:#616161;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .2s ease}.qr-customizer-close-btn:hover{background:#f5f5f5;color:#000}.qr-customizer-body{grid-gap:24px;display:grid;flex:1 1;gap:24px;grid-template-columns:1fr 1fr;overflow-y:auto;padding:24px}.qr-customizer-controls{display:flex;flex-direction:column;gap:20px}.qr-controls-loading{display:flex;flex-direction:column;gap:16px}.qr-controls-skeleton{animation:skeleton-pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,#e1e1e1 25%,#f0f0f0 50%,#e1e1e1 75%);background-size:200% 100%;border-radius:8px;height:80px}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.qr-control-section{background:#f9f9f9;border:1px solid #e1e1e1;border-radius:10px;padding:16px}.qr-control-section-header{align-items:center;border-bottom:1px solid #e1e1e1;color:#333;display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:14px;padding-bottom:10px}.qr-control-section-header svg{color:#666}.qr-size-icon{color:#666;font-size:16px}.qr-control-row{margin-bottom:14px}.qr-control-row:last-child{margin-bottom:0}.qr-control-label{align-items:center;color:#333;display:flex;font-size:13px;font-weight:500;gap:6px;margin-bottom:8px}.qr-control-label svg{color:#999;cursor:pointer}.qr-size-value{background:#e9e9e9;border-radius:4px;color:#000;font-size:12px;font-weight:600;margin-left:auto;padding:2px 8px}.qr-color-input-wrapper{align-items:center;display:flex;gap:10px}.qr-color-input{background:#0000;border:1px solid #ddd;border-radius:6px;cursor:pointer;height:36px;padding:2px;width:40px}.qr-color-input::-webkit-color-swatch-wrapper{padding:2px}.qr-color-input::-webkit-color-swatch{border:none;border-radius:4px}.qr-color-text-input{border:1px solid #ddd;border-radius:6px;flex:1 1;font-family:monospace;font-size:13px;padding:8px 12px;text-transform:uppercase}.qr-color-text-input:focus{border-color:#000;outline:none}.qr-style-options{display:flex;gap:8px}.qr-style-option{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;display:flex;flex:1 1;font-size:13px;gap:4px;justify-content:center;padding:8px 12px;transition:all .2s ease}.qr-style-option:hover{background:#f5f5f5;border-color:#999}.qr-style-option.active{background:#000;border-color:#000;color:#fff}.qr-style-option.active svg{color:#fff}.qr-select-input{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:13px;padding:10px 36px 10px 12px;width:100%}.qr-select-input:focus{border-color:#000;outline:none}.qr-text-input{border:1px solid #ddd;border-radius:6px;color:#333;font-size:13px;padding:10px 12px;width:100%}.qr-text-input:focus{border-color:#000;outline:none}.qr-text-input::placeholder{color:#999}.qr-slider-wrapper{display:flex;flex-direction:column;gap:6px}.qr-range-input{-webkit-appearance:none;appearance:none;background:#e1e1e1;border-radius:3px;height:6px;outline:none;width:100%}.qr-range-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#000;border:2px solid #fff;border-radius:50%;box-shadow:none;cursor:pointer;height:18px;width:18px}.qr-range-input::-moz-range-thumb{background:#000;border:2px solid #fff;border-radius:50%;box-shadow:none;cursor:pointer;height:18px;width:18px}.qr-slider-labels{color:#999;display:flex;font-size:11px;justify-content:space-between}.qr-logo-preview{align-items:center;background:#fff;border:1px dashed #ddd;border-radius:6px;display:flex;justify-content:center;margin-bottom:14px;padding:12px}.qr-logo-preview-img{max-height:80px;max-width:80px;object-fit:contain}.qr-reset-btn{align-items:center;background:#0000;border:1px solid #ddd;border-radius:6px;color:#666;cursor:pointer;display:flex;font-size:13px;gap:6px;justify-content:center;padding:10px 16px;transition:all .2s ease}.qr-reset-btn:hover{background:#f5f5f5;border-color:#ccc;color:#333}.qr-customizer-preview{background:#f9f9f9;border:1px solid #e1e1e1;border-radius:10px;display:flex;flex-direction:column;gap:16px;padding:16px}.qr-preview-header{align-items:center;border-bottom:1px solid #e1e1e1;color:#333;display:flex;font-size:14px;font-weight:600;justify-content:space-between;padding-bottom:10px}.qr-preview-download-btn{align-items:center;background:#fff;border:1px solid #e1e1e1;border-radius:6px;color:#616161;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .2s ease}.qr-preview-download-btn:hover{background:#f5f5f5;border-color:#d1d1d1;color:#303030}.qr-preview-container{align-items:center;background:#fff;border:1px dashed #e1e1e1;border-radius:8px;display:flex;flex:1 1;justify-content:center;min-height:250px;padding:16px}.qr-preview-loading{align-items:center;color:#666;display:flex;flex-direction:column;font-size:13px;gap:12px}.qr-preview-spinner{animation:spin .8s linear infinite;border:3px solid #e1e1e1;border-radius:50%;border-top-color:#000;height:32px;width:32px}@keyframes spin{to{transform:rotate(1turn)}}.qr-preview-image-wrapper{align-items:center;border:1px solid #e1e1e1;border-radius:8px;display:flex;justify-content:center;padding:16px}.qr-preview-image{max-height:200px;max-width:200px;object-fit:contain}.qr-preview-placeholder{align-items:center;color:#999;display:flex;flex-direction:column;gap:12px;text-align:center}.qr-preview-placeholder svg{color:#ccc}.qr-preview-placeholder p{font-size:13px;margin:0;max-width:200px}.qr-preview-generate-btn{align-items:center;background:#fff;border:1px solid #ddd;border-radius:8px;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s ease}.qr-preview-generate-btn:hover{background:#f5f5f5;border-color:#ccc}.qr-preview-generate-btn:disabled{cursor:not-allowed;opacity:.6}.qr-btn-spinner{animation:spin .8s linear infinite;border:2px solid #ddd;border-radius:50%;border-top-color:#333;height:14px;width:14px}.qr-preview-hint{color:#e67e22;font-size:12px;font-style:italic;margin:0;text-align:center}.qr-customizer-footer{background:#fafafa;border-top:1px solid #e1e1e1;display:flex;gap:10px;justify-content:flex-end;padding:16px 24px}.qr-cancel-btn{background:#0000;border:1px solid #ddd;border-radius:6px;color:#333;cursor:pointer;font-size:14px;padding:10px 20px;transition:all .2s ease}.qr-cancel-btn:hover{background:#f5f5f5;border-color:#ccc}.qr-save-btn{align-items:center;background:#000;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 24px;transition:all .2s ease}.qr-save-btn:hover{background:#333}.qr-save-btn:disabled{background:#ccc;cursor:not-allowed}.qr-save-btn .qr-btn-spinner{border-color:#fff #ffffff4d #ffffff4d}.dark-mode.qr-customizer-overlay{background:#000000d9}.dark-mode .qr-customizer-modal{background:#001a23;border-color:#444}.dark-mode .qr-customizer-header{border-bottom-color:#444}.dark-mode .qr-customizer-header h2{color:#fff}.dark-mode .qr-customizer-close-btn,.dark-mode .qr-header-help-icon{color:#999}.dark-mode .qr-customizer-close-btn:hover{background:#002331;color:#fff}.dark-mode .qr-control-section{background:#002331;border-color:#444}.dark-mode .qr-control-section-header{border-bottom-color:#444;color:#fff}.dark-mode .qr-control-section-header svg,.dark-mode .qr-size-icon{color:#999}.dark-mode .qr-control-label{color:#fff}.dark-mode .qr-control-label svg{color:#666}.dark-mode .qr-size-value{background:#001a23;color:#fff}.dark-mode .qr-color-input,.dark-mode .qr-color-text-input{background:#001a23;border-color:#444}.dark-mode .qr-color-text-input{color:#fff}.dark-mode .qr-color-text-input:focus{border-color:#fff}.dark-mode .qr-style-option{background:#001a23;border-color:#444;color:#fff}.dark-mode .qr-style-option:hover{background:#002331;border-color:#666}.dark-mode .qr-style-option.active{background:#fff;border-color:#fff;color:#000}.dark-mode .qr-select-input{background:#001a23;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");border-color:#444;color:#fff}.dark-mode .qr-select-input:focus{border-color:#fff}.dark-mode .qr-text-input{background:#001a23;border-color:#444;color:#fff}.dark-mode .qr-text-input:focus{border-color:#fff}.dark-mode .qr-text-input::placeholder{color:#666}.dark-mode .qr-range-input{background:#444}.dark-mode .qr-range-input::-webkit-slider-thumb{background:#fff;border-color:#001a23}.dark-mode .qr-range-input::-moz-range-thumb{background:#fff;border-color:#001a23}.dark-mode .qr-slider-labels{color:#666}.dark-mode .qr-logo-preview{background:#001a23;border-color:#444}.dark-mode .qr-reset-btn{border-color:#444;color:#999}.dark-mode .qr-reset-btn:hover{background:#002331;border-color:#666;color:#fff}.dark-mode .qr-customizer-preview{background:#002331;border-color:#444}.dark-mode .qr-preview-header{border-bottom-color:#444;color:#fff}.dark-mode .qr-preview-download-btn{background:#001a23;border-color:#444;color:#999}.dark-mode .qr-preview-download-btn:hover{background:#002331;border-color:#666;color:#fff}.dark-mode .qr-preview-container{background:#001a23;border-color:#444}.dark-mode .qr-preview-loading{color:#999}.dark-mode .qr-preview-spinner{border-color:#fff #444 #444}.dark-mode .qr-preview-image-wrapper{border-color:#444}.dark-mode .qr-preview-placeholder{color:#666}.dark-mode .qr-preview-placeholder svg{color:#444}.dark-mode .qr-preview-generate-btn{background:#001a23;border-color:#444;color:#fff}.dark-mode .qr-preview-generate-btn:hover{background:#002331;border-color:#666}.dark-mode .qr-btn-spinner{border-color:#fff #444 #444}.dark-mode .qr-preview-hint{color:#e67e22}.dark-mode .qr-customizer-footer{background:#002331;border-top-color:#444}.dark-mode .qr-cancel-btn{background:#001a23;border-color:#444;color:#fff}.dark-mode .qr-cancel-btn:hover{background:#002331;border-color:#666}.dark-mode .qr-save-btn{background:#fff;color:#000}.dark-mode .qr-save-btn:hover{background:#e0e0e0}.dark-mode .qr-save-btn:disabled{background:#444;color:#666}.dark-mode .qr-save-btn .qr-btn-spinner{border-color:#000 #0003 #0003}.dark-mode .qr-controls-skeleton{background:linear-gradient(90deg,#333 25%,#444 50%,#333 75%);background-size:200% 100%}@media screen and (max-width:768px){.qr-customizer-modal{border-radius:12px;max-height:95vh;max-width:95%}.qr-customizer-body{gap:16px;grid-template-columns:1fr;padding:16px}.qr-customizer-preview{order:-1}.qr-preview-container{min-height:200px}.qr-preview-image{max-height:150px;max-width:150px}.qr-customizer-header{padding:16px}.qr-customizer-footer{padding:12px 16px}.qr-style-options{flex-wrap:wrap}.qr-style-option{flex-basis:calc(50% - 4px);flex-grow:1;flex-shrink:1;min-width:80px}}@media screen and (max-width:480px){.qr-customizer-modal{border-radius:0;max-height:100vh;max-width:100%}.qr-customizer-header h2{font-size:14px}.qr-control-section{padding:12px}.qr-control-section-header{font-size:13px}.qr-control-label{font-size:12px}.qr-color-input-wrapper{align-items:flex-start;flex-direction:column;gap:8px}.qr-color-input{height:40px;width:100%}.qr-color-text-input{width:100%}.qr-style-option{flex:1 1 100%;padding:10px}.qr-preview-image{max-height:120px;max-width:120px}.qr-cancel-btn,.qr-save-btn{font-size:13px;padding:10px 16px}.qr-customizer-footer{flex-direction:column-reverse}.qr-cancel-btn,.qr-save-btn{justify-content:center;width:100%}}