:root{--ground:#f4f5f1;--ground-strong:#eef0ec;--surface:#fff;--surface-muted:#fafbf9;--ink:#17201a;--ink-soft:#3e4942;--muted:#5b665e;--faint:#8a948c;--line:#e3e6e0;--line-strong:#d5dad3;--primary:#12724a;--primary-hover:#0c5536;--primary-soft:#e3f1e9;--primary-ring:#bfe3ce;--on-primary:#fff;--accent:#f5b43c;--accent-soft:#fdf1d8;--on-accent-soft:#7a4b00;--danger:#b42318;--danger-soft:#fdecea;--night:#17201a;--night-raised:#253029;--night-line:#2e3a32;--night-muted:#c9d4cc;--font-display:"Bricolage Grotesque","Inter",system-ui,sans-serif;--font-body:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--radius-sm:10px;--radius:14px;--radius-lg:20px;--radius-xl:28px;--shadow-float:0 8px 24px rgba(18,114,74,.28);--shadow-sheet:0 -8px 32px rgba(23,32,26,.12);--tabbar-height:71px;--sidebar-width:264px}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--ground);color:var(--ink);font:400 16px/1.5 var(--font-body);margin:0}a{color:var(--primary)}a:hover{color:var(--primary-hover)}img,svg{display:block;max-width:100%}button,input,select,textarea{color:inherit;font:inherit}h1,h2,h3,p{margin:0}:focus-visible{outline:3px solid var(--primary-ring);outline-offset:2px}.visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;white-space:nowrap;width:1px}.icon{flex-shrink:0;height:20px;width:20px}.icon-sm{height:16px;width:16px}.icon-lg{height:24px;width:24px}.muted{color:var(--muted)}.text-danger{color:var(--danger)}.tabular{font-variant-numeric:tabular-nums}.app{min-height:100vh;min-height:100dvh}.app-main{padding:20px 20px calc(var(--tabbar-height) + 32px + env(safe-area-inset-bottom))}.app-main:has(>.app-container>.form .action-bar):not(:has(>.app-container>.form~:not([hidden]))){padding-bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom))}.app-container{display:flex;flex-direction:column;gap:20px;margin:0 auto;max-width:720px;width:100%}.app-container.is-wide{max-width:1040px}.tabbar{background:var(--surface);border-top:1px solid var(--line);bottom:0;display:flex;left:0;padding:6px 8px calc(8px + env(safe-area-inset-bottom));position:fixed;right:0;z-index:40}.tabbar-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:400px){.tabbar-label{font-size:11px;letter-spacing:-.01em}}.tabbar-link{align-items:center;border-radius:var(--radius);color:var(--muted);display:flex;flex:1;flex-direction:column;font-size:12px;font-weight:600;gap:4px;justify-content:center;min-height:56px;min-width:0;text-decoration:none}.tabbar-link:hover{color:var(--ink)}.tabbar-link.is-active{color:var(--primary)}.tabbar-link .icon{height:24px;width:24px}.sidebar{display:none}.brand{align-items:center;display:flex;font-family:var(--font-display);font-size:19px;font-weight:700;gap:10px;letter-spacing:-.01em;text-decoration:none}.brand,.brand:hover{color:var(--ink)}.brand-mark{align-items:center;background:var(--primary);border-radius:11px;color:var(--on-primary);display:flex;height:36px;justify-content:center;width:36px}@media (min-width:960px){.tabbar{display:none}.sidebar{background:var(--surface-muted);border-right:1px solid var(--line);bottom:0;display:flex;flex-direction:column;gap:28px;left:0;overflow-y:auto;padding:24px 16px;position:fixed;top:0;width:var(--sidebar-width);z-index:40}.sidebar .brand{padding:0 8px}.sidebar-nav{display:flex;flex-direction:column;gap:4px}.sidebar-link{align-items:center;border-radius:12px;color:var(--ink-soft);display:flex;font-size:15px;font-weight:500;gap:12px;min-height:44px;padding:0 12px;text-decoration:none}.sidebar-link:hover{background:var(--ground-strong);color:var(--ink)}.sidebar-link.is-active{background:var(--primary-soft);color:var(--primary-hover);font-weight:600}.sidebar-count{background:var(--accent);border-radius:999px;color:var(--ink);font-size:12px;font-weight:600;margin-left:auto;min-width:24px;padding:2px 8px;text-align:center}.sidebar-site{margin-top:auto}.app-main{margin-left:var(--sidebar-width);padding:40px 48px 64px}}.page-head{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px 16px;justify-content:space-between;padding-top:12px}.page-head-text{min-width:0}.page-eyebrow{color:var(--muted);font-size:14px;font-weight:500}.page-title{font-family:var(--font-display);font-size:28px;font-weight:700;letter-spacing:-.02em;line-height:1.12}@media (min-width:960px){.page-title{font-size:34px}}.page-lead{color:var(--muted);font-size:15px;line-height:1.5;margin-top:6px;max-width:56ch}.page-actions{display:flex;flex-shrink:0;gap:8px}.back-link{align-items:center;align-self:flex-start;border-radius:12px;display:inline-flex;font-size:15px;font-weight:600;gap:2px;margin:-8px 0 -8px -8px;min-height:44px;padding:0 10px 0 4px;text-decoration:none}.back-link .icon{height:22px;width:22px}.section-title{color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.04em;margin:4px 4px -8px;scroll-margin-top:16px;text-transform:uppercase}.grid-2{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.split{align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1fr)}@media (min-width:960px){.split{grid-template-columns:minmax(0,3fr) minmax(0,2fr)}}.stack{display:flex;flex-direction:column;gap:20px}.auth{display:flex;justify-content:center;min-height:100vh;min-height:100dvh;padding:40px 24px calc(28px + env(safe-area-inset-bottom))}.auth-inner{display:flex;flex-direction:column;gap:24px;max-width:440px;width:100%}.auth-top{align-items:center;display:flex;gap:12px;justify-content:space-between}.auth-title{font-family:var(--font-display);font-size:30px;font-weight:700;letter-spacing:-.02em;line-height:1.12}.auth-lead{color:var(--muted);font-size:16px;line-height:1.5;margin-top:10px}.auth-foot{color:var(--muted);font-size:14px;margin-top:auto;text-align:center}@media (min-width:720px){.auth{align-items:center}.auth-inner{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);padding:36px}.auth-foot{margin-top:0}}.verify-banner{align-items:center;background:var(--accent-soft);color:var(--on-accent-soft);display:flex;flex-wrap:wrap;font-size:14px;gap:8px 12px;padding:10px 16px}.verify-banner svg{flex-shrink:0}.verify-banner .verify-banner-text{flex:1 1 260px;overflow-wrap:anywhere}.verify-banner .verify-banner-actions{align-items:center;display:flex;gap:14px}.verify-banner form{margin:0}.verify-banner a,.verify-banner button{background:none;border:0;color:inherit;cursor:pointer;font:inherit;font-weight:700;padding:0;text-decoration:underline}.btn{align-items:center;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-size:15px;font-weight:600;gap:8px;justify-content:center;line-height:1.2;min-height:48px;padding:0 18px;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s;white-space:nowrap}.btn:disabled,.btn[aria-disabled=true]{cursor:not-allowed;opacity:.55}.btn-primary{background:var(--primary);color:var(--on-primary)}.btn-primary:hover{background:var(--primary-hover);color:var(--on-primary)}.btn-secondary{background:var(--surface);border-color:var(--line-strong);color:var(--ink)}.btn-secondary:hover{background:var(--ground-strong);color:var(--ink)}.btn-soft{background:var(--primary-soft)}.btn-soft,.btn-soft:hover{color:var(--primary-hover)}.btn-soft:hover{background:#d3eadc}.btn-danger{background:var(--surface);border-color:#f3c9c4;color:var(--danger)}.btn-danger:hover{background:var(--danger-soft);color:var(--danger)}.btn-block{font-size:16px;min-height:54px;width:100%}.btn-sm{border-radius:12px;font-size:14px;min-height:40px;padding:0 14px}.icon-btn{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px;color:var(--ink);cursor:pointer;display:inline-flex;flex-shrink:0;height:44px;justify-content:center;padding:0;text-decoration:none;width:44px}.icon-btn:hover{background:var(--ground-strong);color:var(--ink)}.icon-btn.is-ghost{background:transparent;border-color:transparent;color:var(--muted)}.icon-btn.is-ghost:hover{background:var(--ground-strong);color:var(--ink)}.fab{border-radius:18px;bottom:calc(var(--tabbar-height) + 20px + env(safe-area-inset-bottom));box-shadow:var(--shadow-float);min-height:56px;padding:0 20px 0 16px;position:fixed;right:20px;z-index:30}.fab .icon{height:22px;width:22px}@media (min-width:960px){.fab{display:none}}@media (max-width:959px){.only-desktop{display:none!important}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden}.card-pad{padding:18px}.card-head{align-items:baseline;display:flex;gap:12px;justify-content:space-between;padding:16px 18px 12px}.card-title{font-size:17px;font-weight:600}.card-link{font-size:14px;font-weight:600;text-decoration:none}.list-row{align-items:center;background:none;border:0;color:var(--ink);display:flex;gap:12px;min-height:60px;padding:8px 14px;text-align:left;text-decoration:none;width:100%}.list-row+.list-row{border-top:1px solid var(--ground-strong)}.list-row:is(a,button):hover{background:var(--surface-muted);color:var(--ink)}.list-icon{align-items:center;background:var(--ground);border-radius:12px;color:var(--ink);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.list-body{flex:1 1 auto;min-width:0}.list-title{display:block;font-size:15px;font-weight:600}.list-sub{color:var(--muted);display:block;font-size:13px;margin-top:2px;overflow:hidden;text-overflow:ellipsis}.list-value{color:var(--muted);font-size:14px;white-space:nowrap}.chevron{color:var(--faint)}.pill{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:4px 9px;white-space:nowrap}.pill-todo{background:var(--accent-soft);color:var(--on-accent-soft)}.pill-ok{background:var(--primary-soft);color:var(--primary-hover)}.pill-muted{background:var(--ground-strong);color:var(--muted)}.pill-danger{background:var(--danger-soft);color:var(--danger)}.pill-pro{background:var(--night);color:#fff}.check{align-items:center;background:var(--primary-soft);border-radius:999px;color:var(--primary);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.check .icon{height:14px;width:14px}.check.is-solid{background:var(--primary);color:var(--on-primary)}.check.is-empty{background:none;border:2px solid #c9cfc7}.progress{background:var(--ground-strong);border-radius:999px;height:8px;overflow:hidden}.progress-bar{background:var(--primary);border-radius:999px;height:100%}.segments{display:flex;gap:6px}.segments span{background:#dde1da;border-radius:999px;flex:1;height:5px}.segments span.is-done{background:var(--primary)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{align-items:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;color:var(--ink);cursor:pointer;display:inline-flex;font-size:15px;font-variant-numeric:tabular-nums;font-weight:600;min-height:44px;padding:0 14px;text-decoration:none}.chip:hover{border-color:var(--faint);color:var(--ink)}.chip.is-active,.chip[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.night{background:var(--night);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:14px;padding:18px;text-decoration:none}.night,.night:hover{color:#fff}.night-head{align-items:center;color:var(--night-muted);display:flex;font-size:14px;font-weight:600;justify-content:space-between}.night-link{align-items:center;color:var(--accent);display:inline-flex;gap:2px}.stats{display:flex;gap:28px}.stat-value{font-family:var(--font-display);font-size:40px;font-weight:700;line-height:1}.stat-label{color:var(--night-muted);font-size:14px;margin-top:4px}.night-tile{background:var(--night-raised);border-radius:12px;padding:10px 12px}.night-tile small{color:var(--night-muted);display:block;font-size:13px}.night-tile strong{display:block;font-size:15px;font-weight:600;margin-top:2px}.night-foot{border-top:1px solid var(--night-line);font-size:15px;padding-top:12px}.night-foot span{color:var(--night-muted)}.quick{color:var(--ink);display:flex;flex-direction:column;font-size:15px;font-weight:600;gap:10px;line-height:1.25;min-height:104px;padding:16px;text-decoration:none}.quick:hover{border-color:var(--line-strong);color:var(--ink)}.quick-icon{align-items:center;background:var(--primary-soft);border-radius:12px;color:var(--primary);display:flex;height:40px;justify-content:center;width:40px}.preview{background:#2b2420 50%/cover no-repeat;color:#fff;display:flex;flex-direction:column;justify-content:flex-end;min-height:112px;padding:14px;position:relative}.preview:before{background:linear-gradient(0deg,rgba(20,16,14,.78),rgba(20,16,14,.15));content:"";inset:0;position:absolute}.preview>*{position:relative}.preview-name{font-family:var(--font-display);font-size:22px;font-weight:700;line-height:1.15}.preview-sub{color:#e6ddd7;font-size:13px;margin-top:2px}.preview-logo{background:#fff;border-radius:8px;height:30px;left:14px;object-fit:contain;position:absolute;top:12px;width:30px}.link-bar{align-items:center;display:flex;gap:10px;padding:10px 10px 10px 14px}.link-bar-url{flex:1 1 auto;font-size:14px;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-dot{background:var(--primary);height:8px;width:8px}.live-dot,.swatch{border-radius:999px;flex-shrink:0}.swatch{border:2px solid #fff;box-shadow:0 0 0 1px var(--line);height:24px;width:24px}.media-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:720px){.media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.media{color:var(--ink);display:flex;flex-direction:column;text-decoration:none}.media:hover{border-color:var(--line-strong);color:var(--ink)}.media-thumb{aspect-ratio:4/3;background:var(--ground-strong);object-fit:cover;width:100%}.media-file{align-items:center;aspect-ratio:4/3;background:var(--ground);color:var(--muted);display:flex;flex-direction:column;font-size:13px;font-weight:600;gap:6px;justify-content:center}.media-body{padding:10px 12px 12px}.media-title{font-size:14px;font-weight:600}.media-sub,.media-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-sub{color:var(--muted);font-size:13px;margin-top:2px}.media-add{align-items:center;aspect-ratio:auto;border:1.5px dashed #b9c1b7;border-radius:var(--radius-lg);color:var(--primary);display:flex;flex-direction:column;font-size:15px;font-weight:600;gap:8px;justify-content:center;min-height:160px;text-decoration:none}.media-add:hover{background:var(--surface)}.empty{color:var(--muted);font-size:15px;padding:40px 24px;text-align:center}.empty strong{color:var(--ink);display:block;font-size:17px;font-weight:600;margin-bottom:6px}.empty .btn{margin-top:16px}.notice{background:var(--surface);border:1px solid var(--line);border-radius:16px;color:var(--muted);display:flex;font-size:14px;gap:12px;line-height:1.5;padding:14px 16px}.notice.is-info{background:var(--primary-soft);border-color:transparent;color:var(--primary-hover)}.notice.is-warning{background:var(--accent-soft);border-color:transparent;color:var(--on-accent-soft)}.toasts{flex-direction:column;gap:8px;left:12px;pointer-events:none;position:fixed;right:12px;top:calc(12px + env(safe-area-inset-top));z-index:60}.toast,.toasts{align-items:center;display:flex}.toast{animation:toast-in .25s ease-out;background:var(--night);border-radius:16px;box-shadow:0 12px 32px rgba(23,32,26,.24);color:#fff;font-size:15px;gap:10px;max-width:440px;padding:12px 8px 12px 16px;pointer-events:auto;width:100%}.toast.is-error{background:var(--danger)}.toast.is-warning{background:var(--accent);color:var(--ink)}.toast .icon-btn{background:transparent;border:0;color:inherit;height:36px;width:36px}.toast.is-leaving{opacity:0;transform:translateY(-8px);transition:opacity .2s,transform .2s}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}}.dialog{background:var(--surface);border:0;border-radius:var(--radius-xl);box-shadow:0 24px 64px rgba(23,32,26,.28);color:var(--ink);padding:0;width:min(100% - 32px,420px)}.dialog::backdrop{background:rgba(23,32,26,.45)}.dialog-body{padding:24px 24px 20px}.dialog-body h2{font-size:19px;font-weight:600}.dialog-body p{color:var(--muted);font-size:15px;margin-top:8px}.dialog-actions{display:flex;gap:10px;padding:0 24px 24px}.dialog-actions .btn{flex:1}.form-danger{display:flex;justify-content:center}@media (min-width:960px){.form-danger{display:none}}.action-bar .btn-text-danger{display:none}@media (min-width:960px){.action-bar .btn-text-danger{display:inline-flex;margin-left:auto}}.btn-text-danger{align-items:center;background:none;border:0;border-radius:var(--radius-sm);color:var(--danger);cursor:pointer;display:inline-flex;font:inherit;font-size:14px;font-weight:600;gap:8px;padding:10px 14px}.btn-text-danger:hover{background:var(--danger-soft)}.btn-text-danger:focus-visible{outline:3px solid #f3c9c4}.action-bar{background:var(--surface);border-top:1px solid var(--line);bottom:calc(var(--tabbar-height) + env(safe-area-inset-bottom));display:flex;gap:10px;margin:0 -20px;padding:12px 20px;position:sticky;z-index:20}.action-bar .btn-primary{flex:1}@media (min-width:960px){.action-bar{background:var(--ground);border-top:1px solid var(--line);bottom:0;margin:0;padding:14px 0 18px}.action-bar .btn-primary{flex:0 0 auto;min-width:200px}}.form,.form-card{display:flex;flex-direction:column;gap:18px}.form-card{padding:18px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.label{color:var(--ink);font-size:14px;font-weight:600}.label-row{align-items:baseline;display:flex;gap:12px;justify-content:space-between}.label-row a{font-size:14px;font-weight:600;text-decoration:none}.optional{color:var(--muted);font-weight:400}.input,.select,.textarea{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);color:var(--ink);font-size:16px;min-height:52px;padding:0 16px;transition:border-color .15s,box-shadow .15s;width:100%}.input::placeholder,.select::placeholder,.textarea::placeholder{color:var(--faint)}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.input[aria-invalid=true],.select[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.textarea{line-height:1.5;min-height:140px;padding:14px 16px;resize:vertical}.select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%235B665E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:44px}.help{color:var(--muted);line-height:1.45}.errors,.help{font-size:13px}.errors{color:var(--danger);font-weight:600;list-style:none;margin:0;padding:0}.form-errors{background:var(--danger-soft);border-radius:var(--radius);padding:12px 14px}.input-affix{align-items:center;background:var(--surface);border:2px solid var(--line-strong);border-radius:var(--radius);display:flex;min-height:56px;padding:0 14px}.input-affix:focus-within{border-color:var(--primary)}.input-affix.is-valid{border-color:var(--primary)}.input-affix.is-invalid{border-color:var(--danger)}.input-affix input{background:transparent;border:0;flex:1 1 auto;font-size:17px;font-weight:600;min-width:0;outline:0;padding:0}.input-affix span{color:var(--muted);flex-shrink:0;font-size:15px}.password{position:relative}.password .input{padding-right:52px}.password .icon-btn{background:transparent;border:0;color:var(--muted);position:absolute;right:4px;top:4px}.checkbox{align-items:flex-start;cursor:pointer;display:flex;font-size:15px;gap:10px;line-height:1.4;min-height:44px;padding-top:10px}.checkbox input{accent-color:var(--primary);flex-shrink:0;height:20px;margin:0;width:20px}.switch{flex-shrink:0;height:32px;position:relative;width:52px}.switch input{cursor:pointer;inset:0;margin:0;opacity:0;position:absolute;z-index:1}.switch span{background:#c9cfc7;inset:0;transition:background .15s}.switch span,.switch span:after{border-radius:999px;position:absolute}.switch span:after{background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);content:"";height:26px;left:3px;top:3px;transition:transform .15s;width:26px}.switch input:checked+span{background:var(--primary)}.switch input:checked+span:after{transform:translateX(20px)}.switch input:focus-visible+span{outline:3px solid var(--primary-ring);outline-offset:2px}.switch-row{gap:16px;justify-content:space-between;min-height:44px}.switch-row,.upload{align-items:center;display:flex}.upload{background:var(--surface);border:1.5px dashed #b9c1b7;border-radius:var(--radius);cursor:pointer;gap:14px;padding:12px;position:relative}.upload:focus-within,.upload:hover{border-color:var(--primary)}.upload input[type=file]{cursor:pointer;inset:0;opacity:0;position:absolute}.upload-preview{align-items:center;background:var(--ground);border-radius:12px;color:var(--muted);display:flex;flex-shrink:0;height:72px;justify-content:center;object-fit:cover;overflow:hidden;width:72px}.upload-preview img{height:100%;object-fit:cover;width:100%}.upload-preview.is-contain img{object-fit:contain}.upload-text{color:var(--muted);font-size:14px}.upload-text strong{color:var(--primary);display:block;font-size:15px}.upload-current{align-items:center;display:flex;font-size:14px;gap:10px}.palettes{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:720px){.palettes{grid-template-columns:repeat(4,minmax(0,1fr))}}.palettes-group{display:grid;gap:14px}.palettes-group[hidden]{display:none}.palette-option{background:var(--surface);border:2px solid var(--line);border-radius:var(--radius);cursor:pointer;display:grid;gap:10px;padding:12px;position:relative}.palette-option input{opacity:0;position:absolute}.palette-option:has(input:checked){border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring)}.palette-option:has(input:focus-visible){outline:3px solid var(--primary-ring)}.palette-dots{display:flex}.palette-dots i{border:2px solid var(--surface);border-radius:50%;box-shadow:0 0 0 1px var(--line);height:30px;margin-right:-7px;width:30px}.palette-name{font-size:14px;font-weight:600}.palette-name small{color:var(--muted);display:block;font-size:12px;font-weight:500}.palette-option.is-custom{border-color:var(--line-strong);border-style:dashed}.palette-custom{background:var(--surface-muted);border:1px solid var(--line);border-radius:var(--radius);display:grid;gap:12px;justify-items:start;padding:14px}.palette-custom[hidden]{display:none}.palette-custom .help{margin:0}.palette-slots{display:flex;flex-wrap:wrap;gap:10px 18px}.palette-slot-note{align-items:center;color:var(--muted);display:flex;font-size:12px;font-weight:500;gap:6px;margin-top:2px}.palette-slot-note[hidden]{display:none}.palette-slot-note i{border-radius:50%;box-shadow:0 0 0 1px var(--line-strong);height:14px;width:14px}.palette-slot{align-items:center;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:10px}.palette-slot input[type=color]{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);cursor:pointer;height:44px;padding:3px;width:48px}.style-fields{display:flex;flex-direction:column;gap:18px}.style-identity{display:grid;gap:18px}@media (min-width:720px){.style-identity{grid-template-columns:repeat(2,minmax(0,1fr))}}.style-preview{background:var(--ground-strong);border-radius:var(--radius);display:flex;justify-content:center;padding:16px}.style-preview iframe{background:var(--surface);border:6px solid var(--ink);border-radius:28px;height:640px;max-width:390px;width:100%}.themes{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:720px){.themes{grid-template-columns:repeat(3,minmax(0,1fr))}}.theme-option{background:var(--surface);border:2px solid var(--line);border-radius:var(--radius);cursor:pointer;display:block;overflow:hidden;position:relative}.theme-option input{opacity:0;position:absolute}.theme-option img{aspect-ratio:4/3;object-fit:cover;object-position:top;width:100%}.theme-option>span{align-items:center;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:space-between;padding:10px 12px;text-align:left}.theme-option:has(input:checked){border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring)}.theme-option:has(input:focus-visible){outline:3px solid var(--primary-ring)}.theme-option-custom{border-color:var(--line-strong);border-style:dashed;color:inherit;text-decoration:none}.theme-option-custom .theme-option-art{aspect-ratio:4/3;background:radial-gradient(circle at 25% 20%,var(--accent-soft) 0,transparent 55%),radial-gradient(circle at 80% 85%,var(--primary-ring) 0,transparent 60%),var(--primary-soft);color:var(--primary);display:grid;place-items:center;position:relative}.theme-option-custom .theme-option-art>.icon{height:40px;width:40px}.theme-option-custom .theme-option-art .pill{background:var(--surface);color:var(--ink);font-weight:700;position:absolute;right:10px;top:10px}.theme-option-custom>span:last-child .icon{color:var(--primary);flex-shrink:0}.theme-option-custom:focus-visible,.theme-option-custom:hover{border-color:var(--primary)}.theme-option-custom:focus-visible{outline:3px solid var(--primary-ring)}.stepper{align-items:center;display:flex;gap:12px}.stepper input{-moz-appearance:textfield;background:transparent;border:0;font-family:var(--font-display);font-size:24px;font-weight:700;min-height:48px;text-align:center;width:56px}.stepper input::-webkit-inner-spin-button,.stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper .icon-btn{border-color:var(--line-strong);height:48px;width:48px}.hours-day{padding:6px 8px 6px 16px}.hours-day+.hours-day{margin-top:8px}.hours-day-head{align-items:center;display:flex;gap:12px;justify-content:space-between;min-height:48px}.hours-day-name{font-size:16px;font-weight:600}.hours-slots{display:flex;flex-direction:column;gap:8px;padding:4px 0 10px}.hours-slots[hidden]{display:none}.hours-slot{align-items:center;display:flex;gap:8px}.hours-slot input{background:var(--ground);border:1px solid var(--line-strong);border-radius:12px;flex:1 1 0;font-size:16px;font-variant-numeric:tabular-nums;font-weight:600;letter-spacing:-.01em;min-height:44px;min-width:0;padding:0 6px;text-align:center}.hours-slot>span{color:var(--muted)}.hours-add{background:transparent;border:1px dashed #b9c1b7;border-radius:12px;color:var(--primary);min-height:40px;padding:0 12px}.hours-add,.upload-remove{align-self:flex-start;cursor:pointer;font-size:14px;font-weight:600}.upload-remove{align-items:center;background:var(--surface);border:1px solid #f3c9c4;border-radius:12px;color:var(--danger);display:inline-flex;gap:8px;min-height:44px;padding:0 14px}.upload-remove input{opacity:0;pointer-events:none;position:absolute}.upload-remove .upload-remove-on{display:none}.upload-remove:has(input:checked){background:var(--danger-soft)}.upload-remove:has(input:checked) .upload-remove-off{display:none}.upload-remove:has(input:checked) .upload-remove-on{display:inline}.upload-remove:has(input:focus-visible){outline:3px solid var(--primary-ring);outline-offset:2px}.field:has(.upload-remove input:checked) .upload-preview img{filter:grayscale(1);opacity:.25}.segmented{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(96px,1fr))}.segment{align-items:center;background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;cursor:pointer;display:flex;font-size:15px;font-weight:600;justify-content:center;line-height:1.25;min-height:48px;padding:6px 10px;position:relative;text-align:center}.segment input{opacity:0;pointer-events:none;position:absolute}.segment:has(input:checked){background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.segment:has(input:focus-visible){outline:3px solid var(--primary-ring)}.board-meta,.slots-head{display:flex;gap:12px;justify-content:space-between}.slots-head{align-items:baseline}.slots-covers{color:var(--muted);font-size:13px;font-variant-numeric:tabular-nums;font-weight:600}.slots-covers.is-over{color:var(--on-accent-soft)}.chip.is-over:not([aria-pressed=true]){background:var(--accent-soft);border-color:transparent;color:var(--on-accent-soft)}.slots-other{align-self:flex-start;background:none;border:0;color:var(--primary);cursor:pointer;font:inherit;font-size:15px;font-weight:600;min-height:40px;padding:0}.slots-other[aria-expanded=true]{color:var(--muted)}.field-group{display:flex;flex-direction:column;gap:18px}.field-group[hidden]{display:none}.days{display:flex;gap:8px;margin:0 -20px;overflow-x:auto;padding:0 20px 4px;scrollbar-width:none}.days::-webkit-scrollbar{display:none}@media (min-width:960px){.days{margin:0;padding:0}}.day{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:16px;display:flex;flex:0 0 56px;flex-direction:column;gap:1px;justify-content:center;min-height:74px;text-decoration:none}.day,.day:hover{color:var(--ink)}.day:hover{border-color:var(--line-strong)}.day small{font-size:12px;font-weight:600;opacity:.8}.day strong{font-size:19px;font-weight:700;line-height:1.2}.day span{font-size:11px;font-weight:600;opacity:.85}.day.is-closed span{color:var(--faint)}.day.is-active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.day.is-active span{color:inherit}.day-nav{align-items:center}.day-nav,.service{display:flex;gap:8px}.service{flex-direction:column}.service-head{align-items:baseline;display:flex;font-size:15px;font-weight:600;justify-content:space-between;margin:0 4px}.service-head>span:not(.service-title){color:var(--muted);font-size:14px;font-weight:400}.service-title{align-items:center;display:inline-flex;flex-wrap:wrap;gap:8px}.service-title small{color:var(--muted);font-size:13px;font-weight:400}.service.is-focus .service-head{font-size:17px}.service.is-past>summary{border-top:1px solid var(--line);cursor:pointer;list-style:none;padding:10px 4px}.service.is-past>summary::-webkit-details-marker{display:none}.service.is-past:not([open]) .service-head{color:var(--muted)}.service.is-past[open] .service-chevron{transform:rotate(180deg)}.service.is-past .service-list{display:flex;flex-direction:column;gap:8px;padding-bottom:8px}.service-chevron{align-self:center;color:var(--muted);flex-shrink:0;margin-left:8px;transition:transform .15s ease}.booking{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:16px;display:flex;gap:12px;padding:10px 6px 10px 14px}.booking.is-next{border-color:var(--primary-ring);box-shadow:inset 3px 0 0 var(--primary)}.booking.is-cancelled{background:var(--surface-muted)}.booking.is-cancelled .booking-name,.booking.is-cancelled .booking-time{color:var(--faint);text-decoration:line-through}.booking-time{flex-shrink:0;font-size:15px;font-variant-numeric:tabular-nums;font-weight:600;width:48px}.booking-body{flex:1 1 auto;min-width:0}.booking-name{display:block;font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-meta{color:var(--muted);flex-wrap:wrap;font-size:13px;gap:6px;margin-top:4px}.booking-actions,.booking-meta{align-items:center;display:flex}.menu{position:relative}.menu summary{list-style:none}.menu summary::-webkit-details-marker{display:none}.menu-panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 12px 32px rgba(23,32,26,.16);min-width:200px;padding:6px;position:absolute;right:0;top:calc(100% + 4px);z-index:25}.menu-panel a,.menu-panel button{align-items:center;background:none;border:0;border-radius:10px;color:var(--ink);cursor:pointer;display:flex;font-size:15px;gap:10px;min-height:44px;padding:0 12px;text-align:left;text-decoration:none;width:100%}.menu-panel a:hover,.menu-panel button:hover{background:var(--ground);color:var(--ink)}.menu-panel a.is-danger,.menu-panel button.is-danger{color:var(--danger)}.menu-panel form{margin:0}.welcome-icon{align-items:center;background:var(--primary);border-radius:20px;color:var(--on-primary);display:flex;height:64px;justify-content:center;width:64px}.welcome-icon .icon{height:32px;width:32px}.step-number{align-items:center;background:var(--ground);border-radius:999px;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:28px;justify-content:center;width:28px}.onb-preview{background:#2b2420;border-radius:18px;color:#fff;display:flex;flex-direction:column;gap:4px;padding:16px}.onb-preview small{color:#b9ada5;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.onb-preview strong{font-family:var(--font-display);font-size:22px;font-weight:700;overflow-wrap:anywhere}.onb-preview span{color:#d9cfc8;font-size:13px}.domain-status{align-items:center;color:var(--muted);display:flex;font-size:14px;font-weight:600;gap:8px;min-height:24px}.domain-status.is-valid{color:var(--primary)}.domain-status.is-invalid{color:var(--danger)}.offer-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.offer-list div{align-items:flex-start;display:flex;font-size:14px;gap:8px;line-height:1.4}.offer-list .icon{color:var(--primary);height:18px;width:18px}.lang-switch{background:var(--surface);border:1px solid var(--line-strong);gap:4px;padding:3px}.lang-switch,.lang-switch a{border-radius:999px;display:flex}.lang-switch a{align-items:center;color:var(--muted);font-size:13px;font-weight:600;justify-content:center;min-height:32px;min-width:38px;padding:0 8px;text-decoration:none;text-transform:uppercase}.lang-switch a.is-active{background:var(--ink);color:#fff}.rich-text .cke{border-color:var(--line-strong)!important;border-radius:var(--radius);overflow:hidden}.custom-design-price{align-items:baseline;display:flex;gap:8px}.custom-design-price strong{color:var(--ink);flex-shrink:0;font-size:32px;font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.custom-design-price span{color:var(--muted);font-size:15px}.custom-design-steps{display:grid;font-size:15px;gap:6px;margin:0;padding-left:22px}.board-card{color:inherit;display:flex;flex-direction:column;gap:10px;text-decoration:none}.board-card:hover{border-color:var(--line-strong);color:inherit}.board-card.is-live{background:linear-gradient(var(--surface),var(--surface)) padding-box,linear-gradient(135deg,var(--primary),var(--accent)) border-box;border:2px solid transparent}.board-card-head{align-items:center;display:flex;gap:10px}.board-card-head .pill{margin-left:auto}.board-card-label{color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.board-card-title{font-family:var(--font-display);font-size:19px}.board-card-text{font-size:15px;line-height:1.5;margin:0;white-space:pre-line}.table-qr{display:grid;gap:20px}@media (min-width:860px){.table-qr{align-items:start;grid-template-columns:340px 1fr}}.table-qr-preview{border-radius:14px;box-shadow:0 12px 36px rgba(23,32,26,.16);margin:0 auto;overflow:hidden;width:min(100%,320px)}.table-qr-tips{color:var(--ink-soft);display:grid;font-size:15px;gap:6px;margin:0;padding-left:20px}.closure-warn{background:var(--accent-soft);border-radius:14px;color:var(--on-accent-soft);display:grid;gap:10px;margin:0 16px 16px;padding:14px}.closure-warn-title{align-items:center;display:flex;font-weight:700;gap:8px;margin:0}.closure-booking{color:var(--ink);justify-content:space-between}.closure-booking,.plan-status{align-items:center;display:flex;flex-wrap:wrap;font-size:15px;gap:10px}.plan-grid{display:grid;gap:16px;margin-top:16px}@media (min-width:900px){.plan-grid{align-items:start;grid-template-columns:1fr 1fr}}.plan-card{display:flex;flex-direction:column;gap:12px}.plan-card.is-pro{border-color:var(--primary-ring);box-shadow:inset 0 3px 0 var(--primary)}.plan-card .btn{align-self:stretch;justify-content:center}.plan-price{align-items:baseline;display:flex;gap:6px;margin:0}.plan-price strong{font-size:32px;font-variant-numeric:tabular-nums;font-weight:700}.plan-price span{color:var(--muted);font-size:15px}.plan-note,.plan-yearly{font-size:14px;margin:-6px 0 0}.plan-note{margin:0;text-align:center}.plan-everything{font-size:14px;font-weight:600;margin:0}.plan-list{display:flex;flex-direction:column;font-size:15px;gap:10px;list-style:none;margin:0;padding:0}.plan-list li{align-items:flex-start;display:flex;gap:10px}.plan-list li>svg{color:var(--primary);flex-shrink:0;margin-top:2px}.plan-list li.is-asked{background:var(--primary-soft);border-radius:var(--radius-sm);margin:0 -8px;padding:8px}.plan-current{align-items:center;color:var(--primary);display:flex;font-weight:600;gap:8px;margin:0}.plan-choose{display:flex;flex-direction:column;gap:8px}.plan-choose .btn{justify-content:center}.icon-xs{height:13px;width:13px}.carte-start-title{align-items:center;display:flex;flex-wrap:wrap;font-size:17px;gap:8px;margin:0 0 4px}.carte-start-why{margin:0 0 14px}.carte-pdf-notice{margin-bottom:20px}.carte-pdf-notice a{color:inherit;font-weight:600}.carte-start-pdf{align-items:center;color:var(--ink);display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;text-decoration:none}.carte-start-pdf:hover{border-color:var(--line-strong);color:var(--ink)}.carte-start-pdf .btn{margin-left:auto}.carte-start-pdf-body{display:flex;flex:1 1 240px;flex-direction:column;gap:2px}.carte-start{display:grid;gap:14px}@media (min-width:760px){.carte-start{grid-template-columns:repeat(2,minmax(0,1fr))}}.carte-start-card{color:var(--ink);display:flex;flex-direction:column;gap:12px;text-decoration:none}.carte-start-card.is-link:hover{border-color:var(--line-strong);color:var(--ink)}.carte-start-card .btn{margin-top:6px}.carte-start-card .card-link{margin-top:auto}.carte-start-icon{align-items:center;background:var(--primary-soft);border-radius:14px;color:var(--primary);display:flex;height:48px;justify-content:center;width:48px}.carte-start-icon.is-accent{background:var(--accent-soft);color:var(--on-accent-soft)}.carte-start-icon.is-muted{background:var(--ground-strong);color:var(--muted);flex-shrink:0}.check-chip{font-weight:600;gap:6px;position:relative}.check-chip input{opacity:0;pointer-events:none;position:absolute}.check-chip .icon{display:none}.check-chip:has(input:checked){background:var(--primary-soft);border-color:var(--primary);color:var(--primary-hover)}.check-chip:has(input:checked) .icon{display:block}.check-chip:has(input:focus-visible){outline:3px solid var(--primary-ring);outline-offset:2px}.carte-summary{color:var(--muted);font-size:14px;margin:-6px 4px 0}.carte-summary a{align-items:center;display:inline-flex;font-weight:600;gap:4px}.carte-sections{display:flex;flex-direction:column;gap:14px}.carte-section{overflow:visible}.carte-section.sortable-ghost{opacity:.4}.carte-section-head{align-items:center;border-bottom:1px solid var(--ground-strong);display:flex;gap:6px;padding:8px 8px 8px 4px}.carte-section-name{flex:1;min-width:0}.carte-section-name input{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--ink);font:700 19px/1.2 var(--font-display);min-height:44px;padding:0 10px;text-overflow:ellipsis;width:100%}.carte-section-name input:hover{border-color:var(--line)}.carte-section-name input:focus{background:var(--surface);border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.carte-section-name input.is-saved{animation:saved 1.2s ease-out}@keyframes saved{0%{background:var(--primary-soft)}to{background:transparent}}.carte-count{background:var(--ground);border-radius:999px;color:var(--muted);display:inline-flex;font-size:13px;font-variant-numeric:tabular-nums;font-weight:600;height:24px;min-width:28px;padding:0 8px}.carte-count,.drag-handle{align-items:center;justify-content:center}.drag-handle{background:none;border:0;border-radius:var(--radius-sm);color:var(--faint);cursor:grab;display:flex;flex-shrink:0;height:44px;touch-action:none;width:36px}.drag-handle:hover{background:var(--ground);color:var(--ink)}.drag-handle:active{cursor:grabbing}.dish-list{list-style:none;margin:0;padding:0}.dish-list:empty{min-height:12px}.dish-row{align-items:center;background:var(--surface);display:flex;gap:4px;padding:4px 10px 4px 4px}.dish-row+.dish-row{border-top:1px solid var(--ground-strong)}.dish-row.is-new{animation:saved 1.4s ease-out}.dish-row.sortable-ghost{opacity:.35}.dish-row.sortable-chosen{box-shadow:0 8px 24px rgba(23,32,26,.14)}.dish-row .dish-off-pill{display:none}.dish-row.is-off .dish-name,.dish-row.is-off .dish-price{color:var(--faint)}.dish-row.is-off .dish-name{text-decoration:line-through}.dish-row.is-off .dish-thumb{opacity:.45}.dish-row.is-off .dish-off-pill{display:inline-flex}.dish-row-link{align-items:center;border-radius:var(--radius-sm);color:var(--ink);display:flex;flex:1;gap:12px;min-height:60px;min-width:0;padding:6px 4px;text-decoration:none}.dish-row-link:hover{background:var(--surface-muted);color:var(--ink)}.dish-thumb{align-items:center;background:var(--ground);border-radius:12px;color:var(--faint);display:flex;flex-shrink:0;height:46px;justify-content:center;overflow:hidden;width:46px}.dish-thumb img{height:100%;object-fit:cover;width:100%}.dish-text{flex:1;min-width:0}.dish-name{display:block;font-size:15px;font-weight:600;line-height:1.3}.dish-meta{align-items:center;color:var(--muted);display:flex;flex-wrap:wrap;font-size:13px;gap:4px 8px;margin-top:3px}.dish-meta .pill{font-size:11px;padding:2px 7px}.dish-price{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.dish-desc{flex:1 1 100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dish-desc.is-hint{color:var(--faint)}button.switch{background:none;border:0;cursor:pointer;height:28px;padding:0;width:46px}button.switch span:after{height:22px;width:22px}button.switch[aria-checked=true] span{background:var(--primary)}button.switch[aria-checked=true] span:after{transform:translateX(18px)}button.switch:focus-visible span{outline:3px solid var(--primary-ring);outline-offset:2px}.dish-toggle-form{display:flex;padding:8px 2px 8px 6px}.quick-add{align-items:center;background:var(--surface-muted);border-radius:0 0 var(--radius-lg) var(--radius-lg);border-top:1px dashed var(--line-strong);display:grid;gap:8px;grid-template-columns:20px minmax(0,1fr) 72px 46px;padding:10px 12px 12px}.quick-add input{background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);font:inherit;font-size:16px;min-height:46px;min-width:0;padding:0 12px}.quick-add input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.quick-add .quick-add-price{font-variant-numeric:tabular-nums;text-align:right}.quick-add .quick-add-btn{min-height:46px;padding:0;width:46px}@media (min-width:640px){.quick-add{grid-template-columns:20px minmax(0,1fr) 96px auto}.quick-add .quick-add-btn{padding:0 16px;width:auto}}@media (max-width:639px){.quick-add-label{clip:rect(0,0,0,0);height:1px;overflow:hidden;position:absolute;width:1px}}.quick-add-plus{color:var(--primary);display:flex;justify-content:center}.quick-add-error{color:var(--danger);font-size:13px;font-weight:600;grid-column:2/-1;margin:0}.carte-new-section{display:flex;flex-wrap:wrap;gap:8px;padding:10px}.carte-new-section .btn{flex:1 0 auto}.carte-new-section input{border:1px solid var(--line-strong);border-radius:var(--radius-sm);flex:1 1 220px;font:inherit;font-size:16px;min-height:44px;min-width:0;padding:0 12px}.carte-tip{align-items:flex-start;display:flex;gap:8px;margin:-4px 4px 0}.carte-tip .icon{color:var(--on-accent-soft);margin-top:2px}.form-grid-2{display:grid;gap:18px}@media (min-width:600px){.form-grid-2{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr)}}.price-input{font-variant-numeric:tabular-nums}.ar-intro,.ar-test{align-items:flex-start;display:flex;gap:14px}.ar-intro p,.ar-test p{margin:0 0 4px}.list-icon.is-ar{background:var(--primary-soft);color:var(--primary)}.ar-test{background:var(--ground);border-radius:var(--radius);padding:14px}.ar-test img{background:#fff;border-radius:8px;flex-shrink:0}.upload-preview.is-done{background:var(--primary-soft);color:var(--primary)}.paste-area{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;line-height:1.55;min-height:300px}.paste-area,.paste-rules{font-size:15px}.paste-rules p{margin:0}.paste-rules ul{line-height:1.6;margin:8px 0 10px;padding-left:20px}.paste-rules code{background:var(--ground);border-radius:6px;font-size:14px;padding:1px 6px}.guide .list-sub.is-wrap{line-height:1.45;white-space:normal}.guide-hero{background:var(--night);border-radius:var(--radius-xl);color:#fff;display:flex;flex-direction:column;gap:10px;padding:22px}.guide-hero .page-title{color:#fff}.guide-hero .page-lead{color:var(--night-muted)}.guide-hero-icon{align-items:center;background:var(--night-raised);border-radius:16px;color:var(--accent);display:flex;height:56px;justify-content:center;width:56px}.guide-facts{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:6px 0 0;padding:0}.guide-facts li{align-items:center;background:var(--night-raised);border-radius:999px;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:6px 12px}.guide-flow{display:grid;gap:12px;list-style:none;margin:0 0 12px;padding:0}.guide-flow li{align-items:center;display:flex;font-weight:500;gap:12px}.guide-flow span{align-items:center;background:var(--primary-soft);border-radius:999px;color:var(--primary);display:flex;flex-shrink:0;font-weight:700;height:30px;justify-content:center;width:30px}.guide-tips{display:grid;gap:10px}@media (min-width:760px){.guide-tips{grid-template-columns:repeat(2,minmax(0,1fr))}}.guide-tip ul{line-height:1.6;margin:8px 0 0;padding-left:18px}.guide-tip.is-do .guide-tip-head{color:var(--primary)}.guide-tip.is-dont .guide-tip-head{color:var(--danger)}.guide-tip-head{align-items:center;display:flex;font-weight:700;gap:6px;margin:0}.guide-faq details+details{border-top:1px solid var(--ground-strong)}.guide-faq summary{align-items:center;cursor:pointer;display:flex;font-weight:600;gap:12px;justify-content:space-between;list-style:none;min-height:56px;padding:10px 16px}.guide-faq summary::-webkit-details-marker{display:none}.guide-faq summary .icon{color:var(--faint);transition:transform .15s}.guide-faq details[open] summary .icon{transform:rotate(90deg)}.guide-faq p{color:var(--ink-soft);line-height:1.55;margin:0;padding:0 16px 16px}.section-title .pill{letter-spacing:0;margin-left:6px;text-transform:none;vertical-align:1px}.dish-layout,.dish-main,.dish-media{display:flex;flex-direction:column;gap:18px;min-width:0}@media (min-width:1100px){.dish-layout{align-items:start;display:grid;gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.dish-main{position:sticky;top:24px}}.scan-demo{margin:0;overflow:hidden}.scan-demo-stage{background:radial-gradient(circle at 20% 15%,var(--accent-soft) 0,transparent 45%),radial-gradient(circle at 85% 90%,var(--primary-soft) 0,transparent 55%),var(--surface-muted)}.scan-demo-stage svg{display:block;font-family:var(--font-body);height:auto;width:100%}.scan-demo-caption{display:grid;padding:16px 18px 4px}.scan-demo-step{align-content:start;display:grid;gap:6px;grid-area:1/1;visibility:hidden}.scan-demo-step.is-current{visibility:visible}.scan-demo-head{align-items:baseline;display:flex;gap:10px;margin:0}.scan-demo-text{color:var(--ink-soft);line-height:1.55;margin:0}.scan-demo-count{background:var(--primary-soft);border-radius:99px;color:var(--primary);flex-shrink:0;font-size:12px;font-variant-numeric:tabular-nums;font-weight:700;padding:2px 8px}.scan-demo-title{font-size:16px;font-weight:700}.scan-demo-controls{align-items:center;display:flex;gap:8px;padding:8px 12px 14px}.scan-demo-btn{background:var(--surface);border:1px solid var(--line);border-radius:50%;color:var(--ink);cursor:pointer;display:grid;flex-shrink:0;height:38px;place-items:center;width:38px}.scan-demo-btn:focus-visible{outline:3px solid var(--primary-ring)}.scan-demo-pause{display:flex;gap:3px}.scan-demo-pause i{background:currentColor;border-radius:1px;height:12px;width:3px}.scan-demo-play{border-bottom:6px solid transparent;border-left:10px solid;border-top:6px solid transparent;display:none;height:0;margin-left:3px;width:0}.scan-demo.is-paused .scan-demo-pause{display:none}.scan-demo.is-paused .scan-demo-play{display:block}.scan-demo-dots{display:flex;flex:1;gap:4px}.scan-demo-dots button{background:none;border:0;cursor:pointer;flex:1;height:24px;padding:0}.scan-demo-dots button span{background:var(--line);border-radius:2px;display:block;height:4px;overflow:hidden;position:relative}.scan-demo-dots button span:after{background:var(--primary);content:"";inset:0;position:absolute;transform:scaleX(0);transform-origin:left}.scan-demo-dots button.is-done span:after,.scan-demo-dots button[aria-selected=true] span:after{transform:none}.scan-demo-dots button:focus-visible span{outline:3px solid var(--primary-ring);outline-offset:3px}.scan-demo:not(.is-paused) .scan-demo-dots [aria-selected=true] span:after{animation:sd-progress var(--scene-duration,6.5s) linear both}@keyframes sd-progress{0%{transform:scaleX(0)}}.scan-scene{display:none}.scan-scene.is-active{display:inline}.sd-plate{fill:#fff;stroke:#d9ddd6;stroke-width:1.5}.sd-plate-in{fill:none;stroke:#eceeea;stroke-width:1.5}.sd-plate-shadow{fill:rgba(23,32,26,.1)}.sd-food-green{fill:#7fb069}.sd-food-meat{fill:sienna}.sd-food-sauce{fill:#e3a33b}.sd-table{fill:#e7d3b5}.sd-table-edge{fill:#cdb28b}.sd-phone{fill:var(--ink)}.sd-screen{fill:#fff}.sd-island{fill:var(--ink)}.sd-app,.sd-file-name,.sd-row-text{fill:var(--ink);font-size:11px;font-weight:700}.sd-small{fill:var(--muted);font-size:9px;font-weight:600}.sd-label{fill:var(--ink);font-size:13px;font-weight:700}.sd-button{fill:var(--primary)}.sd-button-text{fill:#fff;font-size:10px;font-weight:700}.sd-chip{fill:var(--ground-strong)}.sd-chip-text{fill:var(--ink);font-size:9.5px;font-weight:700}.sd-chip-on{fill:var(--primary)}.sd-chip-on-text{fill:#fff}.sd-row{fill:var(--ground-strong)}.sd-row-on{fill:var(--primary)}.sd-row-on-text{fill:#fff}.sd-shutter{fill:#fff;stroke:var(--primary);stroke-width:4}.sd-tap{fill:var(--primary);opacity:0}.sd-badge-no{fill:#fdecea;stroke:#f4c7c2}.sd-badge-ok{fill:var(--primary-soft);stroke:var(--primary-ring)}.sd-icon{fill:none;stroke:#b42318;stroke-width:2;stroke-linecap:round}.sd-icon-fill{fill:#b42318}.sd-slash{stroke:#b42318;stroke-width:3;stroke-linecap:round}.sd-check{fill:none;stroke:var(--primary);stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}.sd-check.is-small{stroke-width:2.5}.sd-spark{fill:var(--accent)}.sd-cloth{opacity:0}.sd-cloth rect{fill:#9cc3e6}.sd-cloth path{stroke:#6e9cc7;stroke-width:1.5;stroke-linecap:round}.sd-orbit{fill:none;stroke:var(--line-strong);stroke-width:1.5;stroke-dasharray:5 5}.sd-walker{opacity:0}.sd-walker rect{fill:var(--ink);stroke:#fff;stroke-width:2}.sd-turn{opacity:0}.sd-turn.is-3{opacity:1}.sd-bar{fill:var(--ground-strong)}.sd-bar-fill{fill:var(--primary)}.sd-crop{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-dasharray:6 4;vector-effect:non-scaling-stroke;transform:scale(.92,.44);transform-box:fill-box;transform-origin:center}.sd-vanish{opacity:0}.sd-file{fill:#fff;stroke:var(--primary);stroke-width:2;filter:drop-shadow(0 6px 10px rgba(23,32,26,.12))}.sd-file-name.is-small{font-size:10px}.sd-cube{fill:var(--primary-soft);stroke:var(--primary);stroke-width:1.6;stroke-linejoin:round}.sd-card{fill:#fff;stroke:var(--line);stroke-width:1.5}.sd-drop-zone{fill:var(--surface-muted);stroke:var(--line-strong);stroke-width:1.5;stroke-dasharray:5 4}.sd-qr-bg{fill:#fff;stroke:var(--line)}.sd-qr-dots{fill:var(--ink)}.sd-scanline{fill:var(--accent);opacity:.85}.sd-ar{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round}.scan-scene.is-active .sd-drop{animation:sd-drop .7s cubic-bezier(.3,1.4,.5,1) var(--d,0s) backwards}.scan-scene.is-active .sd-land{animation:sd-land .9s cubic-bezier(.3,1.3,.5,1) var(--d,0s) backwards}.scan-scene.is-active .sd-rise{animation:sd-rise .7s cubic-bezier(.2,.9,.3,1) var(--d,0s) backwards}.scan-scene.is-active .sd-fade{animation:sd-fade .6s ease var(--d,0s) backwards}.scan-scene.is-active .sd-pop,.scan-scene.is-active .sd-spark{animation:sd-pop .5s cubic-bezier(.3,1.6,.5,1) var(--d,0s) backwards;transform-box:fill-box;transform-origin:center}.scan-scene.is-active .sd-tap{animation:sd-tap .7s ease-out var(--d,0s) backwards;transform-box:fill-box;transform-origin:center}.scan-scene.is-active .sd-chip-on,.scan-scene.is-active .sd-row-on{animation:sd-turn-on .3s ease var(--d,0s) backwards}.scan-scene.is-active .sd-chip-on-text,.scan-scene.is-active .sd-row-on-text{animation:sd-text-on .3s ease var(--d,0s) backwards}.scan-scene.is-active .sd-vanish{animation:sd-vanish .5s ease var(--d,0s) backwards}.scan-scene.is-active .sd-cloth{animation:sd-cloth 4.6s linear both}.scan-scene.is-active .sd-bar-fill{animation:sd-fill 1.8s ease-in-out .4s backwards;transform-box:fill-box;transform-origin:left}.scan-scene.is-active .sd-bar-fill.is-fast{animation-delay:.9s;animation-duration:1.2s}.scan-scene.is-active .sd-crop{animation:sd-crop 1s ease-in-out 2.3s backwards}.scan-scene.is-active .sd-fly{animation:sd-fly .8s cubic-bezier(.2,.9,.3,1) var(--d,0s) backwards}.scan-scene.is-active .sd-scanline{animation:sd-scan .9s ease-in-out 2.5s 2 alternate backwards;transform-box:view-box}.scan-scene.is-active .sd-walker.is-1{animation:sd-window-1 6s linear both}.scan-scene.is-active .sd-walker.is-2{animation:sd-window-2 6s linear both}.scan-scene.is-active .sd-walker.is-3{animation:sd-window-3 6s linear both}.scan-scene.is-active .sd-turn.is-1{animation:sd-window-1 6s linear both}.scan-scene.is-active .sd-turn.is-2{animation:sd-window-2 6s linear both}.scan-scene.is-active .sd-turn.is-3{animation:sd-window-3 6s linear both}.scan-scene.is-active .sd-orbit.is-1{animation:sd-orbit-1 6s linear both}.scan-scene.is-active .sd-orbit.is-2{animation:sd-orbit-2 6s linear both}.scan-scene.is-active .sd-orbit.is-3{animation:sd-orbit-3 6s linear both}@keyframes sd-drop{0%{opacity:0;transform:translateY(-60px)}}@keyframes sd-land{0%{opacity:0;transform:translateY(-80px)}}@keyframes sd-rise{0%{opacity:0;transform:translateY(40px)}}@keyframes sd-fade{0%{opacity:0}}@keyframes sd-pop{0%{opacity:0;transform:scale(.3)}}@keyframes sd-tap{0%{opacity:0}1%{opacity:.5;transform:scale(.3)}to{opacity:0;transform:scale(1.3)}}@keyframes sd-turn-on{0%{fill:var(--ground-strong)}}@keyframes sd-text-on{0%{fill:var(--ink)}}@keyframes sd-vanish{0%{opacity:1}}@keyframes sd-cloth{0%,43%{opacity:0}44%,72%{opacity:1}76%,to{opacity:0}}@keyframes sd-fill{0%{transform:scaleX(0)}}@keyframes sd-crop{0%{transform:none}}@keyframes sd-fly{0%{opacity:0;transform:translateX(-120px) scale(.6)}}@keyframes sd-scan{0%{transform:translateY(0)}to{transform:translateY(73px)}}@keyframes sd-window-1{0%,31%{opacity:1}33%,to{opacity:0}}@keyframes sd-window-2{0%,32%{opacity:0}34%,64%{opacity:1}66%,to{opacity:0}}@keyframes sd-window-3{0%,65%{opacity:0}67%,to{opacity:1}}@keyframes sd-orbit-1{0%,31%{stroke:var(--primary);stroke-width:2.5}}@keyframes sd-orbit-2{34%,64%{stroke:var(--primary);stroke-width:2.5}}@keyframes sd-orbit-3{67%,to{stroke:var(--primary);stroke-width:2.5}}@media (prefers-reduced-motion:reduce){.scan-demo-dots [aria-selected=true] span:after,.scan-scene.is-active *{animation:none!important}}