/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.contents{display:contents}.hidden{display:none}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}}:root{--accent:#0f766e;--accent-dark:#115e59;--danger:#a11235;--green:#22734f;--ink:#15171a;--line:#d9dee5;--muted:#69717d;--panel:#fff;--paper:#f5f7fa;--soft:#e7f6f3}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--paper);color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}.page{gap:16px;width:min(1520px,100% - 32px);margin:0 auto;padding:22px 0 42px;display:grid}.topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:18px;padding-bottom:16px;display:flex}.eyebrow{color:var(--accent-dark);letter-spacing:0;text-transform:uppercase;margin:0 0 4px;font-size:.74rem;font-weight:900}.topbar h1{margin:0;font-size:clamp(1.85rem,3vw,3.35rem);line-height:1}.session-line{color:var(--muted);margin-top:8px;font-size:.88rem;font-weight:800;display:inline-block}.topbar-actions{place-items:flex-end end;gap:14px;display:grid}.stats{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.stat-pill{border:1px solid var(--line);color:var(--muted);background:#fff;border-radius:6px;align-items:center;min-height:34px;padding:8px 10px;font-size:.82rem;font-weight:900;display:inline-flex}.notice{color:var(--danger);background:#fff1f2;border:1px solid #f1a2b3;border-radius:6px;padding:12px;font-weight:800}.workspace{grid-template-columns:minmax(300px,370px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.sidebar,.stage{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:16px;box-shadow:0 16px 44px #141f2b14}.sidebar{gap:14px;max-height:calc(100vh - 24px);display:grid;position:sticky;top:12px;overflow:auto}.stage{gap:14px;min-width:0;display:grid}.button{color:#fff;cursor:pointer;background:#151515;border:0;border-radius:6px;justify-content:center;align-items:center;min-height:42px;padding:10px 14px;font-weight:800;display:inline-flex}.button:disabled{cursor:not-allowed;opacity:.5}.button.primary{background:var(--accent)}.button.ghost{border:1px solid var(--line);color:var(--accent-dark);background:0 0}.button.small{min-height:36px;padding:8px 10px;font-size:.8rem}.button.full{width:100%}.form-error{color:var(--danger);background:#fff1f2;border:1px solid #f1a2b3;border-radius:6px;padding:10px;font-size:.88rem;font-weight:900}.form-notice{color:#155e56;background:#e6f8f4;border:1px solid #8ed7cb;border-radius:6px;padding:10px;font-size:.88rem;font-weight:800}.frontend-update-notice{color:#f4fffd;z-index:100;background:#153f3a;border:1px solid #2e8c82;border-radius:10px;align-items:flex-start;gap:12px;width:360px;max-width:calc(100% - 32px);padding:14px;display:flex;position:fixed;top:16px;right:16px;box-shadow:0 18px 46px #141f2b47}.frontend-update-notice p{color:#d0ece8;margin:4px 0 10px;font-size:.88rem}.frontend-update-icon{color:#6fe0d0;flex:none;margin-top:2px}.drop-zone{color:var(--muted);cursor:pointer;text-align:center;background:linear-gradient(#f9fffe,#eef8f7);border:1px dashed #9bb5bd;border-radius:8px;place-items:center;gap:8px;min-height:168px;padding:18px;display:grid}.drop-zone.secondary{background:linear-gradient(#fbfcff,#eef3ff);border-color:#a8b7d8;min-height:138px}.drop-zone strong{color:var(--ink);font-size:1rem;line-height:1.25}.drop-zone span{color:var(--muted);font-size:.84rem;font-weight:800}.asset-list,.mockup-list{gap:8px;display:grid}.asset-row,.mockup-row{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fff;border-radius:8px;align-items:center;gap:10px;width:100%;min-width:0;padding:8px;display:grid}.asset-row{cursor:pointer;grid-template-columns:54px minmax(0,1fr) auto}.asset-row.active{border-color:var(--accent);box-shadow:0 0 0 3px #0f766e1f}.mockup-row{grid-template-columns:54px minmax(0,1fr) 86px auto}.asset-row img,.mockup-row img{object-fit:contain;background-color:#fbfbfb;background-image:linear-gradient(45deg,#edf0f3 25%,#0000 25%),linear-gradient(-45deg,#edf0f3 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#edf0f3 75%),linear-gradient(-45deg,#0000 75%,#edf0f3 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;border:1px solid #edf0f3;border-radius:6px;width:54px;height:54px}.asset-row span,.mockup-row span{gap:3px;min-width:0;display:grid}.asset-row strong,.mockup-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:.84rem;line-height:1.2;overflow:hidden}.asset-row small,.mockup-row small,.asset-row em{color:var(--muted);font-size:.74rem;font-style:normal;font-weight:800;line-height:1.2}.asset-row em{color:var(--green)}.text-button{color:#9f1239;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px;font-size:.74rem;font-weight:900}.text-button:hover{background:#fff1f2}.mode-grid{grid-template-columns:repeat(6,minmax(126px,1fr));gap:8px;display:grid}.mode-card{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:8px;align-content:center;gap:4px;min-height:74px;padding:10px;display:grid}.mode-card strong{font-size:.9rem;line-height:1.16}.mode-card span{color:var(--muted);font-size:.74rem;font-weight:800;line-height:1.25}.mode-card.selected{background:var(--soft);border-color:var(--accent);box-shadow:0 0 0 3px #0f766e1a}.control-strip{border:1px solid var(--line);background:#fafbfc;border-radius:8px;grid-template-columns:190px repeat(3,minmax(180px,1fr));align-items:stretch;gap:10px;padding:10px;display:grid}.control-strip label{color:var(--muted);grid-template-columns:auto 1fr auto;align-items:center;gap:8px;min-height:42px;font-size:.78rem;font-weight:900;display:grid}.control-strip input[type=range]{accent-color:var(--accent);width:100%}.control-strip strong{color:var(--ink);text-align:right;min-width:36px;font-size:.8rem}.toggle-control{border-right:1px solid var(--line);padding-right:10px;color:var(--ink)!important;grid-template-columns:auto 1fr!important}.toggle-control input{accent-color:var(--accent);width:18px;height:18px}.stage-actions,.placement-editor{border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px}.stage-actions{justify-content:space-between;align-items:center;gap:14px;display:flex}.stage-actions>div:first-child{gap:2px;min-width:0;display:grid}.stage-actions strong{line-height:1.2}.stage-actions span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:520px;font-size:.82rem;font-weight:800;overflow:hidden}.tool-actions,.editor-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.generated-grid{grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px;min-height:360px;display:grid}.empty{color:var(--muted);text-align:center;background:#fff;border:1px dashed #aeb8c5;border-radius:8px;grid-column:1/-1;place-items:center;min-height:330px;padding:24px;display:grid}.empty strong{color:var(--ink);margin-bottom:6px;font-size:1.08rem;display:block}.empty span{max-width:520px;font-weight:800;line-height:1.5}.generated-card{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-rows:minmax(260px,1fr) auto;min-width:0;display:grid;overflow:hidden}.generated-card>img{object-fit:contain;background:#f0f2f5;width:100%;height:100%;min-height:260px}.generated-card>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.generated-card span{gap:2px;min-width:0;display:grid}.generated-card strong{text-overflow:ellipsis;white-space:nowrap;max-width:280px;font-size:.86rem;overflow:hidden}.generated-card small{color:var(--muted);font-size:.74rem;font-weight:800}.generated-card .button{white-space:nowrap;min-height:36px;padding:8px 10px}.placement-editor{gap:12px;display:grid}.placement-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.placement-header>div:first-child{gap:3px;display:grid}.placement-header strong{font-size:1rem}.placement-header span{color:var(--muted);font-size:.82rem;font-weight:800;line-height:1.35}.placement-canvas{background:#f8fafc;border:1px dashed #aeb8c5;border-radius:8px;justify-content:center;align-items:center;min-height:300px;padding:12px;display:flex;position:relative;overflow:hidden}.placement-image-shell{max-width:100%;display:inline-block;position:relative}.placement-canvas img{object-fit:contain;background:#fff;max-width:100%;max-height:560px;display:block;box-shadow:0 14px 30px #141f2b1f}.placement-box{border:2px solid var(--accent);cursor:move;touch-action:none;background:#0f766e29;min-width:34px;min-height:34px;position:absolute;box-shadow:0 0 0 9999px #0f172a0a}.placement-box span{background:var(--accent);color:#fff;white-space:nowrap;border-radius:5px;padding:4px 6px;font-size:.72rem;font-weight:900;line-height:1;position:absolute;top:6px;left:6px}.placement-box i{background:var(--accent);cursor:nwse-resize;border:2px solid #fff;border-radius:50%;width:18px;height:18px;position:absolute;bottom:-8px;right:-8px;box-shadow:0 3px 8px #0000002e}.placement-message{color:var(--muted);text-align:center;place-items:center;padding:24px;font-weight:900;line-height:1.45;display:grid;position:absolute;inset:0}@media (width<=1280px){.mode-grid{grid-template-columns:repeat(3,minmax(160px,1fr))}}@media (width<=1180px){.workspace{grid-template-columns:1fr}.sidebar{max-height:none;position:static}.generated-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (width<=760px){.page{width:min(100% - 24px,720px);padding-top:12px}.topbar,.stage-actions,.placement-header{flex-direction:column;align-items:flex-start}.stats{justify-content:flex-start}.topbar-actions{justify-items:start}.mode-grid,.control-strip,.generated-grid{grid-template-columns:1fr}.control-strip label{grid-template-columns:88px 1fr 42px}.toggle-control{border-bottom:1px solid var(--line);border-right:0;padding:0 0 10px}.mockup-row{grid-template-columns:48px minmax(0,1fr) 82px}.mockup-row .text-button{grid-column:2/4;justify-self:start}.asset-row{grid-template-columns:48px minmax(0,1fr)}.asset-row .text-button{grid-column:2;justify-self:start}.generated-card{grid-template-rows:minmax(220px,1fr) auto}.generated-card>div{flex-direction:column;align-items:flex-start}.generated-card .button,.editor-actions button{width:100%}.placement-canvas{min-height:320px}}.mockup-app{--mockup-accent:#0b5d4c;--mockup-accent-soft:#e4f2ee;--mockup-bg:#eeeae1;--mockup-danger:#b4324f;--mockup-danger-soft:#fbedf0;--mockup-ink:#1b1712;--mockup-line:#e5ded0;--mockup-muted:#8b8578;--mockup-panel:#fff;--mockup-panel-soft:#f6f3ec;background:var(--mockup-panel);color:var(--mockup-ink);flex-direction:column;min-height:100dvh;display:flex}.mockup-app button{font:inherit}.mockup-header{background:var(--mockup-panel);border-bottom:1px solid var(--mockup-line);z-index:6;flex-shrink:0;align-items:center;gap:14px;height:60px;padding:0 18px;display:flex;position:sticky;top:0}.mockup-brand{color:inherit;align-items:center;gap:14px;text-decoration:none;display:flex}.mockup-brand:focus-visible{outline:3px solid var(--mockup-accent);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.mockup-brand:focus-visible{outline:3px solid color-mix(in srgb, var(--mockup-accent) 42%, transparent)}}.mockup-brand:focus-visible{outline-offset:3px}.mockup-brand-mark{background:var(--mockup-accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;font-family:Bricolage Grotesque,Inter,ui-sans-serif,sans-serif;font-size:19px;font-weight:800;display:inline-flex}.mockup-brand-copy{gap:1px;display:grid}.mockup-brand-copy strong,.mockup-section-title strong,.mockup-placement-header>strong,.mockup-onboarding h1{font-family:Bricolage Grotesque,Inter,ui-sans-serif,sans-serif}.mockup-brand-copy strong{letter-spacing:-.01em;font-size:18px;line-height:1}.mockup-brand-copy small{color:var(--mockup-muted);letter-spacing:.09em;text-transform:uppercase;font-size:10px;font-weight:700}.mockup-header-spacer{flex:1}.mockup-button,.mockup-icon-button,.mockup-user-trigger{cursor:pointer;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:34px;padding:0 12px;font-size:12px;font-weight:800;display:inline-flex}.mockup-button:disabled,.mockup-icon-button:disabled,.mockup-user-trigger:disabled{cursor:not-allowed;opacity:.45}.mockup-button-secondary,.mockup-icon-button{background:var(--mockup-panel);border:1px solid var(--mockup-line);color:var(--mockup-ink)}.mockup-icon-button{width:34px;min-height:34px;padding:0}.mockup-button-primary{background:var(--mockup-accent);border:1px solid var(--mockup-accent);color:#fff;width:134px;min-height:40px;padding:0}.mockup-button-secondary{width:64px;padding:0}.mockup-button-clear{color:#4f4a42;gap:6px;width:auto;padding:0 11px}.mockup-clear-icon{display:block}.mockup-button,.mockup-icon-button,.mockup-user-trigger{transition:background .16s,border-color .16s,color .16s,transform .16s}.mockup-button-secondary:hover:not(:disabled),.mockup-icon-button:hover:not(:disabled){background:var(--mockup-panel-soft);border-color:#cbc2b2}.mockup-button-primary:hover:not(:disabled){background:#084f41;border-color:#084f41}.mockup-button:active:not(:disabled),.mockup-icon-button:active:not(:disabled),.mockup-user-trigger:active:not(:disabled){transform:translateY(1px)}.mockup-button:focus-visible,.mockup-icon-button:focus-visible,.mockup-user-trigger:focus-visible,.mockup-user-actions button:focus-visible{outline:3px solid var(--mockup-accent)}@supports (color:color-mix(in lab, red, red)){.mockup-button:focus-visible,.mockup-icon-button:focus-visible,.mockup-user-trigger:focus-visible,.mockup-user-actions button:focus-visible{outline:3px solid color-mix(in srgb, var(--mockup-accent) 24%, transparent)}}.mockup-button:focus-visible,.mockup-icon-button:focus-visible,.mockup-user-trigger:focus-visible,.mockup-user-actions button:focus-visible{outline-offset:2px}.mockup-user-menu{flex:none;position:relative}.mockup-user-trigger{background:var(--mockup-accent);border:1px solid var(--mockup-accent);color:#fff;border-radius:50%;width:36px;height:36px;padding:0;font-size:13px}.mockup-user-trigger:hover,.mockup-user-menu:focus-within .mockup-user-trigger{background:#084f41;border-color:#084f41}.mockup-user-menu-panel{background:var(--mockup-panel);border:1px solid var(--mockup-line);z-index:20;border-radius:12px;width:min(250px,100vw - 24px);animation:.16s cubic-bezier(.22,1,.36,1) both mockup-user-menu-in;position:absolute;top:calc(100% + 9px);right:0;overflow:hidden;box-shadow:0 6px 8px #1b171229}.mockup-user-menu-panel[hidden]{display:none}.mockup-user-summary{background:var(--mockup-panel-soft);border-bottom:1px solid var(--mockup-line);gap:3px;padding:12px 13px;display:grid}.mockup-user-summary strong,.mockup-user-summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mockup-user-summary strong{font-size:13px;line-height:1.25}.mockup-user-summary span{color:#6f695f;font-size:11px;font-weight:600}.mockup-user-actions{gap:3px;padding:5px;display:grid}.mockup-user-actions button{color:var(--mockup-ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:10px;width:100%;min-height:38px;padding:0 10px;font-size:12px;font-weight:800;transition:background .16s,color .16s;display:flex}.mockup-user-actions button:hover{background:var(--mockup-accent-soft);color:var(--mockup-accent)}.mockup-user-actions .mockup-user-signout{color:#a51f40}.mockup-user-actions .mockup-user-signout:hover{background:var(--mockup-danger-soft);color:#921b38}@keyframes mockup-user-menu-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}.mockup-shell{flex:1;grid-template-columns:320px minmax(0,1fr);align-items:start;display:grid}.mockup-sidebar{background:var(--mockup-panel-soft);border-right:1px solid var(--mockup-line);flex-direction:column;align-self:start;max-height:calc(100dvh - 92px);display:flex;position:sticky;top:60px;overflow-y:auto}.mockup-asset-section{gap:13px;padding:16px;display:grid}.mockup-artwork-section,.mockup-library-section{border-bottom:1px solid var(--mockup-line)}.mockup-asset-heading{align-items:center;gap:8px;display:flex}.mockup-asset-heading strong{letter-spacing:.02em;align-items:center;gap:6px;font-size:13px;font-weight:800;line-height:1.2;display:inline-flex}.mockup-asset-heading span{background:var(--mockup-accent-soft);color:var(--mockup-accent);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:800;line-height:1.2}.mockup-compact-drop{background:var(--mockup-panel);border:1.5px dashed var(--mockup-line);cursor:pointer;border-radius:12px;align-items:center;gap:10px;padding:12px;transition:background .12s,border-color .12s;display:flex}.mockup-compact-drop.is-active{background:var(--mockup-accent-soft);border-color:var(--mockup-accent)}.mockup-compact-drop.is-busy{cursor:wait;opacity:.68}.mockup-drop-icon{background:var(--mockup-panel-soft);border:1px solid var(--mockup-line);color:var(--mockup-ink);border-radius:10px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.mockup-art-icon{background:var(--mockup-accent-soft);color:var(--mockup-accent);border:0}.mockup-library-icon{color:#6851a8;background:#f1ecff;border:0}.mockup-compact-drop>span:last-child{gap:1px;min-width:0;display:grid}.mockup-compact-drop strong{font-size:13px;font-weight:800;line-height:1.2}.mockup-compact-drop small,.mockup-asset-row small{color:var(--mockup-muted);font-size:11px;font-weight:600;line-height:1.2}.mockup-asset-list{gap:8px;display:grid}.mockup-library-empty,.mockup-artwork-help{color:var(--mockup-muted);margin:-2px 2px 1px;font-size:11.5px;font-weight:600;line-height:1.45}.mockup-artwork-help strong{color:var(--mockup-accent)}.mockup-asset-row{background:var(--mockup-panel);border:1px solid var(--mockup-line);border-radius:11px;align-items:center;gap:6px;min-width:0;padding:7px;transition:background .12s,border-color .12s;display:flex}.mockup-asset-row.is-selected{background:var(--mockup-accent-soft);border-color:var(--mockup-accent)}.mockup-asset-row.is-applied:not(.is-selected),.mockup-library-row.is-in-workspace{border-color:#a9d8cc}.mockup-asset-select{color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;flex:1;align-items:center;gap:9px;min-width:0;padding:0;display:flex}.mockup-asset-select img{background:var(--mockup-panel-soft);border:1px solid var(--mockup-line);object-fit:cover;border-radius:9px;flex:none;width:42px;height:42px}.mockup-artwork-thumbnail{flex:0 0 42px;width:42px;height:42px;position:relative}.mockup-artwork-thumbnail-select{cursor:pointer;background:0 0;border:0;width:42px;height:42px;padding:0;display:block}.mockup-artwork-thumbnail img{background:var(--mockup-panel-soft);border:1px solid var(--mockup-line);object-fit:cover;border-radius:9px;width:42px;height:42px;display:block}.mockup-artwork-edit-button{background:var(--mockup-accent);border:2px solid var(--mockup-panel);color:#fff;cursor:pointer;z-index:1;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;padding:0;display:inline-flex;position:absolute;bottom:-4px;right:-4px}.mockup-artwork-edit-button:hover{background:#07493c;transform:scale(1.06)}.mockup-artwork-info{gap:0}.mockup-asset-row:nth-child(n) .mockup-asset-select>span{gap:1px;min-width:0;display:grid}.mockup-asset-select strong{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:800;line-height:1.2;overflow:hidden}.mockup-remove-button{color:var(--mockup-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;justify-content:center;align-items:center;padding:4px;display:inline-flex}.mockup-remove-button:hover{background:var(--mockup-danger-soft);color:var(--mockup-danger)}.mockup-remove-button:disabled{cursor:wait;opacity:.42}.mockup-artwork-apply,.mockup-library-use,.mockup-save-button{background:var(--mockup-panel);border:1px solid var(--mockup-line);color:var(--mockup-accent);cursor:pointer;border-radius:8px;flex:none;justify-content:center;align-items:center;width:26px;height:26px;padding:0;display:inline-flex}.mockup-artwork-apply:hover,.mockup-library-use:hover,.mockup-save-button:hover:not(:disabled){background:var(--mockup-accent-soft);border-color:#9bcfc3}.mockup-artwork-apply.is-active,.mockup-library-use.is-active,.mockup-save-button.is-saved{background:var(--mockup-accent-soft);border-color:#a9d8cc}.mockup-save-button:disabled{cursor:default;opacity:.76}.mockup-artwork-apply:focus-visible,.mockup-library-use:focus-visible,.mockup-save-button:focus-visible,.mockup-remove-button:focus-visible,.mockup-asset-select:focus-visible,.mockup-artwork-edit-button:focus-visible,.mockup-artwork-thumbnail-select:focus-visible{outline:3px solid var(--mockup-accent)}@supports (color:color-mix(in lab, red, red)){.mockup-artwork-apply:focus-visible,.mockup-library-use:focus-visible,.mockup-save-button:focus-visible,.mockup-remove-button:focus-visible,.mockup-asset-select:focus-visible,.mockup-artwork-edit-button:focus-visible,.mockup-artwork-thumbnail-select:focus-visible{outline:3px solid color-mix(in srgb, var(--mockup-accent) 34%, transparent)}}.mockup-artwork-apply:focus-visible,.mockup-library-use:focus-visible,.mockup-save-button:focus-visible,.mockup-remove-button:focus-visible,.mockup-asset-select:focus-visible,.mockup-artwork-edit-button:focus-visible,.mockup-artwork-thumbnail-select:focus-visible{outline-offset:2px}.artwork-editor-backdrop{z-index:50;background:#12110eb8;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.artwork-editor-dialog{background:var(--mockup-panel);border:1px solid var(--mockup-line)}@supports (color:color-mix(in lab, red, red)){.artwork-editor-dialog{border:1px solid color-mix(in srgb, var(--mockup-line) 78%, #000)}}.artwork-editor-dialog{border-radius:18px;flex-direction:column;width:100%;max-width:980px;max-height:calc(100dvh - 44px);display:flex;overflow:hidden;box-shadow:0 28px 80px #00000057}.artwork-editor-header{border-bottom:1px solid var(--mockup-line);justify-content:space-between;align-items:center;padding:15px 18px;display:flex}.artwork-editor-header>div{gap:2px;min-width:0;display:grid}.artwork-editor-header h2{margin:0;font-family:Bricolage Grotesque,Inter,ui-sans-serif,sans-serif;font-size:18px;line-height:1.15}.artwork-editor-header p{color:var(--mockup-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11.5px;font-weight:650;overflow:hidden}.artwork-editor-header>button{background:var(--mockup-panel-soft);border:1px solid var(--mockup-line);color:var(--mockup-ink);cursor:pointer;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;padding:0;display:inline-flex}.artwork-editor-toolbar{background:var(--mockup-panel-soft);border-bottom:1px solid var(--mockup-line);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 18px;display:flex}.artwork-editor-tools,.artwork-editor-history{align-items:center;gap:6px;display:flex}.artwork-editor-toolbar button{background:var(--mockup-panel);border:1px solid var(--mockup-line);color:var(--mockup-ink);cursor:pointer;border-radius:9px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:11.5px;font-weight:800;display:inline-flex}.artwork-editor-toolbar button.is-active{background:var(--mockup-accent);border-color:var(--mockup-accent);color:#fff}.artwork-editor-toolbar button:disabled{cursor:not-allowed;opacity:.42}.artwork-editor-history{margin-left:auto}.artwork-editor-brush-size{color:var(--mockup-muted);align-items:center;gap:7px;font-size:11px;font-weight:750;display:flex}.artwork-editor-brush-size input{accent-color:var(--mockup-accent);width:110px}.artwork-editor-brush-size strong{color:var(--mockup-ink);min-width:34px}.artwork-editor-crop-size{color:var(--mockup-muted);margin:0;font-size:11.5px;font-weight:700}.artwork-editor-stage{background-color:#ddd8ce;background-image:linear-gradient(45deg,#c9c3b7 25%,#0000 25%),linear-gradient(-45deg,#c9c3b7 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#c9c3b7 75%),linear-gradient(-45deg,#0000 75%,#c9c3b7 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;flex:1;justify-content:center;align-items:center;min-height:260px;padding:18px;display:flex;overflow:auto}.artwork-editor-stage svg{touch-action:none;-webkit-user-select:none;user-select:none;width:auto;max-width:100%;height:auto;max-height:55dvh;display:block;box-shadow:0 8px 26px #0000002e}.artwork-editor-stage.is-crop [data-crop-handle=move]{cursor:move}.artwork-editor-stage.is-crop [data-crop-handle=nw],.artwork-editor-stage.is-crop [data-crop-handle=se]{cursor:nwse-resize}.artwork-editor-stage.is-crop [data-crop-handle=ne],.artwork-editor-stage.is-crop [data-crop-handle=sw]{cursor:nesw-resize}.artwork-editor-stage.is-eraser svg{cursor:crosshair}.artwork-editor-help{background:var(--mockup-panel-soft);border-top:1px solid var(--mockup-line);gap:1px;padding:9px 18px;display:grid}.artwork-editor-help strong{font-size:11.5px;font-weight:800}.artwork-editor-help span{color:var(--mockup-muted);font-size:11px;font-weight:600}.artwork-editor-footer{border-top:1px solid var(--mockup-line);align-items:center;gap:12px;min-height:62px;padding:11px 18px;display:flex}.artwork-editor-footer>span{color:var(--mockup-muted);font-size:11.5px;font-weight:650}.artwork-editor-footer>p{color:var(--mockup-danger);margin:0 auto;font-size:11.5px;font-weight:700}.artwork-editor-footer>div{gap:8px;margin-left:auto;display:flex}.artwork-editor-footer button{cursor:pointer;border-radius:9px;min-height:38px;padding:0 14px;font-size:12px;font-weight:800}.artwork-editor-cancel{background:var(--mockup-panel);border:1px solid var(--mockup-line);color:var(--mockup-ink)}.artwork-editor-save{background:var(--mockup-accent);border:1px solid var(--mockup-accent);color:#fff}.artwork-editor-footer button:disabled,.artwork-editor-header>button:disabled{cursor:not-allowed;opacity:.5}.mockup-content{background:var(--mockup-panel-soft);min-width:0}.mockup-onboarding{place-items:center;min-height:calc(100dvh - 92px);padding:30px;display:grid}.mockup-onboarding-copy{text-align:center;gap:24px;width:100%;max-width:560px;animation:.4s both mockup-fade-up;display:grid}.mockup-onboarding-copy>div:first-child{gap:8px;display:grid}.mockup-onboarding h1{letter-spacing:-.02em;margin:0;font-size:30px;line-height:1.1}.mockup-onboarding p{color:var(--mockup-muted);margin:0;font-size:15px;font-weight:500;line-height:1.5}.mockup-onboarding-actions{grid-template-columns:1fr 1fr;gap:14px;display:grid}.mockup-onboarding-upload{background:var(--mockup-panel);border:1.5px dashed var(--mockup-line);cursor:pointer;border-radius:16px;flex-direction:column;align-items:center;gap:8px;padding:26px 18px;display:flex;box-shadow:0 10px 30px #1815110f}.mockup-onboarding-icon{background:var(--mockup-panel-soft);border:1px solid var(--mockup-line);color:var(--mockup-ink);border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.mockup-onboarding-icon-primary{background:var(--mockup-accent);color:#fff;border:0}.mockup-onboarding-upload strong{font-size:15px;font-weight:800}.mockup-onboarding-upload small{color:var(--mockup-muted);font-size:12.5px;font-weight:600}.mockup-workspace{flex-direction:column;display:flex}.mockup-mode-bar{background:var(--mockup-panel);border-bottom:1px solid var(--mockup-line);flex-wrap:wrap;align-items:center;gap:12px;padding:11px 18px;display:flex}.mockup-mode-bar>span{color:var(--mockup-muted);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:800}.mockup-mode-bar p{color:var(--mockup-muted);margin:0;font-size:12px;font-weight:600}.mockup-mode-bar>strong{color:var(--mockup-muted);text-overflow:ellipsis;white-space:nowrap;max-width:220px;margin-left:auto;font-size:12px;font-weight:700;overflow:hidden}.mockup-preview-section{display:grid}.mockup-section-title{align-items:center;gap:10px;padding:12px 18px 6px;display:flex}.mockup-section-title strong,.mockup-placement-header>strong{font-size:15px;font-weight:800;line-height:1.2}.mockup-section-title span{color:var(--mockup-muted);font-size:12px;font-weight:700}.mockup-preview-body{padding:6px 18px 18px}.mockup-empty-preview{background:var(--mockup-panel);border:1px dashed var(--mockup-line);text-align:center;border-radius:14px;padding:36px 24px}.mockup-empty-preview strong{margin-bottom:4px;font-size:14px;font-weight:800;display:block}.mockup-empty-preview span{color:var(--mockup-muted);font-size:12.5px;font-weight:600}.mockup-preview-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px;display:grid}.mockup-preview-card{background:var(--mockup-panel);border:1px solid var(--mockup-line);border-radius:14px;flex-direction:column;animation:.35s both mockup-fade-up;display:flex;overflow:hidden}.mockup-preview-card>div{background:var(--mockup-panel-soft);place-items:center;padding:9px;display:grid}.mockup-preview-card img{border-radius:6px;width:100%;height:auto;display:block}.mockup-preview-card footer{border-top:1px solid var(--mockup-line);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.mockup-preview-card footer>span{gap:1px;min-width:0;display:grid}.mockup-preview-card footer strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800;line-height:1.2;overflow:hidden}.mockup-preview-card footer small{color:var(--mockup-muted);font-size:10.5px;font-weight:600;line-height:1.2}.mockup-preview-card button{background:var(--mockup-accent);color:#fff;cursor:pointer;border:0;border-radius:8px;flex:none;padding:7px 11px;font-size:10.7px;font-weight:800}.mockup-placement-section{background:var(--mockup-panel);border-top:1px solid var(--mockup-line);flex-direction:column;display:flex}.mockup-placement-header{flex-wrap:wrap;align-items:center;gap:10px;padding:12px 18px 8px;display:flex}.mockup-placement-header>span{color:var(--mockup-muted);flex:1;min-width:120px;font-size:12px;font-weight:600}.mockup-placement-header>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mockup-placement-header button{background:var(--mockup-panel);border:1px solid var(--mockup-line);color:var(--mockup-ink);cursor:pointer;border-radius:9px;padding:8px 9px;font-size:11px;font-weight:800}.mockup-placement-header button:disabled,.mockup-placement-header .app-select-trigger:disabled{cursor:not-allowed;opacity:.45}.app-select{flex:none;min-width:0}.app-select-trigger{background:var(--mockup-panel-soft,#f5f7fa);border:1px solid var(--mockup-line,var(--line));color:var(--mockup-ink,var(--ink));cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:39px;padding:0 11px 0 12px;font-size:12px;font-weight:800;transition:background .16s,border-color .16s,box-shadow .16s;display:flex}.app-select-trigger>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.app-select-trigger:hover:not(:disabled){background:var(--mockup-panel,#fff);border-color:var(--mockup-accent,var(--accent))}@supports (color:color-mix(in lab, red, red)){.app-select-trigger:hover:not(:disabled){border-color:color-mix(in srgb, var(--mockup-accent,var(--accent)) 42%, var(--mockup-line,var(--line)))}}.app-select-trigger:focus-visible,.app-select.is-open .app-select-trigger{border-color:var(--mockup-accent,var(--accent));box-shadow:0 0 0 3px var(--mockup-accent,var(--accent))}@supports (color:color-mix(in lab, red, red)){.app-select-trigger:focus-visible,.app-select.is-open .app-select-trigger{box-shadow:0 0 0 3px color-mix(in srgb, var(--mockup-accent,var(--accent)) 18%, transparent)}}.app-select-trigger:focus-visible,.app-select.is-open .app-select-trigger{outline:0}.app-select-trigger:disabled{cursor:not-allowed;opacity:.48}.app-select-chevron{color:var(--mockup-muted,var(--muted));flex:none;transition:transform .16s}.app-select.is-open .app-select-chevron{color:var(--mockup-accent,var(--accent));transform:rotate(180deg)}.app-select-menu{background:var(--mockup-panel,#fff);border:1px solid var(--mockup-line,var(--line));z-index:20;border-radius:10px;gap:2px;max-height:min(264px,100dvh - 16px);padding:4px;animation:.16s cubic-bezier(.22,1,.36,1) both app-select-in;display:grid;position:fixed;overflow-y:auto;box-shadow:0 6px 8px #1b171224}.app-select-option{color:var(--mockup-ink,var(--ink));cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:14px;min-height:36px;padding:7px 9px;font-size:12px;font-weight:700;display:flex}.app-select-option.is-active{background:var(--mockup-panel-soft,#f5f7fa)}.app-select-option[aria-selected=true]{background:var(--mockup-accent-soft,var(--soft));color:var(--mockup-accent,var(--accent-dark))}.app-select--compact{width:72px}.app-select--compact .app-select-trigger{background:var(--mockup-panel);border-radius:8px;gap:4px;min-height:28px;padding:0 5px 0 8px;font-size:11px;font-weight:700}.app-select--compact .app-select-chevron{width:12px;height:12px}.app-select--mode{width:148px}.app-select--editor{width:210px;max-width:210px}.app-select--editor .app-select-trigger{min-height:34px}@keyframes app-select-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}to{opacity:1;transform:none}}.mockup-placement-canvas{place-items:center;min-height:240px;padding:8px 18px 24px;display:grid}.mockup-placement-canvas>p,.mockup-placement-image>p{color:var(--mockup-muted);text-align:center;max-width:320px;margin:0;font-size:13px;font-weight:600;line-height:1.5}.mockup-placement-image{width:100%;max-width:460px;line-height:0;position:relative}.mockup-placement-image>img{border:1px solid var(--mockup-line);-webkit-user-select:none;user-select:none;border-radius:8px;width:100%;height:auto;display:block}.mockup-placement-image>p{background:var(--mockup-panel)}@supports (color:color-mix(in lab, red, red)){.mockup-placement-image>p{background:color-mix(in srgb, var(--mockup-panel) 86%, transparent)}}.mockup-placement-image>p{place-content:center;padding:24px;position:absolute;inset:0}.mockup-placement-box{background:var(--mockup-accent)}@supports (color:color-mix(in lab, red, red)){.mockup-placement-box{background:color-mix(in srgb, var(--mockup-accent) 10%, transparent)}}.mockup-placement-box{border:2px solid var(--mockup-accent);cursor:move;touch-action:none;transform-origin:50%;border-radius:6px;position:absolute;box-shadow:0 0 0 1px #ffffff8c}.mockup-placement-box>span{background:var(--mockup-accent);color:#fff;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;max-width:min(220px,72vw);padding:3px 8px;font-size:10px;font-weight:800;line-height:1.4;position:absolute;top:-9px;left:-1px;overflow:hidden;transform:translateY(-100%)}.mockup-placement-box>i{border:3px solid var(--mockup-accent);cursor:nwse-resize;background:#fff;border-radius:50%;width:18px;height:18px;position:absolute;bottom:-9px;right:-9px;box-shadow:0 2px 6px #0006}.mockup-placement-box>button{border:3px solid var(--mockup-accent);color:var(--mockup-accent);cursor:grab;background:#fff;border-radius:50%;place-items:center;width:22px;height:22px;padding:0;display:grid;position:absolute;top:-10px;right:-10px;box-shadow:0 2px 6px #0006}.mockup-footer{background:var(--mockup-panel);border-top:1px solid var(--mockup-line);color:var(--mockup-muted);flex-shrink:0;align-items:center;gap:12px;height:32px;padding:0 18px;font-size:11.5px;font-weight:700;display:flex}.mockup-footer span:last-child{margin-left:auto}.mockup-toast{color:var(--mockup-accent);z-index:30;background:#fff;border:1px solid #a9d8cc;border-radius:12px;padding:12px 20px;font-size:13.5px;font-weight:700;animation:.25s both mockup-toast-in;position:fixed;bottom:46px;left:50%;transform:translate(-50%);box-shadow:0 12px 34px #0003}.mockup-toast.is-error{background:var(--mockup-danger-soft);color:var(--mockup-danger);border-color:#f1a9b8}.sr-only{white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes mockup-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes mockup-toast-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@media (width<=900px){.mockup-shell{grid-template-columns:1fr}.mockup-sidebar{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;display:grid;position:static}.mockup-artwork-section,.mockup-library-section{border-bottom:0;border-right:1px solid var(--mockup-line)}}@media (width<=620px){.mockup-header{gap:6px;padding:0 12px}.mockup-brand{gap:0}.mockup-brand-copy{display:none}.mockup-button,.mockup-icon-button,.mockup-user-trigger{flex:0 0 34px;width:34px;height:34px;min-height:34px;padding:0}.mockup-button-primary{width:34px;min-height:34px}.mockup-button>span{display:none}.mockup-clear-icon{display:block}.mockup-sidebar,.mockup-onboarding-actions{grid-template-columns:1fr}.mockup-artwork-section,.mockup-library-section{border-bottom:1px solid var(--mockup-line);border-right:0}.mockup-onboarding{min-height:calc(100dvh - 92px);padding:24px}.mockup-onboarding h1{font-size:25px}.mockup-mode-bar>strong{width:100%;max-width:100%;margin-left:0}.mockup-placement-header,.mockup-placement-header>div{align-items:stretch}.mockup-placement-header .app-select,.mockup-placement-header button{flex:1;max-width:none}.mockup-placement-header .app-select{width:auto}.mockup-footer span:last-child{display:none}.artwork-editor-backdrop{padding:0}.artwork-editor-dialog{border-radius:0;min-height:100dvh;max-height:100dvh}.artwork-editor-toolbar{align-items:stretch}.artwork-editor-history{margin-left:0}.artwork-editor-crop-size,.artwork-editor-brush-size{order:3;width:100%}.artwork-editor-brush-size input{flex:1}.artwork-editor-stage{min-height:220px;padding:12px}.artwork-editor-footer{flex-direction:column;align-items:stretch}.artwork-editor-footer>div{margin-left:0}.artwork-editor-footer button{flex:1}}@media (prefers-reduced-motion:reduce){.mockup-button,.mockup-icon-button,.mockup-user-actions button,.mockup-user-trigger,.app-select-chevron,.app-select-trigger{transition:none}.mockup-user-menu-panel,.app-select-menu{animation:none}}.landing-page{--landing-accent:#0b5d4c;--landing-accent-bright:#19806b;--landing-accent-soft:#e4f2ee;--landing-bg:#eeebe3;--landing-dark:#141210;--landing-ink:#1b1712;--landing-line:#ded8cc;--landing-muted:#756f64;--landing-panel:#fff;--landing-panel-soft:#f7f5ef;background:var(--landing-bg);color:var(--landing-ink);min-height:100vh;font-family:Hanken Grotesk,ui-sans-serif,system-ui,sans-serif;overflow-x:hidden}.landing-page h1,.landing-page h2,.landing-page h3,.landing-page strong,.landing-brand{letter-spacing:0;font-family:Bricolage Grotesque,ui-sans-serif,system-ui,sans-serif}.landing-page h1,.landing-page h2,.landing-page h3,.landing-page p,.landing-page figure{margin:0}.landing-page a{color:inherit;text-decoration:none}.landing-page button{cursor:pointer}.landing-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--landing-line);z-index:40;background:#eeebe3eb;position:sticky;top:0}.landing-nav-shell{align-items:center;gap:14px;max-width:1200px;height:66px;margin:0 auto;padding:0 40px;display:flex}.landing-brand{white-space:nowrap;align-items:center;gap:11px;font-size:1.25rem;font-weight:800;display:inline-flex}.landing-brand-mark{background:var(--landing-accent);color:#fff;border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.25rem;font-weight:800;display:inline-flex}.landing-nav-links{align-items:center;gap:26px;margin-left:30px;font-size:.875rem;font-weight:600;display:flex}.landing-nav-links a,.landing-footer a,.landing-footer button{transition:color .16s}.landing-nav-links a:hover,.landing-footer a:hover,.landing-footer button:hover{color:var(--landing-accent-bright)}.landing-nav-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.landing-button{border:0;border-radius:10px;justify-content:center;align-items:center;min-height:42px;padding:10px 17px;font-size:.875rem;font-weight:800;transition:box-shadow .16s,transform .16s,background .16s;display:inline-flex}.landing-button:hover{transform:translateY(-1px)}.landing-button:focus-visible,.landing-page button:focus-visible,.landing-page a:focus-visible,.landing-login-form input:focus-visible{outline-offset:2px;outline:3px solid #19806b4d}.landing-button-primary{background:var(--landing-accent);color:#fff;box-shadow:0 8px 20px #0b5d4c3d}.landing-button-primary:hover{background:#084c3f;box-shadow:0 12px 28px #0b5d4c47}.landing-button-ghost{border:1px solid var(--landing-line);color:var(--landing-ink);background:0 0}.landing-button-light{background:var(--landing-panel);border:1px solid var(--landing-line);color:var(--landing-ink)}.landing-button-large{border-radius:12px;min-height:52px;padding:14px 24px;font-size:1rem}.landing-menu-button{border:1px solid var(--landing-line);color:var(--landing-ink);background:0 0;border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;padding:0;display:none}.landing-mobile-nav{background:var(--landing-panel);border-top:1px solid var(--landing-line);padding:10px 18px 16px;display:none}.landing-mobile-nav a,.landing-mobile-nav button{color:var(--landing-ink);text-align:left;background:0 0;border:0;padding:12px 4px;font-size:.95rem;font-weight:700}.landing-hero{grid-template-columns:minmax(0,1fr) minmax(420px,1fr);align-items:center;gap:60px;max-width:1200px;margin:0 auto;padding:58px 40px 68px;display:grid}.landing-hero-copy{flex-direction:column;gap:21px;animation:.5s both landing-fade-up;display:flex}.landing-chip{background:var(--landing-accent-soft);color:var(--landing-accent);border-radius:999px;align-self:flex-start;align-items:center;gap:7px;padding:7px 13px;font-size:.78rem;font-weight:800;display:inline-flex}.landing-chip span{font-size:.72rem}.landing-hero h1{max-width:630px;font-size:clamp(2.6rem,5vw,3.75rem);font-weight:800;line-height:1.03}.landing-hero-copy>p{color:var(--landing-muted);max-width:540px;font-size:clamp(1rem,1.4vw,1.18rem);font-weight:500;line-height:1.55}.landing-hero-actions{flex-wrap:wrap;gap:12px;display:flex}.landing-metrics{flex-wrap:wrap;align-items:center;gap:21px;margin-top:4px;display:flex}.landing-metrics>div{gap:1px;display:grid}.landing-metrics strong{font-size:1.35rem;line-height:1.1}.landing-metrics span{color:var(--landing-muted);font-size:.78rem;font-weight:600}.landing-metrics i{background:var(--landing-line);width:1px;height:34px}.landing-preview{animation:.65s both landing-fade-up;position:relative}.landing-preview-window{background:var(--landing-panel);border:1px solid var(--landing-line);border-radius:22px;padding:16px;position:relative;box-shadow:0 30px 70px #18151129}.landing-window-bar{align-items:center;gap:7px;padding:2px 4px 12px;display:flex}.window-dot{border-radius:50%;width:11px;height:11px;display:inline-block}.window-dot.red{background:#e0685c}.window-dot.yellow{background:#e7b84e}.window-dot.green{background:#5bb871}.window-title{color:var(--landing-muted);margin-left:8px;font-size:.75rem;font-weight:700}.landing-preview-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.landing-preview-grid img{aspect-ratio:1;background:var(--landing-panel-soft);border:1px solid var(--landing-line);object-fit:cover;border-radius:14px;width:100%;height:100%;display:block}.landing-preview-status{background:var(--landing-panel-soft);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding:11px 14px;display:flex}.landing-preview-status span{color:var(--landing-muted);font-size:.78rem;font-weight:700}.landing-preview-status strong{background:var(--landing-accent-soft);color:var(--landing-accent);border-radius:999px;padding:5px 11px;font-family:inherit;font-size:.75rem}.landing-band{background:var(--landing-panel);border-bottom:1px solid var(--landing-line);border-top:1px solid var(--landing-line)}.landing-section-shell{max-width:1120px;margin:0 auto;padding:78px 40px}.landing-section-heading{flex-direction:column;gap:11px;max-width:640px;margin-bottom:42px;display:flex}.landing-section-heading.centered{text-align:center;align-items:center;max-width:720px;margin-left:auto;margin-right:auto}.landing-section-heading>span{color:var(--landing-accent);text-transform:uppercase;font-size:.8rem;font-weight:800}.landing-section-heading h2,.landing-cta h2{font-size:clamp(2rem,3.4vw,2.65rem);line-height:1.08}.landing-section-heading p,.landing-cta p{color:var(--landing-muted);font-size:1rem;font-weight:500;line-height:1.55}.landing-steps,.landing-features,.landing-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.landing-steps article,.landing-features article{background:var(--landing-panel-soft);border:1px solid var(--landing-line);border-radius:16px;flex-direction:column;gap:11px;padding:24px;display:flex}.landing-features{gap:16px}.landing-features article{background:var(--landing-panel);border-radius:14px;padding:21px}.landing-step-number,.landing-feature-icon{background:var(--landing-accent);color:#fff;border-radius:11px;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.landing-step-number{font-family:Bricolage Grotesque,sans-serif;font-size:1.2rem;font-weight:800}.landing-feature-icon{background:var(--landing-accent-soft);color:var(--landing-accent)}.landing-steps h3,.landing-features h3,.landing-plans h3{font-size:1.15rem}.landing-steps p,.landing-features p{color:var(--landing-muted);font-size:.9rem;font-weight:500;line-height:1.5}.landing-gallery-band{background:var(--landing-dark);color:#f3eee4}.landing-section-heading.dark h2{color:#fff}.landing-section-heading.dark>span{color:#66c0a7}.landing-section-heading.dark p{color:#b9b1a2}.landing-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.landing-gallery figure{gap:10px;display:grid}.landing-gallery img{aspect-ratio:4/5;object-fit:cover;background:#211d18;border:1px solid #ffffff1f;border-radius:16px;width:100%;height:100%;overflow:hidden}.landing-gallery figcaption{color:#cfc7b8;text-align:center;font-size:.82rem;font-weight:700}.landing-pricing-band{color:#f7f8f4;background:#0d0f0d}.landing-pricing-shell{max-width:1500px;padding-top:90px;padding-bottom:90px}.landing-pricing-shell .landing-section-heading{margin-bottom:28px}.landing-pricing-shell .landing-section-heading>span{color:#76ddcd}.landing-pricing-shell .landing-section-heading p{color:#b8bdb6}.landing-pricing-controls{justify-items:center;gap:22px;margin:0 auto 58px;display:grid}.landing-interval-selector{background:#121512;border:1px solid #292e29;border-radius:16px;gap:8px;padding:10px;display:flex}.landing-interval-selector button{color:#afb4ac;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:12px;min-height:68px;padding:0 34px;font-size:1.08rem;font-weight:800;transition:background-color .18s,color .18s}.landing-interval-selector button:hover,.landing-interval-selector button:focus-visible{color:#f7f8f4}.landing-interval-selector button:focus-visible,.landing-plans article>button:focus-visible{outline-offset:3px;outline:3px solid #a0eee3}.landing-interval-selector button.is-selected{color:#061311;background:#18aa96}.landing-pricing-discounts{color:#c4c8c1;text-align:center;margin:0;font-size:1rem;font-weight:700}.landing-pricing-discounts strong{color:#76ddcd}.landing-pricing-discounts span{color:#777e76;margin:0 4px}.landing-plans{align-items:stretch;gap:40px}.landing-plans article{background:#141714;border:1px solid #2a302a;border-radius:16px;flex-direction:column;min-height:590px;padding:56px;display:flex;position:relative}.landing-plans article.featured{background:#11231e;border:2px solid #18aa96;padding:55px}.landing-plan-badge{color:#071513;white-space:nowrap;background:#18aa96;border-radius:999px;padding:9px 21px;font-size:.78rem;font-weight:900;position:absolute;top:-20px;left:48px}.landing-plans h3{color:#f8f9f6;font-size:2rem;line-height:1.08}.landing-plan-limit{color:#aeb4ac;margin:12px 0 0;font-size:1rem;font-weight:700}.landing-price{align-items:baseline;gap:8px;margin-top:52px;display:flex}.landing-price strong{color:#fbfcfa;letter-spacing:-.035em;font-size:3.8rem;line-height:1}.landing-price span{color:#aab0a8;font-size:1rem;font-weight:700}.landing-price span:first-child{font-size:1.1rem;font-weight:800}.landing-plan-cycle{color:#929990;margin:15px 0 0;font-size:.95rem;font-weight:600;line-height:1.4}.landing-plans article>button{color:#f7f8f4;cursor:pointer;font:inherit;background:0 0;border:1px solid #3a423a;border-radius:12px;min-height:56px;margin:34px 0 38px;padding:13px 20px;font-size:1rem;font-weight:800;transition:background-color .18s,border-color .18s,color .18s}.landing-plans article>button:hover{background:#1c211c;border-color:#626b61}.landing-plans .featured>button{color:#061311;background:#18aa96;border-color:#18aa96}.landing-plans .featured>button:hover{background:#4bc6b5;border-color:#4bc6b5}.landing-plans ul{gap:18px;margin:0;padding:0;list-style:none;display:grid}.landing-plans li{color:#d0d4ce;align-items:flex-start;gap:12px;font-size:.96rem;font-weight:650;line-height:1.35;display:flex}.landing-plans li>span{color:#22b7a1;flex:none;margin-top:-1px;display:inline-flex}.landing-cta-shell{background:var(--landing-accent);color:#fff;padding:62px 40px}.landing-cta{text-align:center;flex-direction:column;align-items:center;gap:17px;max-width:760px;margin:0 auto;display:flex}.landing-cta h2{color:#fff}.landing-cta p{color:#ffffffdb;max-width:540px}.landing-cta button{color:var(--landing-accent);background:#fff;border:0;border-radius:12px;min-height:52px;padding:14px 28px;font-size:1rem;font-weight:800}.landing-footer{background:var(--landing-dark);color:#c8c0b2}.landing-footer>div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:22px;max-width:1120px;margin:0 auto;padding:42px 40px;display:flex}.footer-brand{font-size:1.12rem;color:#fff!important}.footer-brand .landing-brand-mark{width:32px;height:32px}.landing-footer nav{flex-wrap:wrap;gap:24px;display:flex}.landing-footer nav a,.landing-footer nav button{color:#c8c0b2;background:0 0;border:0;padding:0;font-size:.875rem;font-weight:600}.landing-footer>div>span{color:#8c8578;font-size:.8rem;font-weight:600}.landing-dialog-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60;background:#14120e94;justify-content:center;align-items:center;padding:22px;animation:.18s both landing-fade-in;display:flex;position:fixed;inset:0}.landing-dialog{background:var(--landing-panel);border-radius:20px;width:min(430px,100%);max-height:calc(100vh - 44px);padding:27px;animation:.2s both landing-pop;overflow:auto;box-shadow:0 40px 100px #0006}.landing-dialog-header{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.landing-dialog-header>button{border:1px solid var(--landing-line);color:var(--landing-muted);background:0 0;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}.landing-dialog-tabs{background:var(--landing-panel-soft);border-radius:10px;margin-bottom:20px;padding:4px;display:flex}.landing-dialog-tabs button{color:var(--landing-muted);background:0 0;border:0;border-radius:7px;flex:1;padding:10px;font-size:.84rem;font-weight:800}.landing-dialog-tabs button[aria-selected=true]{color:var(--landing-ink);background:#fff;box-shadow:0 1px 3px #0000001f}.landing-dialog-tabs button:disabled{cursor:not-allowed;opacity:1}.landing-login-form{flex-direction:column;gap:13px;display:flex}.landing-login-form h2{margin-bottom:2px;font-size:1.35rem}.landing-login-form label{flex-direction:column;gap:6px;display:flex}.landing-login-form label>span{font-size:.82rem;font-weight:700}.landing-login-form input{border:1px solid var(--landing-line);color:var(--landing-ink);background:#fff;border-radius:10px;width:100%;min-height:46px;padding:11px 13px}.landing-login-form>button{background:var(--landing-accent);color:#fff;border:0;border-radius:10px;min-height:48px;padding:12px;font-size:.95rem;font-weight:800;box-shadow:0 10px 24px #0b5d4c42}.landing-login-form>button:disabled{cursor:wait;opacity:.6}.landing-login-form>p{color:var(--landing-muted);text-align:center;font-size:.78rem;font-weight:500;line-height:1.5}@keyframes landing-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-fade-in{0%{opacity:0}to{opacity:1}}@keyframes landing-pop{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@media (width<=1020px){.landing-nav-shell{padding:0 24px}.landing-nav-links{display:none}.landing-menu-button{display:inline-flex}.landing-mobile-nav{display:grid}.landing-hero{grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:36px;padding-left:24px;padding-right:24px}.landing-section-shell{padding-left:24px;padding-right:24px}.landing-features,.landing-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.landing-nav-subscribe{display:none}.landing-hero{grid-template-columns:1fr;padding-top:42px;padding-bottom:48px}.landing-hero-copy{align-items:flex-start}.landing-hero h1{font-size:2.65rem}.landing-preview{width:100%;max-width:560px}.landing-steps,.landing-plans{grid-template-columns:1fr}.landing-plans{gap:28px}.landing-footer>div{flex-direction:column;align-items:flex-start;padding-left:24px;padding-right:24px}}@media (width<=520px){.landing-nav-shell{padding:0 16px}.landing-brand{gap:8px;font-size:1.08rem}.landing-brand-mark{border-radius:8px;width:32px;height:32px}.landing-button-ghost{border:0;padding-left:8px;padding-right:8px}.landing-hero{padding:30px 18px 42px}.landing-chip{font-size:.7rem}.landing-hero h1{font-size:2.3rem}.landing-hero-actions,.landing-hero-actions .landing-button{width:100%}.landing-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;display:grid}.landing-metrics i{display:none}.landing-metrics strong{font-size:1rem}.landing-metrics span{font-size:.67rem}.landing-preview{display:none}.landing-section-shell{padding:58px 18px}.landing-section-heading{margin-bottom:32px}.landing-section-heading h2,.landing-cta h2{font-size:1.9rem}.landing-pricing-shell{padding-top:64px;padding-bottom:64px}.landing-pricing-controls{gap:16px;width:100%;margin-bottom:44px}.landing-interval-selector{gap:4px;width:100%;padding:6px}.landing-interval-selector button{flex:1;min-height:54px;padding:0 8px;font-size:.88rem}.landing-pricing-discounts{font-size:.88rem}.landing-plans article,.landing-plans article.featured{min-height:0;padding:42px 28px}.landing-plan-badge{left:24px}.landing-plans h3{font-size:1.72rem}.landing-price{margin-top:42px}.landing-price strong{font-size:3.15rem}.landing-features,.landing-gallery{grid-template-columns:1fr}.landing-gallery figure:nth-child(n+3){display:none}.landing-gallery img{aspect-ratio:4/3}.landing-cta-shell{padding:52px 18px}.landing-dialog-backdrop{align-items:flex-end;padding:0}.landing-dialog{border-radius:18px 18px 0 0;width:100%;max-height:92vh;padding:22px 18px 28px}}@media (prefers-reduced-motion:reduce){.landing-page *,.landing-page :before,.landing-page :after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}}.billing-page{gap:20px;width:min(1080px,100%);margin:0 auto;padding:48px 20px 56px;font-family:Hanken Grotesk,ui-sans-serif,system-ui,sans-serif;display:grid}.billing-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:24px;padding-bottom:22px;display:flex}.billing-header h1{letter-spacing:-.035em;text-wrap:balance;margin:0;font-family:Bricolage Grotesque,ui-sans-serif,system-ui,sans-serif;font-size:3rem;line-height:1.04}.billing-header p:not(.eyebrow),.billing-user,.billing-current small{color:var(--muted);margin:8px 0 0;font-weight:700}.billing-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.billing-actions .button{min-height:40px}.billing-page .button,.billing-page .text-button{transition:background .16s,border-color .16s,color .16s,opacity .16s}.billing-page .button.primary:hover:not(:disabled){background:var(--accent-dark)}.billing-page .button.ghost:hover:not(:disabled){background:#eff8f6;border-color:#9cd8ce}.billing-page button:focus-visible{outline-offset:2px;outline:3px solid #0f766e4d}.billing-notice,.billing-success{border:1px solid var(--line);border-radius:8px;align-items:flex-start;gap:10px;padding:14px 16px;font-weight:800;display:flex}.billing-notice{color:#6d5418;background:#fff8df;border-color:#f5d77a}.billing-success{background:var(--soft);color:var(--accent-dark);border-color:#9cd8ce}.billing-notice>div,.billing-success>div{gap:2px;display:grid}.billing-notice span,.billing-success span{font-size:.88rem;font-weight:700}.billing-notice-mark,.billing-status-dot{background:currentColor;border-radius:50%;flex:none}.billing-notice-mark{width:9px;height:9px;margin-top:.34rem}.billing-notice-mark.is-pending{animation:1.8s ease-out infinite billing-pulse}.billing-current{border:1px solid var(--line);background:#fbfcfd;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;min-height:76px;padding:14px 16px;display:flex}.billing-current-state{align-items:center;gap:11px;min-width:0;display:flex}.billing-current-state>div{gap:2px;display:grid}.billing-current-label{color:var(--muted);text-transform:uppercase;font-size:.75rem;font-weight:900}.billing-current strong{color:var(--accent-dark);font-size:1rem}.billing-current small{margin:0;font-size:.78rem}.billing-status-dot{color:#87919d;width:10px;height:10px}.billing-status-dot.is-active{color:var(--green)}.billing-status-dot.is-pending{color:#b17d19}.billing-refresh{color:var(--accent-dark);white-space:nowrap;padding:8px 10px;font-size:.82rem}.billing-refresh:hover:not(:disabled){background:#e8f6f3}.billing-intervals{justify-items:center;gap:10px;display:grid}.billing-intervals p{color:var(--accent-dark);text-align:center;margin:0;font-size:.86rem;font-weight:800}.billing-interval-selector{border:1px solid var(--line);background:#f4f8f7;border-radius:10px;gap:4px;padding:4px;display:flex}.billing-interval-selector button{color:var(--muted);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:7px;min-height:38px;padding:0 14px;font-size:.85rem;font-weight:900}.billing-interval-selector button:hover{color:var(--accent-dark)}.billing-interval-selector button.is-selected{background:var(--accent);color:#fff}.billing-plans{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;display:grid}.billing-plan{background:var(--panel);border:1px solid var(--line);border-radius:10px;grid-template-rows:auto auto auto minmax(44px,1fr) auto;gap:18px;min-height:330px;padding:24px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.billing-plan:hover{border-color:#a8cbc5;transform:translateY(-2px);box-shadow:0 4px 8px #0f766e14}.billing-plan.featured{border:2px solid var(--accent);background:#fcfffe;padding:23px}.billing-plan-heading{gap:8px;display:grid}.billing-plan-heading>span{color:var(--accent-dark);text-transform:uppercase;font-size:.76rem;font-weight:900}.billing-plan h2,.billing-plan p{margin:0}.billing-plan h2{font-family:Bricolage Grotesque,ui-sans-serif,system-ui,sans-serif;font-size:1.38rem;line-height:1.1}.billing-price{letter-spacing:-.045em;font-size:2.55rem;line-height:1}.billing-price small{color:var(--muted);letter-spacing:0;margin-left:6px;font-size:.9rem}.billing-plan-cycle{color:var(--muted);font-size:.82rem;font-weight:800;line-height:1.35}.billing-plan-limit{color:var(--muted);align-self:start;font-size:1rem;font-weight:700;line-height:1.35}.billing-plan .button{grid-row:5;min-height:48px}@keyframes billing-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.48;transform:scale(.72)}}@media (width<=780px){.billing-page{padding:28px 16px 40px}.billing-header{flex-direction:column;align-items:flex-start}.billing-header h1{font-size:2.35rem}.billing-actions{justify-content:flex-start}.billing-current{flex-direction:column;align-items:flex-start}.billing-refresh{align-self:flex-start;margin-left:-10px}.billing-plans{grid-template-columns:1fr}.billing-plan{min-height:0}}@media (prefers-reduced-motion:reduce){.billing-page *,.billing-page :before,.billing-page :after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
