/* OneToolBox Meme Generator — polished responsive UI */
.meme-hero{padding:18px 0 16px;text-align:center}
.tool-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:#fff7ed;color:#ea580c;font-size:11px;font-weight:850}
.meme-hero h1{margin:8px 0 5px;color:#0f172a;font-size:clamp(28px,4vw,40px);font-weight:950}
.meme-hero p{margin:0 auto;color:#64748b;font-size:14px;line-height:1.5}
.meme-section{padding-top:4px!important}
.meme-workspace{display:grid;grid-template-columns:285px minmax(0,1fr);gap:12px;max-width:1100px;margin:auto;padding:12px;background:#fff;border:1.5px solid #dbe3ec;border-radius:16px;box-shadow:0 8px 26px rgba(15,23,42,.06)}
.meme-controls{padding:12px;background:linear-gradient(145deg,#f8fbff,#f8fafc);border:1px solid #dbeafe;border-radius:12px}
.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.panel-head>div{display:flex;align-items:center;gap:7px}.panel-head i{color:#2563eb}.panel-head h2{margin:0;font-size:14px;color:#0f172a}.panel-head span{width:7px;height:7px;border-radius:50%;background:#cbd5e1}.panel-head span.active{background:#22c55e;box-shadow:0 0 0 4px #dcfce7}
.upload-card{height:155px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10px;border:2px dashed #bfdbfe;background:#fff;border-radius:11px;transition:.18s}
.upload-card.drag{border-color:#2563eb;background:#eff6ff;transform:scale(1.01)}
.upload-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:#eff6ff;color:#2563eb;font-size:19px;margin-bottom:5px}.upload-card h3{margin:0;color:#0f172a;font-size:12px}.upload-card p{margin:3px 0 7px;color:#94a3b8;font-size:9px}.upload-btn{display:inline-flex;align-items:center;gap:6px;justify-content:center;min-height:34px;padding:0 13px;border-radius:8px;background:#2563eb;color:#fff;font-size:10px;font-weight:850;cursor:pointer;box-shadow:0 4px 10px rgba(37,99,235,.16)}.upload-btn:hover{background:#1d4ed8}.upload-card small{margin-top:5px;color:#94a3b8;font-size:9px}
.control-group{margin-top:9px}.control-group label{display:flex;justify-content:space-between;align-items:center;color:#334155;font-size:10px;font-weight:850}.control-group input[type=text],.control-group select{width:100%;height:34px;margin-top:4px;padding:0 8px;border:1px solid #dbe3ec;border-radius:7px;background:#fff;color:#0f172a;font:inherit;font-size:10px;outline:none}.control-group input:focus,.control-group select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #dbeafe}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:8px}.control-group.compact output{color:#2563eb;font-size:9px}.control-group input[type=range]{width:100%;margin-top:5px;accent-color:#2563eb}.color-input{width:100%;height:32px;margin-top:4px;padding:2px;border:1px solid #dbe3ec;border-radius:7px;background:#fff;cursor:pointer}
.move-box{margin-top:10px;padding:8px;border:1px solid #dbe3ec;border-radius:9px;background:#fff}.move-title{display:flex;justify-content:space-between;font-size:9px;font-weight:850;color:#475569}.move-title small{font-weight:600;color:#94a3b8}.move-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:6px}.move-grid button{height:28px;border:1px solid #dbe3ec;border-radius:6px;background:#f8fafc;color:#334155;cursor:pointer;font-weight:850}.move-grid button:hover{background:#eff6ff;border-color:#93c5fd;color:#2563eb}
.action-row{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.secondary-btn,.danger-btn{height:35px;border-radius:8px;border:1px solid #dbe3ec;font-size:10px;font-weight:850;cursor:pointer}.secondary-btn{background:#fff;color:#475569}.secondary-btn:hover{background:#eff6ff}.danger-btn{background:#fff1f2;color:#dc2626;border-color:#fecdd3}.danger-btn:hover{background:#fee2e2}
.meme-preview-area{min-width:0}.preview-bar{height:38px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;border:1px solid #dbe3ec;border-radius:8px;background:#f8fafc;color:#64748b;font-size:9px}.preview-bar strong{color:#0f172a;font-size:11px;margin-right:7px}.preview-bar #status{color:#94a3b8}.preview-holder{height:500px;margin-top:8px;padding:14px;display:flex;align-items:center;justify-content:center;overflow:auto;background:#eef2f7;border:1px solid #dbe3ec;border-radius:11px}.empty-preview{text-align:center;color:#94a3b8}.empty-preview i{font-size:42px;color:#cbd5e1}.empty-preview h3{margin:8px 0 3px;color:#475569;font-size:13px}.empty-preview p{margin:0;font-size:10px}.meme-preview-area canvas{display:block;max-width:100%;max-height:100%;width:auto;height:auto;background:#fff;box-shadow:0 7px 20px rgba(15,23,42,.18);border-radius:3px}
.preview-tools{height:32px;display:flex;justify-content:center;align-items:center;gap:5px;margin-top:6px}.preview-tools button{height:28px;min-width:32px;padding:0 8px;border:1px solid #dbe3ec;border-radius:6px;background:#fff;color:#475569;font-size:9px;font-weight:850;cursor:pointer}.preview-tools span{min-width:45px;text-align:center;color:#64748b;font-size:9px;font-weight:850}
.download-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:7px}.download-btn{height:40px;border:0;border-radius:8px;background:#16a34a;color:#fff;font-size:10px;font-weight:850;cursor:pointer}.download-btn.jpg{background:#7c3aed}.download-btn:hover{filter:brightness(.95)}.download-btn:disabled{opacity:.4;cursor:not-allowed}
.info-section{padding-top:28px!important}.info-section h2{text-align:center;margin:0 0 12px;color:#0f172a;font-size:23px}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:25px}.feature-grid article{padding:14px;border:1.5px solid #dbeafe;border-radius:11px;background:linear-gradient(145deg,#fff,#f8fbff);text-align:center}.feature-grid i{display:grid;place-items:center;width:36px;height:36px;margin:auto;border-radius:10px;background:#eff6ff;color:#2563eb}.feature-grid h3{margin:7px 0 3px;font-size:12px;color:#0f172a}.feature-grid p{margin:0;color:#64748b;font-size:9px;line-height:1.5}
.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:25px}.steps-grid>div{padding:11px;border:1px solid #e2e8f0;border-radius:9px;background:#fff;text-align:center}.steps-grid b{display:grid;place-items:center;width:25px;height:25px;margin:auto auto 5px;border-radius:50%;background:#2563eb;color:#fff;font-size:10px}.steps-grid span{font-size:9px;color:#64748b}.faq{max-width:850px;margin:auto;border:1px solid #dbe3ec;border-radius:10px;overflow:hidden}.faq details{border-bottom:1px solid #e5e7eb}.faq details:last-child{border-bottom:0}.faq summary{padding:11px 13px;font-size:10px;font-weight:850;color:#334155;cursor:pointer}.faq p{margin:0;padding:0 13px 11px;color:#64748b;font-size:9px;line-height:1.6}
@media(max-width:900px){.meme-workspace{grid-template-columns:1fr}.meme-controls{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.panel-head,.upload-card,.action-row,.move-box{grid-column:1/-1}.preview-holder{height:450px}.feature-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.meme-hero{padding:13px 0 10px}.meme-hero h1{font-size:28px}.meme-workspace{padding:8px;border-radius:12px}.meme-controls{display:block;padding:10px}.upload-card{height:145px}.preview-holder{height:330px;padding:8px}.download-row{grid-template-columns:1fr}.feature-grid,.steps-grid{grid-template-columns:1fr}.info-section h2{font-size:20px}}
html.otb-dark-preload .meme-workspace,body.dark .meme-workspace{background:#111827;border-color:#334155}html.otb-dark-preload .meme-controls,body.dark .meme-controls{background:#0f172a;border-color:#334155}html.otb-dark-preload .panel-head h2,body.dark .panel-head h2,html.otb-dark-preload .upload-card h3,body.dark .upload-card h3,html.otb-dark-preload .control-group label,body.dark .control-group label,html.otb-dark-preload .meme-hero h1,body.dark .meme-hero h1{color:#f8fafc}html.otb-dark-preload .upload-card,body.dark .upload-card,html.otb-dark-preload .control-group input[type=text],body.dark .control-group input[type=text],html.otb-dark-preload .control-group select,body.dark .control-group select,html.otb-dark-preload .color-input,body.dark .color-input,html.otb-dark-preload .move-box,body.dark .move-box,html.otb-dark-preload .secondary-btn,body.dark .secondary-btn,html.otb-dark-preload .preview-tools button,body.dark .preview-tools button,html.otb-dark-preload .steps-grid>div,body.dark .steps-grid>div,html.otb-dark-preload .feature-grid article,body.dark .feature-grid article{background:#111827;border-color:#334155;color:#e2e8f0}html.otb-dark-preload .preview-holder,body.dark .preview-holder{background:#0b1220;border-color:#334155}
