:root{--color-primary: #c3002f;--color-primary-hover: #a00026;--color-primary-soft: rgba(195, 0, 47, .1);--color-primary-shadow: rgba(195, 0, 47, .25);--color-bg: #f5f7fa;--color-surface: #ffffff;--color-surface-muted: #f8f9fa;--color-surface-alt: #f0f0f0;--color-surface-alt-2: #fafafa;--color-border: #dddddd;--color-border-soft: #eeeeee;--color-text: #333333;--color-text-strong: #000000;--color-text-secondary: #444444;--color-text-muted: #666666;--color-text-subtle: #888888;--color-text-on-primary: #ffffff;--color-success: #52c41a;--color-success-soft: #d9f7be;--color-success-bg: #f6ffed;--color-info: #1890ff;--color-info-soft: #bae7ff;--color-info-bg: #e6f7ff;--color-warning: #faad14;--color-warning-strong: #d48806;--color-warning-soft: #ffe58f;--color-warning-bg: #fffbe6;--color-danger: #ff4d4f;--color-danger-soft: #fff1f0;--grad-primary: linear-gradient(135deg, #c3002f 0%, #ff4d4f 100%);--grad-accent: linear-gradient(135deg, #1890ff 0%, #52c41a 100%);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -2px rgba(0, 0, 0, .03);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .06), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-card-hover: 0 12px 24px rgba(0, 0, 0, .06);--font-display: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 20px;--transition: all .2s cubic-bezier(.4, 0, .2, 1);--transition-fast: all .1s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--color-bg);color:var(--color-text);min-height:100vh;overflow-x:hidden;line-height:1.6;font-family:var(--font-body)}.flex,.logo-preview-box,.export-row,.logo-container,.tabs-header,.panel-title{display:flex}.flex-center,.logo-thumb-container,.alert,.qr-box,.offline-badge,.option-icon,.btn,.btn-secondary,.btn-primary,.tab-btn{display:flex;align-items:center;justify-content:center}.flex-between,.switch-container,header{display:flex;align-items:center;justify-content:space-between}.flex-column,.export-container,.qr-card,.file-upload-zone,.preview-sticky,.option-card{display:flex;flex-direction:column}.items-center,.logo-preview-box,.qr-card,.file-upload-zone,.logo-container,.option-card,.tabs-header,.panel-title{align-items:center}.justify-center,.qr-card{justify-content:center}.grid{display:grid}.gap-2,.tabs-header{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.p-2,.tabs-header{padding:.5rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.mb-2,.option-grid{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6,.control-group,.tabs-header,.panel-title{margin-bottom:1.5rem}.mt-10{margin-top:2.5rem}.border{border:1px solid var(--color-border)}.border-soft,.logo-thumb-container,.qr-box,.offline-badge,.btn-secondary,.tab-btn.active,.tabs-header,footer,.card,.logo-preview-box,.qr-card,.file-upload-zone,.switch-container,.option-card,.panel{border:1px solid var(--color-border-soft)}.border-b,.panel-title,header{border-bottom:1px solid var(--color-border-soft)}.radius-sm,.remove-logo-btn,.logo-thumb-container,.option-icon{border-radius:var(--radius-sm)}.radius-md,.alert,.tabs-header,.btn,.btn-secondary,.btn-primary,.tab-btn,.input-field,input[type=text],textarea,select,.card,.logo-preview-box,.qr-card,.file-upload-zone,.switch-container,.option-card,.panel{border-radius:var(--radius-md)}.radius-lg,.qr-box{border-radius:var(--radius-lg)}.radius-xl{border-radius:var(--radius-xl)}.radius-full,.offline-badge:before,.offline-badge{border-radius:9999px}.text-center{text-align:center}.text-sm,.alert{font-size:.85rem}.text-xs,.offline-badge{font-size:.75rem}.font-bold,.logo-details #logoFileName,.offline-badge,.option-label,.panel-title,.btn,.btn-secondary,.btn-primary,.tab-btn{font-weight:700}.font-black,.logo-text{font-weight:800}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-subtle,.logo-details #logoFileSize{color:var(--color-text-subtle)}.text-primary{color:var(--color-primary)}.text-truncate,.logo-details{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md,.panel{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.glass,header{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background-color:#ffffffe6}.transition,.file-upload-icon,.offline-badge,.slider-switch:before,.slider-switch,.option-label,.option-icon,.btn,.btn-secondary,.btn-primary,.tab-btn,.input-field,input[type=text],textarea,select,.card,.logo-preview-box,.qr-card,.file-upload-zone,.switch-container,.option-card,.panel{transition:var(--transition)}.interactive,.remove-logo-btn,.qr-box,.file-upload-zone,.switch-container,.option-card{cursor:pointer;transition:var(--transition)}.interactive:hover,.remove-logo-btn:hover,.qr-box:hover,.file-upload-zone:hover,.switch-container:hover,.option-card:hover{transform:translateY(-2px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.anim-fade-in,.tab-content.active{animation:fadeIn .4s ease}.anim-slide-down,.alert{animation:slideDown .3s ease}.card,.logo-preview-box,.qr-card,.file-upload-zone,.switch-container,.option-card,.panel{background:var(--color-surface);padding:1.5rem}.input-field,input[type=text],textarea,select{width:100%;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-strong);padding:12px 16px;font-family:var(--font-body);font-size:.95rem;outline:none}.input-field:focus,input[type=text]:focus,textarea:focus,select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}.btn,.btn-secondary,.btn-primary,.tab-btn{font-family:var(--font-display);font-size:.95rem;padding:12px 20px;border:none;cursor:pointer;gap:8px}.btn:active,.btn-secondary:active,.btn-primary:active,.tab-btn:active{transform:scale(.98)}header{padding:1rem 4%;position:sticky;top:0;z-index:100;box-shadow:var(--shadow-sm)}footer{text-align:center;padding:3rem 1.5rem;color:var(--color-text-subtle);font-size:.85rem;border-top-width:1px;border-bottom:none;border-left:none;border-right:none;margin-top:5rem;background-color:var(--color-surface-muted)}.app-container{padding:25px;display:grid;grid-template-columns:1.25fr .75fr;gap:25px;align-items:start}@media (max-width: 1024px){.app-container{grid-template-columns:1fr;gap:1.5rem}}.panel:hover{border-color:var(--color-border);box-shadow:var(--shadow-lg)}.panel-title{padding-bottom:.75rem;gap:10px;color:var(--color-text-strong);font-size:1.25rem}.panel-title i{color:var(--color-primary)}.tabs-header{background:var(--color-surface-alt)}.tab-btn{flex:1;background:transparent;color:var(--color-text-secondary);font-weight:600;font-size:.9rem;padding:10px 16px}.tab-btn:hover{color:var(--color-text-strong);background:#00000008;transform:none}.tab-btn.active{color:var(--color-primary);background:var(--color-surface);box-shadow:var(--shadow-sm)}.tab-content{display:none}.tab-content.active{display:block}label{display:block;color:var(--color-text-secondary);font-size:.9rem;font-weight:600;margin-bottom:.5rem}.control-group.inline{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.option-card{padding:12px;background:var(--color-surface-muted);gap:8px}.option-card:hover{background:var(--color-surface-alt-2);border-color:var(--color-border)}.option-card.active{background:var(--color-primary-soft);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.option-card.active .option-icon{background:var(--color-primary);color:var(--color-text-on-primary)}.option-card.active .option-label{color:var(--color-primary)}.option-icon{width:32px;height:32px;background:var(--color-surface-alt);color:var(--color-text-muted);font-size:1.1rem}.option-label{font-size:.8rem;color:var(--color-text-secondary)}.switch-container{padding:12px 16px;background:var(--color-surface-muted)}.switch-container:hover{background:var(--color-surface-alt)}.switch{position:relative;display:inline-block;width:44px;height:24px}.switch input{opacity:0;width:0;height:0}.slider-switch{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--color-border);border-radius:34px}.slider-switch:before{position:absolute;content:"";height:16px;width:16px;left:4px;bottom:4px;background-color:#fff;border-radius:50%}input:checked+.slider-switch{background-color:var(--color-primary)}input:checked+.slider-switch:before{transform:translate(20px)}input[type=range]{-webkit-appearance:none;flex:1;height:6px;border-radius:3px;background:var(--color-border);outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--color-primary);cursor:pointer;transition:var(--transition-fast);box-shadow:0 2px 6px var(--color-primary-shadow)}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2);background:var(--color-primary-hover)}.btn-primary{background:var(--color-primary);color:var(--color-text-on-primary);box-shadow:0 4px 12px var(--color-primary-shadow)}.btn-primary:hover{background:var(--color-primary-hover);transform:translateY(-2px);box-shadow:0 6px 16px var(--color-primary-shadow)}.btn-secondary{background:var(--color-surface-alt);color:var(--color-text-secondary)}.btn-secondary:hover{background:var(--color-surface-alt-2);border-color:var(--color-border);color:var(--color-text-strong);transform:translateY(-1px)}.logo-container{gap:12px}.logo-icon{width:36px;height:36px}.logo-text{font-family:var(--font-display);font-size:1.35rem;background:var(--grad-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.5px}.offline-badge{gap:6px;background:var(--color-success-bg);border-color:var(--color-success-soft);color:var(--color-success);padding:6px 14px}.offline-badge:before{content:"";display:inline-block;width:8px;height:8px;background-color:var(--color-success);box-shadow:0 0 8px var(--color-success)}.preview-sticky{position:sticky;top:6rem;gap:1.5rem}.file-upload-zone{border:2px dashed var(--color-border);background:var(--color-surface-muted);padding:24px;text-align:center;gap:12px}.file-upload-zone:hover,.file-upload-zone.dragover{border-color:var(--color-primary);background:var(--color-primary-soft)}.file-upload-icon{font-size:2rem;color:var(--color-text-subtle)}.file-upload-zone:hover .file-upload-icon{color:var(--color-primary);transform:translateY(-4px)}.qr-card{padding:2.5rem 2rem;border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-md)}.qr-box{background:#fff;padding:16px;box-shadow:var(--shadow-lg),0 0 30px var(--color-primary-soft);margin-bottom:2rem;position:relative;max-width:100%;width:312px;height:312px}.qr-box:hover{transform:translateY(-4px) scale(1.02);box-shadow:var(--shadow-xl),0 0 40px var(--color-primary-shadow)}.export-container{width:100%;gap:12px}.export-row{flex-wrap:wrap;gap:10px;width:100%}.export-row>*{flex:1;min-width:100px}canvas{width:280px;height:280px;display:block;border-radius:4px}.alert{padding:12px 16px;margin-bottom:1.5rem;gap:10px}.alert-info{background:var(--color-info-bg);border:1px solid var(--color-info-soft);color:var(--color-info)}.logo-preview-box{gap:12px;padding:10px;background:var(--color-surface-muted);width:100%;margin-top:10px}.logo-thumb-container{width:48px;height:48px;background:#fff;flex-shrink:0;overflow:hidden}.logo-thumb{max-width:100%;max-height:100%;object-fit:contain;display:block}.logo-details{flex:1;font-size:.8rem;text-align:left}.logo-details #logoFileSize{font-size:.75rem}.remove-logo-btn{background:transparent;border:none;color:var(--color-danger);font-size:1.1rem;padding:4px}.remove-logo-btn:hover{background:var(--color-danger-soft);transform:none}
