/*!
 * (c) 2026 PatternDrop. All rights reserved.
 * Unauthorised copying or distribution is prohibited.
 */.preview-background,body{transition:background-color .3s}.mirror-checks,.transparent-toggle{margin-top:.2rem}:root{--bg-page:#F1F5F9;--surface:#FFFFFF;--border:#E2E8F0;--border-hover:#6366F1;--text-primary:#1E293B;--text-secondary:#64748B;--accent:#4F46E5;--accent-light:#EEF2FF;--radius-sm:8px;--radius-md:16px;--radius-lg:20px;--shadow-sm:0 1px 3px rgba(0,0,0,0.04);--shadow-md:0 4px 20px rgba(0,0,0,0.04);--font-family:'Inter',system-ui,-apple-system,sans-serif;--text-base:1rem;--text-sm:0.875rem;--text-xs:0.75rem;--text-lg:1.25rem;--toggle-bg:#E2E8F0;--toggle-dot:#FFFFFF}[data-theme=dark]{--bg-page:#0F172A;--surface:#1E293B;--border:#334155;--border-hover:#818CF8;--text-primary:#F1F5F9;--text-secondary:#94A3B8;--accent:#818CF8;--accent-light:#1E293B;--shadow-sm:0 1px 3px rgba(0,0,0,0.3);--shadow-md:0 4px 20px rgba(0,0,0,0.4);--toggle-bg:#475569;--toggle-dot:#F1F5F9}*{margin:0;padding:0;box-sizing:border-box}body{height:100vh;height:100dvh;overflow:hidden;font-family:var(--font-family);color:var(--text-primary);background:var(--bg-page);position:relative}.preview-background{position:absolute;top:0;left:0;right:0;bottom:0;background-repeat:repeat;z-index:0;cursor:grab}.dropzone,.link,.menu-toggle{cursor:pointer}.preview-background:active{cursor:grabbing}.preview-background.has-pattern{background-color:transparent}.preview-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:var(--text-secondary);pointer-events:none;transition:color .3s;z-index:0}.preview-placeholder .icon{font-size:2.5rem;opacity:.8}.preview-placeholder p,.theme-toggle-label{font-size:var(--text-sm);font-weight:500}.offset-indicator{position:fixed;top:12px;left:12px;background:rgba(0,0,0,.6);color:#fff;padding:.25rem .6rem;border-radius:12px;font-size:.7rem;font-weight:500;pointer-events:none;z-index:100;display:none;transition:left .3s}.dropzone,.menu-toggle,.sidebar{background:var(--surface)}body.sidebar-hidden .offset-indicator{left:60px}.menu-toggle{position:fixed;top:12px;left:12px;width:40px;height:40px;border:none;border-radius:50%;box-shadow:var(--shadow-md);color:var(--text-primary);font-size:1.4rem;z-index:200;display:flex;align-items:center;justify-content:center;transition:left .3s,background .2s,color .2s}.menu-toggle:hover{background:var(--accent);color:#fff}.dropzone:hover,.format-tile:hover:not(:disabled){background:var(--accent-light);border-color:var(--border-hover)}body.sidebar-hidden .menu-toggle{left:12px}.sidebar{position:fixed;top:0;left:0;width:520px;max-width:92vw;height:100vh;height:100dvh;box-shadow:2px 0 20px rgba(0,0,0,.1);z-index:150;display:flex;flex-direction:column;gap:1rem;padding:1.2rem 1.4rem;overflow-y:auto;overflow-x:hidden;transform:translateX(0);transition:transform .3s}body.sidebar-hidden .sidebar{transform:translateX(-100%)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.settings-title{font-size:var(--text-lg);font-weight:600}.sidebar-brand{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm);font-weight:600;color:var(--accent)}.sidebar-logo__icon{font-size:1.4rem}.sidebar-logo__text{letter-spacing:-.3px}.sidebar-copyright{font-size:.7rem;color:var(--text-secondary);opacity:.8;margin-left:.25rem}.upload-section{display:flex;flex-direction:column;gap:.6rem}.dropzone{border:2px dashed var(--border);border-radius:var(--radius-md);text-align:center;padding:.6rem .5rem;transition:border-color .2s,background .2s}.dropzone__icon{font-size:1.3rem}.dropzone p{font-size:.8rem;color:var(--text-secondary);margin:0}.link{background:0 0;border:none;color:var(--accent);text-decoration:underline;font:inherit}.sidebar-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.settings-group{border:none;display:flex;flex-direction:column;gap:.7rem}.settings-group legend{font-size:var(--text-xs);font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.5px}.settings-group.full-width{grid-column:1/-1}.select-group,.slider-group,.toggle-group{display:flex;flex-direction:column;gap:.2rem}.select-group label,.slider-group label{font-size:var(--text-sm);font-weight:500;color:var(--text-primary);white-space:nowrap}.value-input{display:flex;align-items:center;gap:.4rem}.value-input input[type=range]{flex:1;min-width:0}.value-input input[type=number]{width:55px;padding:.2rem .3rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm);text-align:center;font-family:var(--font-family);background:var(--surface);color:var(--text-primary)}.value-input span{width:25px;text-align:center;font-size:var(--text-sm);color:var(--text-secondary);flex-shrink:0}input[type=range],select{width:100%;cursor:pointer}input[type=range]{-webkit-appearance:none;appearance:none;height:6px;background:var(--border);border-radius:5px;outline:0}.custom-size input,select{background:var(--surface);color:var(--text-primary)}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:var(--accent);border-radius:50%;box-shadow:0 2px 6px rgba(79,70,229,.3);transition:.1s;cursor:pointer}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}.select-wrapper{position:relative;overflow:visible}select{padding:.5rem 2rem .5rem .8rem;font-size:var(--text-sm);font-family:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='%2364748B' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;white-space:nowrap}.toggle-group{flex-direction:row;align-items:center;gap:.5rem}input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;margin:0}.btn-primary,.custom-size input{font-size:var(--text-sm);width:100%;font-family:inherit}.toggle-group label{cursor:pointer;font-size:var(--text-sm);font-weight:500;user-select:none;white-space:nowrap}.mirror-checks{display:flex;gap:1.2rem}.mirror-checks .toggle-group{flex-direction:row;align-items:center;gap:.3rem}.custom-size{display:flex;gap:.5rem}.custom-size input{padding:.4rem;border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center}.btn-primary{background:var(--accent);color:#fff;border:none;padding:.7rem 1rem;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:.2s}.slider,.slider::before{transition:.3s;position:absolute}.btn-primary:hover{opacity:.9}.btn-primary:disabled{background:var(--border);color:var(--text-secondary);cursor:not-allowed}.hint-text{color:var(--text-secondary);font-size:.7rem;text-align:center}.theme-toggle{display:flex;align-items:center;justify-content:space-between;padding:.2rem 0}.toggle-switch{position:relative;display:inline-block;width:60px;height:30px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.slider{top:0;left:0;right:0;bottom:0;background-color:#e2e8f0;border-radius:30px;overflow:hidden}.slider::before{content:"";top:3px;left:3px;width:24px;height:24px;background-color:#fff;border-radius:50%;z-index:2;box-shadow:0 1px 4px rgba(0,0,0,.15)}input:checked~.slider::before{transform:translateX(30px)}.slider .icon{position:absolute;top:50%;transform:translateY(-50%);font-size:14px;z-index:1;pointer-events:none}.icon-sun{right:6px;opacity:0}.icon-moon{left:6px;opacity:0}[data-theme=dark] .icon-moon,[data-theme=light] .icon-sun{opacity:1}[data-theme=light] .slider{background-color:#fde68a}[data-theme=dark] .slider{background-color:#818cf8}.format-tiles{display:flex;gap:.5rem;flex-wrap:wrap}.format-tile{flex:1 1 70px;padding:.5rem .8rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-primary);font-family:inherit;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:.2s;text-align:center;white-space:nowrap}.format-tile.active{background:var(--accent);color:#fff;border-color:var(--accent)}.format-tile:disabled{opacity:.5;cursor:not-allowed;background:var(--surface);color:var(--text-secondary);border-color:var(--border)}@media (max-width:600px){.sidebar{width:100vw;max-width:100vw;padding:1rem .8rem}.sidebar-grid{grid-template-columns:1fr}}