@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Nunito:wght@400;600;700&display=swap";:root{--bg-color:#09090b;--panel-bg:#18181ba6;--border-color:#ffffff14;--text-main:#fafafa;--text-muted:#a1a1aa;--primary:#3b82f6;--primary-hover:#2563eb;--accent:#10b981;--body-bg:linear-gradient(145deg, #09090b 0%, #18181b 100%);--input-bg:#09090b80}:root[data-theme=light]{--bg-color:#fafafa;--panel-bg:#ffffffd9;--border-color:#00000014;--text-main:#09090b;--text-muted:#52525b;--primary:#3b82f6;--primary-hover:#2563eb;--body-bg:linear-gradient(145deg, #f4f4f5 0%, #fafafa 100%);--input-bg:#fffc}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--body-bg);color:var(--text-main);flex-direction:column;min-height:100vh;font-family:Inter,sans-serif;transition:background .3s,color .3s;display:flex}.app-container{flex-direction:column;flex:1;max-width:1200px;margin:0 auto;padding:2rem;display:flex;position:relative}.theme-toggle{background:var(--panel-bg);border:1px solid var(--border-color);color:var(--text-main);cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:all .3s;display:flex;position:absolute;top:1rem;right:1rem}.theme-toggle:hover{transform:scale(1.1)}.header{text-align:center;margin-bottom:3rem;padding-top:2rem;animation:.8s ease-out fadeInDown}.header h1{letter-spacing:-.03em;background:linear-gradient(180deg, var(--text-main) 0%, #fff6 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:2.75rem;font-weight:800}:root[data-theme=light] .header h1{background:linear-gradient(180deg, var(--text-main) 0%, #00000080 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.header p{color:var(--text-muted);font-size:1.1rem}.main-content{grid-template-columns:1fr 1fr;align-items:start;gap:2rem;display:grid}@media (width<=768px){.main-content{grid-template-columns:1fr}}.panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:16px;padding:2rem;transition:all .3s;animation:.8s ease-out fadeInUp;box-shadow:0 25px 50px -12px #00000080}:root[data-theme=light] .panel{box-shadow:0 25px 50px -12px #0000001a}.section-title{margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.section-subtitle{color:var(--primary);margin-bottom:1rem;font-size:1.1rem;font-weight:600}.divider{background:var(--border-color);border:0;height:1px;margin:2rem 0 1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--text-main);justify-content:flex-start;gap:8px;margin-bottom:.5rem;font-size:.95rem;font-weight:500;display:flex}.form-control{background:var(--input-bg);border:1px solid var(--border-color);width:100%;color:var(--text-main);border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:all .3s}.form-control:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #3b82f666}input[type=range]{-webkit-appearance:none;background:0 0;width:100%}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--primary);cursor:pointer;border-radius:50%;width:16px;height:16px;margin-top:-6px;box-shadow:0 0 5px #0003}input[type=range]::-webkit-slider-runnable-track{cursor:pointer;background:var(--border-color);border-radius:2px;width:100%;height:4px}.file-upload-wrapper{width:100%;display:inline-block;position:relative;overflow:hidden}.file-upload-wrapper input[type=file]{opacity:0;cursor:pointer;font-size:100px;position:absolute;top:0;left:0}.file-btn{background:var(--input-bg);border:1px dashed var(--border-color);color:var(--text-muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem;transition:all .3s;display:flex}.file-btn:hover{border-color:var(--primary);color:var(--primary);background:#3b82f60d;transform:translateY(-1px)}.grid-2{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.75rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:600;transition:all .3s;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover);transform:translateY(-2px);box-shadow:0 10px 15px -3px #3b82f666}.btn-secondary{color:var(--text-main);border:1px solid var(--border-color);background:0 0}.btn-secondary:hover{background:var(--input-bg);transform:translateY(-2px)}input[type=color]{-webkit-appearance:none;cursor:pointer;background:0 0;border:none;border-radius:8px;width:100%;height:46px;padding:0;overflow:hidden}input[type=color]::-webkit-color-swatch-wrapper{padding:0}input[type=color]::-webkit-color-swatch{border:1px solid var(--border-color);border-radius:8px}input[type=color]:hover::-webkit-color-swatch{border-color:var(--text-muted)}input[type=color]:focus{outline:none;box-shadow:0 0 0 3px #3b82f666}.preview-container{flex-direction:column;justify-content:center;align-items:center;gap:2rem;display:flex;position:sticky;top:2rem}.qr-frame-wrapper{transition:all .3s}.action-buttons{grid-template-columns:1fr;gap:1rem;width:100%;display:grid}@media (width>=640px){.action-buttons{grid-template-columns:1fr 1fr}}.footer{text-align:center;flex-direction:column;align-items:center;gap:1rem;margin-top:auto;padding:2rem 0;display:flex}.footer p{color:var(--text-muted);font-size:.9rem}.coffee-btn{color:#000;background:#fd0;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .2s;display:inline-flex}.coffee-btn:hover{transform:scale(1.05)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.frame-base{flex-direction:column;align-items:center;width:max-content;transition:all .3s;display:inline-flex;overflow:hidden}.frame-minimal{background:#fff;padding:24px;box-shadow:0 10px 25px #0000001a}.frame-bold{border:8px solid;padding:32px;box-shadow:8px 8px #0003}.frame-gradient{background:linear-gradient(135deg,#ff7e5f,#feb47b);padding:8px}.frame-gradient-inner{background:#fff;flex-direction:column;align-items:center;padding:24px;transition:border-radius .3s;display:flex}.frame-elegant{background:#fdfbf7;border:2px solid #d4af37;padding:32px;position:relative}.frame-elegant:before{content:"";pointer-events:none;border:1px dashed #d4af37;transition:border-radius .3s;position:absolute;inset:8px}.frame-playful{background:#fff;border-bottom:8px solid;padding:32px}.frame-title{text-align:center;word-wrap:break-word;max-width:250px;margin-bottom:1rem;font-size:1.25rem;font-weight:700}.frame-subtitle{text-align:center;justify-content:center;align-items:center;gap:4px;margin-top:1rem;font-size:.9rem;font-weight:500;display:flex}.google-badge{flex-direction:column;align-items:center;gap:6px;margin-bottom:12px;display:flex}.playful-badge{margin-bottom:16px}.frame-elegant .frame-title{font-family:Times New Roman,serif;font-size:1.5rem;font-style:italic;font-weight:400}.frame-bold .frame-title{text-transform:uppercase;letter-spacing:1px}.modal-backdrop{-webkit-backdrop-filter:blur(6px);z-index:100;background:#000000b3;justify-content:center;align-items:center;padding:1rem;animation:.3s ease-out modalFadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--panel-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:20px;width:100%;max-width:480px;padding:2.5rem;animation:.4s ease-out modalSlideUp;position:relative;box-shadow:0 25px 60px #00000080}:root[data-theme=light] .modal-content{box-shadow:0 25px 60px #00000026}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px;transition:all .2s;position:absolute;top:1rem;right:1rem}.modal-close:hover{color:var(--text-main);background:var(--border-color)}.modal-icon{justify-content:center;margin-bottom:1rem;animation:1.5s ease-in-out infinite heartbeat;display:flex}.modal-title{text-align:center;color:var(--text-main);margin-bottom:1.25rem;font-size:1.35rem;font-weight:700}.modal-text{color:var(--text-muted);text-align:center;margin-bottom:.75rem;font-size:.95rem;line-height:1.6}.modal-highlight{color:var(--text-main);background:var(--bg-color);border:1px solid var(--border-color);border-left:4px solid var(--primary);text-align:left;border-radius:8px;margin-top:1rem;margin-bottom:1rem;padding:1.25rem;font-weight:500}.modal-dim{opacity:.8;font-size:.88rem;font-style:italic}.modal-actions{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.btn-coffee{color:#000;text-align:center;background:#fd0;border-radius:10px;padding:.9rem;font-size:1.05rem;font-weight:700;text-decoration:none;transition:all .3s}.btn-coffee:hover{transform:translateY(-2px);box-shadow:0 8px 20px #fd06}.btn-ghost{color:var(--text-muted);border:1px solid var(--border-color);cursor:pointer;background:#ffffff0d;border-radius:10px;margin-top:.5rem;padding:.8rem;font-family:inherit;font-size:.95rem;font-weight:500;transition:all .2s}:root[data-theme=light] .btn-ghost{background:#00000008}.btn-ghost:hover{color:var(--text-main);background:#ffffff1a;transform:translateY(-1px)}:root[data-theme=light] .btn-ghost:hover{background:#00000014}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes heartbeat{0%,to{transform:scale(1)}15%{transform:scale(1.15)}30%{transform:scale(1)}45%{transform:scale(1.1)}60%{transform:scale(1)}}
