@font-face{font-family:DM Sans;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/dm-sans-latin-wght-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/dm-sans-latin-ext-wght-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:italic;font-weight:300 700;font-display:swap;src:url(/fonts/dm-sans-latin-wght-italic.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:italic;font-weight:300 700;font-display:swap;src:url(/fonts/dm-sans-latin-ext-wght-italic.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/fraunces-latin-wght-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/fraunces-latin-ext-wght-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:400 700;font-display:swap;src:url(/fonts/fraunces-latin-wght-italic.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-latin-wght-normal.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Noto Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-latin-ext-wght-normal.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Noto Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-cyrillic-wght-normal.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Noto Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-cyrillic-ext-wght-normal.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Noto Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-greek-wght-normal.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Noto Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-devanagari-wght-normal.woff2)format("woff2");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Noto Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/noto-sans-vietnamese-wght-normal.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Noto Sans Hebrew;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/noto-sans-hebrew-hebrew-400-normal.woff2)format("woff2");unicode-range:U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Noto Sans Hebrew;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/noto-sans-hebrew-hebrew-700-normal.woff2)format("woff2");unicode-range:U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Noto Sans Arabic;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/noto-sans-arabic-arabic-400-normal.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+898-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Noto Sans Arabic;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/noto-sans-arabic-arabic-700-normal.woff2)format("woff2");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+898-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/noto-sans-thai-thai-400-normal.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/noto-sans-thai-thai-700-normal.woff2)format("woff2");unicode-range:U+E01-E5B,U+200C-200D,U+25CC}:root{--font-body:"DM Sans", "Noto Sans", "Noto Sans Hebrew", "Noto Sans Arabic", "Noto Sans Devanagari", "Noto Sans Thai", "PingFang SC", "Hiragino Kaku Gothic ProN", "Microsoft YaHei", "Yu Gothic", "Malgun Gothic", -apple-system, BlinkMacSystemFont, sans-serif;--font-display:"Fraunces", "Noto Sans", "Noto Sans Hebrew", "Noto Sans Arabic", "Noto Sans Devanagari", "Noto Sans Thai", "PingFang SC", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Malgun Gothic", Georgia, serif;--warm-50:#fffbf5;--warm-100:#faf5ef;--warm-150:#f5ede2;--warm-200:#ede3d4;--warm-300:#ddd0be;--warm-400:#c4b19a;--warm-500:#a89070;--warm-600:#8b7355;--warm-700:#6b5740;--warm-800:#4a3c2c;--warm-900:#2c2318;--accent:#d4a574;--accent-hover:#c4905d;--accent-light:#e8cba8;--accent-bg:#d4a57414;--accent-bg-hover:#d4a57424;--green:#2d8a56;--green-bg:#eaf5ef;--green-text:#1a5c38;--red:#d44040;--red-bg:#fceaea;--red-text:#9c2020;--blue:#3b82c4;--blue-bg:#eaf2fb;--yellow:#c4960a;--yellow-bg:#fef9ea;--text:#1c1917;--text-secondary:#78716c;--text-muted:#a8a29e;--bg:#faf8f5;--bg-card:#fff;--border:#e7e0d6;--border-hover:#d5cbbf;--border-light:#f0ebe4;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-pill:999px;--shadow-xs:0 1px 2px #2c23180a;--shadow-sm:0 1px 4px #2c23180f;--shadow-md:0 4px 14px #2c231812;--shadow-lg:0 10px 30px #2c23181a;--ease:cubic-bezier(.4, 0, .2, 1);--dur:.2s;--dur-slow:.35s;--sidebar-w:230px;--topbar-h:56px;--preview-w:45%}[data-theme=dark]{--warm-50:#1a1816;--warm-100:#1e1c19;--warm-150:#262320;--warm-200:#302c27;--warm-300:#3d3830;--warm-400:#5a5244;--warm-500:#8a7e6c;--warm-600:#a89a86;--warm-700:#c4b8a4;--warm-800:#ddd4c6;--warm-900:#f0ebe4;--accent:#d4a574;--accent-hover:#e0b888;--accent-light:#4a3828;--accent-bg:#d4a5741f;--accent-bg-hover:#d4a5742e;--green:#4ade80;--green-bg:#4ade801a;--green-text:#86efac;--red:#f87171;--red-bg:#f871711a;--red-text:#fca5a5;--blue:#60a5fa;--blue-bg:#60a5fa1a;--yellow:#fbbf24;--yellow-bg:#fbbf241a;--text:#ede8e3;--text-secondary:#a8a29e;--text-muted:#78716c;--bg:#141210;--bg-card:#1e1c19;--border:#302c27;--border-hover:#3d3830;--border-light:#262320;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 1px 4px #00000040;--shadow-md:0 4px 14px #0000004d;--shadow-lg:0 10px 30px #0006}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}.show-mobile-only{display:none!important}body{font-family:var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:15px;line-height:1.55;overflow-x:hidden}#root{min-height:100vh;overflow-x:hidden}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}img{max-width:100%;display:block}a{color:var(--accent-hover);text-decoration:none}a:hover{text-decoration:underline}.font-display{font-family:var(--font-display)}.font-body{font-family:var(--font-body)}h1,h2,h3{font-family:var(--font-body);line-height:1.2}.heading-display{font-family:var(--font-display);font-weight:600}.text-xs{font-size:12px}.text-sm{font-size:13px}.text-md{font-size:15px}.text-lg{font-size:18px}.text-xl{font-size:22px}.text-2xl{font-size:28px}.text-3xl{font-size:36px}.text-4xl{font-size:48px}.fw-400{font-weight:400}.fw-500{font-weight:500}.fw-600{font-weight:600}.fw-700{font-weight:700}.color-muted{color:var(--text-muted)}.color-secondary{color:var(--text-secondary)}.color-accent{color:var(--accent)}.color-green{color:var(--green)}.color-red{color:var(--red)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.uppercase{text-transform:uppercase;letter-spacing:.6px}.input{width:100%;font-size:16px;font-family:var(--font-body);color:var(--text);background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-md);transition:border var(--dur) var(--ease), box-shadow var(--dur) var(--ease);outline:none;padding:10px 14px;display:block}.input:hover{border-color:var(--border-hover)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-bg)}.input::placeholder{color:var(--text-muted)}.input-sm{padding:7px 12px;font-size:13px}.input:-webkit-autofill{transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 30px var(--bg-card) inset!important;-webkit-text-fill-color:var(--text)!important;caret-color:var(--text)!important}.input:-webkit-autofill:hover{transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 30px var(--bg-card) inset!important;-webkit-text-fill-color:var(--text)!important;caret-color:var(--text)!important}.input:-webkit-autofill:focus{transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 30px var(--bg-card) inset!important;-webkit-text-fill-color:var(--text)!important;caret-color:var(--text)!important}.input:-webkit-autofill:active{transition:background-color 9999s ease-in-out;-webkit-box-shadow:0 0 0 30px var(--bg-card) inset!important;-webkit-text-fill-color:var(--text)!important;caret-color:var(--text)!important}select.input{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23a8a29e' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-inline-end:38px;font-size:16px}[dir=rtl] select.input{background-position:14px}.label{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}textarea.input{font-size:16px}.label-hint{color:var(--text-muted);font-weight:400}.btn{font-size:15px;font-weight:600;font-family:var(--font-body);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:all var(--dur) var(--ease);border:none;justify-content:center;align-items:center;gap:8px;padding:10px 20px;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-sm)}.btn-secondary{background:var(--bg-card);color:var(--text);border:1.5px solid var(--border)}.btn-secondary:hover{border-color:var(--border-hover);background:var(--warm-50)}.btn-ghost{color:var(--text-secondary);background:0 0;padding:8px 14px}.btn-ghost:hover{color:var(--text);background:var(--accent-bg)}.btn-accent-ghost{color:var(--accent);background:0 0;padding:8px 14px}.btn-accent-ghost:hover{background:var(--accent-bg);color:var(--accent-hover)}.btn-icon{cursor:pointer;color:var(--text-muted);border-radius:var(--radius-sm);transition:all var(--dur) var(--ease);background:0 0;border:none;align-items:center;padding:10px;display:flex}.btn-icon:hover{color:var(--text-secondary);background:var(--accent-bg)}.btn-icon.danger:hover{color:var(--red);background:var(--red-bg)}.btn-icon.success{color:var(--green)}.btn-icon.success:hover{background:var(--green-bg)}.btn-sm{gap:6px;padding:7px 14px;font-size:13px}.btn-lg{border-radius:var(--radius-lg);gap:10px;padding:14px 28px;font-size:17px}.btn-xl{border-radius:var(--radius-lg);padding:16px 36px;font-size:18px}.btn-block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1.5px solid var(--border-light);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease)}.card-hover:hover{border-color:var(--border-hover);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-interactive{cursor:pointer}.badge{border-radius:var(--radius-pill);align-items:center;gap:4px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-flex}.badge-live{background:var(--green-bg);color:var(--green-text)}.badge-draft{background:var(--warm-150);color:var(--text-muted)}.badge-pro{background:var(--accent);color:#fff;padding:2px 8px;font-size:11px}.badge-soldout{background:var(--red);color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:var(--radius-sm);padding:3px 8px;font-size:10px;font-weight:700}.badge-count{background:var(--warm-150);color:var(--text-secondary);border-radius:var(--radius-pill);padding:2px 8px;font-size:11px}.topbar{z-index:100;background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border-bottom:1.5px solid var(--border-light);padding:0 20px;padding-top:env(safe-area-inset-top,0);min-height:var(--topbar-h);justify-content:space-between;align-items:center;gap:12px;display:flex;position:sticky;top:0}.topbar-logo{cursor:pointer;flex-shrink:0;align-items:center;gap:8px;text-decoration:none;display:flex}.topbar-logo span:first-child{font-size:22px}.topbar-logo span:last-child{color:var(--text);font-size:17px;font-weight:700}.topbar-actions{align-items:center;gap:10px;display:flex}.layout-with-sidebar{min-height:calc(100vh - var(--topbar-h));display:flex}.sidebar{width:var(--sidebar-w);background:var(--bg-card);border-inline-end:1.5px solid var(--border-light);top:var(--topbar-h);height:calc(100vh - var(--topbar-h));flex-direction:column;flex-shrink:0;padding:20px 0;display:flex;position:sticky;overflow-y:auto}.sidebar-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin-top:8px;padding:8px 20px;font-size:11px;font-weight:600}.sidebar-item{color:var(--text-secondary);cursor:pointer;transition:all var(--dur) var(--ease);text-align:start;width:100%;font-size:14px;font-family:var(--font-body);background:0 0;border:none;align-items:center;gap:10px;padding:10px 20px;display:flex}.sidebar-item:hover{color:var(--text);background:var(--accent-bg)}.sidebar-item.active{color:var(--accent-hover);background:var(--accent-bg);border-inline-end:3px solid var(--accent);font-weight:600}.sidebar-item svg{flex-shrink:0}.sidebar-spacer{flex:1}.tabs{border-bottom:1.5px solid var(--border-light);background:var(--bg-card);-webkit-overflow-scrolling:touch;scrollbar-width:none;touch-action:pan-x;overscroll-behavior-y:contain;top:calc(var(--topbar-h) + 42px);z-index:49;gap:0;display:flex;position:sticky;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}@media (width<=600px){.tabs{box-shadow:inset -24px 0 16px -16px var(--bg-card)}}.tab{color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:all var(--dur) var(--ease);font-size:14px;font-weight:500;font-family:var(--font-body);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:7px;margin-bottom:-1.5px;padding:14px 20px;display:flex}.tab:hover{color:var(--text-secondary)}.tab.active{color:var(--accent-hover);border-bottom-color:var(--accent);font-weight:600}.tab svg{width:16px;height:16px}.breadcrumb{background:var(--bg-card);border-bottom:1.5px solid var(--border-light);top:var(--topbar-h);z-index:50;align-items:center;gap:8px;padding:10px 20px;font-size:14px;display:flex;position:sticky}.breadcrumb-link{color:var(--accent);cursor:pointer;font-weight:600;font-family:var(--font-body);transition:color var(--dur) var(--ease);background:0 0;border:none;align-items:center;gap:6px;padding:0;font-size:14px;display:flex}.breadcrumb-link:hover{color:var(--accent-hover)}.breadcrumb-sep{color:var(--text-muted);font-size:12px}.breadcrumb-current{color:var(--text);font-weight:600}.split-view{min-height:calc(100vh - var(--topbar-h) - 100px);overflow-anchor:none;display:flex}.split-editor{overflow-anchor:none;flex:1;min-width:0;padding:24px;overflow-y:auto}.split-preview{width:var(--preview-w);background:var(--warm-100);border-inline-start:1.5px solid var(--border-light);top:var(--topbar-h);height:calc(100vh - var(--topbar-h));overscroll-behavior:contain;flex-direction:column;align-items:center;padding:20px;display:flex;position:sticky;overflow-y:auto}.split-preview-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;margin-bottom:14px;font-size:11px;font-weight:600}.phone-frame{background:var(--bg-card);border-radius:var(--radius-lg);border:1.5px solid var(--border);flex-direction:column;flex:1;width:100%;min-height:0;padding:0;display:flex;overflow:hidden}.phone-screen{overscroll-behavior:contain;scrollbar-width:none;background:#fff;border-radius:0;flex:1;min-height:0;overflow:hidden auto}.phone-notch{display:none}.phone-screen::-webkit-scrollbar{display:none}.phone-notch{background:#333;border-radius:3px;width:80px;height:6px;margin:0 auto 6px}.modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;animation:fade-in var(--dur) var(--ease);overscroll-behavior:contain;touch-action:none;background:#1c191773;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}@media (width<=600px){.modal-overlay{-webkit-overflow-scrolling:touch;touch-action:pan-y;align-items:flex-start;padding:12px 12px 0;overflow-y:auto}}.modal{background:var(--bg-card);border-radius:var(--radius-xl);-webkit-overflow-scrolling:touch;width:100%;max-width:440px;max-height:85dvh;animation:modal-up .25s var(--ease);touch-action:auto;overscroll-behavior:contain;padding:32px;position:relative;overflow-y:auto}@media (width<=600px){.modal{padding:24px 20px;border-radius:var(--radius-xl) var(--radius-xl) 0 0;max-height:none;margin-bottom:0;padding-bottom:40px}}.modal-close{cursor:pointer;width:44px;height:44px;color:var(--text-muted);border-radius:var(--radius-sm);transition:all var(--dur) var(--ease);background:0 0;border:none;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;top:10px;right:10px}.modal-close:hover{background:var(--warm-150);color:var(--text)}.auth-jrk-logo{width:220px;max-width:70%;height:auto;margin:0 auto 8px;display:block}@media (width<=600px){.auth-jrk-logo{width:140px;margin-bottom:4px}}.modal-title{text-align:center;margin-bottom:4px;font-size:22px;font-weight:700}@media (width<=600px){.modal-title{font-size:20px}}.modal-subtitle{color:var(--text-secondary);text-align:center;margin-bottom:20px;font-size:14px}@media (width<=600px){.modal-subtitle{margin-bottom:14px;font-size:13px}.auth-disclosure{margin-top:12px!important;padding:8px 10px!important;font-size:11px!important}}.toast-wrap{z-index:9999;pointer-events:none;width:100%;max-width:min(480px,100vw - 32px);padding:0 16px;padding-top:env(safe-area-inset-top,0);box-sizing:border-box;flex-direction:column;gap:10px;display:flex;position:fixed;top:24px;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;border-radius:var(--radius-lg);font-size:13px;font-weight:600;font-family:var(--font-body);color:#fff;background:var(--warm-900);border:1px solid #ffffff1a;align-items:center;gap:8px;padding:10px 14px;line-height:1.35;animation:.35s cubic-bezier(.34,1.56,.64,1) toast-in;display:flex;box-shadow:0 4px 16px #0003,0 1px 4px #0000001f}.toast-content{flex:1;min-width:0}.toast-close{color:#ffffffa6;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;padding:2px 4px;font-size:13px;line-height:1;transition:color .15s,background .15s}.toast-close:hover{color:#fff;background:#ffffff26}.toast-success{background:var(--green);box-shadow:0 4px 16px #10b9814d,0 1px 4px #00000026}.toast-error{background:var(--red);box-shadow:0 4px 16px #ef44444d,0 1px 4px #00000026}.toast-exit{animation:toast-out .25s var(--ease) forwards}.skeleton{background:linear-gradient(90deg, var(--warm-150) 0%, var(--warm-200) 50%, var(--warm-150) 100%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}.skeleton-text{border-radius:var(--radius-xs);height:14px}.skeleton-title{border-radius:var(--radius-xs);width:60%;height:22px}.skeleton-card{height:180px}.spinner{border:3px solid var(--warm-200);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.7s linear infinite spin}.spinner-sm{border-width:2px;width:20px;height:20px}.loading-center{justify-content:center;align-items:center;padding:60px 20px;display:flex}.toggle{cursor:pointer;width:48px;height:26px;transition:background var(--dur) var(--ease);border:none;border-radius:13px;flex-shrink:0;padding:0;position:relative}.toggle-on{background:var(--green)}.toggle-off{background:var(--warm-300)}.toggle-knob{width:20px;height:20px;transition:left var(--dur) var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;box-shadow:0 1px 3px #00000026}.toggle-on .toggle-knob{left:25px}.toggle-off .toggle-knob{left:3px}.price-toggle{background:var(--warm-150);border-radius:var(--radius-pill);gap:2px;padding:4px;display:inline-flex}.price-toggle-opt{border-radius:var(--radius-pill);font-size:14px;font-weight:600;font-family:var(--font-body);cursor:pointer;color:var(--text-secondary);transition:all var(--dur) var(--ease);background:0 0;border:none;padding:8px 20px}.price-toggle-opt.active{background:var(--bg-card);color:var(--text);box-shadow:var(--shadow-sm)}.price-save{color:var(--green);margin-left:6px;font-size:12px;font-weight:600}.menu-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.menu-card-header{border-radius:var(--radius-lg) var(--radius-lg) 0 0;flex-direction:column;justify-content:flex-end;height:110px;padding:20px;display:flex;position:relative;overflow:hidden}.menu-card-body{padding:14px 18px}.menu-card-actions{gap:8px;margin-top:10px;display:flex}.menu-card-new{border:2px dashed var(--border);cursor:pointer;min-height:190px;transition:all var(--dur) var(--ease);border-radius:var(--radius-lg);width:100%;font-family:var(--font-body);background:0 0;justify-content:center;align-items:center;display:flex}.menu-card-new:hover{border-color:var(--accent);background:var(--accent-bg)}.category-header{border-bottom:1.5px solid var(--border-light);align-items:center;gap:10px;margin-bottom:12px;padding-bottom:8px;display:flex}.category-name{flex:1;font-size:17px;font-weight:700}.item-row{background:var(--bg-card);border:1.5px solid var(--border-light);border-radius:var(--radius-md);transition:all var(--dur) var(--ease);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;padding:10px 14px;display:flex}.item-row:hover{border-color:var(--border-hover)}.item-row.unavailable{opacity:.4}.item-name{text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:600;overflow:hidden}.item-desc{color:var(--text-muted);-webkit-line-clamp:2;line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;margin-top:2px;font-size:13px;display:-webkit-box;overflow:hidden}.item-price{color:var(--accent);white-space:nowrap;font-size:15px;font-weight:700}.item-row-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}@media (width<=600px){.item-row{flex-wrap:wrap;gap:6px;padding:10px 12px}.item-row>.flex-1{flex:100%;min-width:0}.item-row-actions{border-top:1px solid var(--border-light);flex:100%;justify-content:flex-end;margin-top:2px;padding-top:6px}}.theme-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.theme-swatch{border-radius:var(--radius-md);cursor:pointer;text-align:center;transition:all var(--dur) var(--ease);border:2px solid #0000;padding:14px 10px}.theme-swatch:hover{transform:scale(1.03)}.theme-swatch.active{box-shadow:0 0 0 3px #222, 0 0 0 5px var(--accent);border-color:#222}.theme-swatch.locked{opacity:.35;cursor:not-allowed}.theme-swatch.locked:hover{transform:none}.theme-dots{justify-content:center;gap:4px;margin-bottom:8px;display:flex}.theme-dot{border-radius:50%;width:14px;height:14px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-up{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes toast-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes toast-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:slide-up .4s var(--ease) both}.animate-in-1{animation-delay:50ms}.animate-in-2{animation-delay:.1s}.animate-in-3{animation-delay:.15s}.animate-in-4{animation-delay:.2s}.empty-state{text-align:center;max-width:400px;margin:0 auto;padding:60px 20px}.empty-icon{margin-bottom:16px;font-size:48px;display:block}.empty-title{margin-bottom:8px;font-size:22px;font-weight:700}.empty-desc{color:var(--text-secondary);margin-bottom:24px;font-size:15px;line-height:1.6}.qr-card{background:var(--bg-card);border-radius:var(--radius-xl);border:1.5px solid var(--border-light);box-shadow:var(--shadow-md);text-align:center;padding:36px;display:inline-block}.qr-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:24px;display:flex}.qr-tips{background:var(--warm-100);border-radius:var(--radius-lg);text-align:start;max-width:500px;margin-top:32px;margin-left:auto;margin-right:auto;padding:20px}.qr-tips h3{margin-bottom:10px;font-size:15px;font-weight:700}.qr-tips ul{margin:0;padding-inline-start:20px}.qr-tips li{color:var(--text-secondary);font-size:14px;line-height:1.9}@media (width<=900px){.split-preview{display:none}.split-editor{padding:16px}}@media (width<=768px){.sidebar{display:none}.layout-with-sidebar{display:block}.menu-grid{grid-template-columns:1fr}.theme-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.hide-mobile{display:none!important}.show-mobile-only{display:inline-flex!important}.text-4xl{font-size:36px}.text-3xl{font-size:28px}.modal{border-radius:var(--radius-lg);padding:24px}.btn-lg{padding:12px 22px;font-size:16px}.toast-wrap{padding:0 12px;padding-top:max(env(safe-area-inset-top,0), 12px);top:12px}.topbar{min-height:52px;padding:0 16px}.topbar-logo span:first-child{font-size:24px}.topbar-logo span:last-child{font-size:16px}}.mobile-preview-fab{z-index:200;background:var(--accent);color:#fff;border-radius:var(--radius-pill);font-size:14px;font-weight:600;font-family:var(--font-body);cursor:pointer;border:none;align-items:center;gap:8px;padding:12px 20px;display:none;position:fixed;bottom:80px;right:16px;box-shadow:0 4px 16px #00000040}@media (width<=900px){.mobile-preview-fab{display:flex}}.mobile-preview-page{background:var(--bg);flex-direction:column;min-height:100dvh;display:flex}.mobile-preview-topbar{padding:8px 16px;padding-top:max(env(safe-area-inset-top,8px), 8px);background:var(--bg-card);border-bottom:1.5px solid var(--border-light);z-index:10;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.mobile-preview-scroll{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.mobile-preview-scroll .phone-frame{border:none;border-radius:0;flex:none;height:auto;display:block;overflow:visible}.mobile-preview-scroll .phone-screen{flex:none;height:auto;overflow:visible}.mobile-nav{background:var(--bg-card);border-top:1.5px solid var(--border-light);padding:6px 0 env(safe-area-inset-bottom,6px);z-index:100;display:none;position:fixed;bottom:0;left:0;right:0}.mobile-nav-items{justify-content:space-around;display:flex}.mobile-nav-item{color:var(--text-muted);cursor:pointer;font-size:10px;font-weight:600;font-family:var(--font-body);transition:color var(--dur) var(--ease);background:0 0;border:none;flex-direction:column;align-items:center;gap:3px;padding:8px 12px;display:flex}.mobile-nav-item.active{color:var(--accent)}.mobile-nav-item svg{width:22px;height:22px}@media (width<=768px){.mobile-nav{display:block}body{padding-bottom:65px}}.hamburger-btn{color:var(--text);cursor:pointer;border-radius:var(--radius);transition:background var(--dur) var(--ease);-webkit-tap-highlight-color:transparent;background:0 0;border:none;padding:8px;display:none}.hamburger-btn:hover{background:var(--accent-bg)}@media (width<=768px){.hamburger-btn{justify-content:center;align-items:center;display:flex}.topbar-actions{display:none!important}.topbar{min-height:50px;padding:0 14px}}.drawer-overlay{z-index:1000;animation:fade-in .2s var(--ease);touch-action:none;background:#00000073;position:fixed;inset:0}.drawer-panel{background:var(--bg-card);z-index:1001;width:min(300px,80vw);animation:drawer-slide .25s var(--ease);padding-top:env(safe-area-inset-top,0);touch-action:auto;overscroll-behavior:contain;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-4px 0 24px #0000002e}@keyframes drawer-slide{0%{transform:translate(100%)}to{transform:translate(0)}}.drawer-close{color:var(--text-secondary);cursor:pointer;border-radius:var(--radius);transition:background var(--dur) var(--ease);z-index:1;background:0 0;border:none;padding:12px;position:absolute;top:10px;right:10px}.drawer-close:hover{background:var(--accent-bg)}.drawer-content{padding:56px 20px 24px;padding-bottom:max(24px, env(safe-area-inset-bottom,24px));-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:4px;display:flex;overflow-y:auto}.drawer-section{color:var(--text-muted);text-transform:uppercase;letter-spacing:.8px;padding:12px 0 6px;font-size:11px;font-weight:600}.drawer-divider{background:var(--border-light);height:1px;margin:8px 0}.drawer-item{color:var(--text);cursor:pointer;transition:all var(--dur) var(--ease);text-align:start;width:100%;font-size:15px;font-family:var(--font-body);border-radius:var(--radius);background:0 0;border:none;align-items:center;gap:12px;min-height:44px;padding:12px 14px;display:flex}.drawer-item:hover{background:var(--accent-bg)}.drawer-item-accent{color:var(--accent);font-weight:600}.drawer-item-icon{flex-shrink:0;align-items:center;display:flex}.drawer-item-label{flex:1}.drawer-user{color:var(--text-secondary);word-break:break-all;align-items:center;gap:8px;padding:8px 14px 16px;font-size:13px;display:flex}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-4{gap:4px}.gap-6{gap:6px}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.gap-24{gap:24px}.flex-1{flex:1;min-width:0}.shrink-0{flex-shrink:0}.w-full{width:100%}.text-center{text-align:center}.text-right{text-align:right}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.mt-24{margin-top:24px}.mt-32{margin-top:32px}.mb-4{margin-bottom:4px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.mb-20{margin-bottom:20px}.mb-24{margin-bottom:24px}.mb-32{margin-bottom:32px}.p-16{padding:16px}.p-20{padding:20px}.p-24{padding:24px}.scroll-x{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.scroll-x::-webkit-scrollbar{display:none}.legal-content{color:var(--text);font-size:15px;line-height:1.7}.legal-content h1{margin:0 0 20px;font-size:22px;font-weight:700;line-height:1.3}.legal-content h2{margin:32px 0 12px;font-size:18px;font-weight:700;line-height:1.3}.legal-content h3{margin:24px 0 10px;font-size:16px;font-weight:600}.legal-content p{margin:0 0 12px}.legal-content ul,.legal-content ol{margin:0 0 16px;padding-left:24px}.legal-content li{margin-bottom:6px}.legal-content a{color:var(--accent);word-break:break-word}.legal-content b{font-weight:600}.legal-content hr{border:none;border-top:1px solid var(--border);margin:32px 0}
