/*! tailwindcss v4.2.1 | 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{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}::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;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::-webkit-file-upload-button{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%;-moz-tab-size:4;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}::-webkit-file-upload-button{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:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option{padding-inline-start:20px}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::-webkit-file-upload-button{margin-inline-end:4px}::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-start:0;padding-block-end:0}::-webkit-datetime-edit-year-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-month-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-day-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-hour-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-minute-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-second-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-millisecond-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-meridiem-field{padding-block-start:0;padding-block-end:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{-webkit-appearance:button;appearance:button}input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance: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}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.start:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){left:var(--spacing)}.start:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.start:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){right:var(--spacing)}.hidden{display:none}.inline{display:inline}.table{display:table}.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{--paper:#f6f2e9;--paper-2:#fffdf8;--muted:#ebe5d9;--ink:#17223a;--ink-2:#667084;--line:#d8d0c3;--coral:#f06449;--cobalt:#3e63dd;--sage:#b6c9b0;--shadow:0 18px 50px #17223a21}*{box-sizing:border-box}html,body{min-height:100%}body{color:var(--ink);background:var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible{outline:3px solid var(--cobalt)}input:focus-visible{outline:3px solid var(--cobalt)}select:focus-visible{outline:3px solid var(--cobalt)}textarea:focus-visible{outline:3px solid var(--cobalt)}[tabindex]:focus-visible{outline:3px solid var(--cobalt)}@supports (color:color-mix(in lab, red, red)){button:focus-visible{outline:3px solid color-mix(in srgb, var(--cobalt) 35%, transparent)}input:focus-visible{outline:3px solid color-mix(in srgb, var(--cobalt) 35%, transparent)}select:focus-visible{outline:3px solid color-mix(in srgb, var(--cobalt) 35%, transparent)}textarea:focus-visible{outline:3px solid color-mix(in srgb, var(--cobalt) 35%, transparent)}[tabindex]:focus-visible{outline:3px solid color-mix(in srgb, var(--cobalt) 35%, transparent)}}button:focus-visible{outline-offset:2px}input:focus-visible{outline-offset:2px}select:focus-visible{outline-offset:2px}textarea:focus-visible{outline-offset:2px}[tabindex]:focus-visible{outline-offset:2px}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.brand{align-items:center;gap:11px;display:inline-flex}.brand-mark{border:1.5px solid var(--ink);border-radius:50%;grid-template-columns:repeat(3,5px);gap:3px;width:26px;height:26px;padding:4px;display:grid;transform:rotate(-12deg)}.brand-mark span{background:var(--coral);border-radius:3px;align-self:end}.brand-mark span:first-child{height:7px}.brand-mark span:nth-child(2){height:14px}.brand-mark span:nth-child(3){height:10px}.brand-name{letter-spacing:.18em;font-size:14px;font-weight:900}.button{cursor:pointer;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-weight:800;transition:all .16s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 22px #17223a20}.button:disabled{opacity:.45;cursor:not-allowed}.button-dark{color:#fff;background:var(--ink)}.button-coral{color:#fff;background:var(--coral)}.button-wide{width:100%}.button-small{padding:9px 13px;font-size:12px}.arrow-forward{transform:rotate(180deg)}.home-shell{background:radial-gradient(circle at 11% 12%, #b6c9b04f 0 9%, transparent 9.2%), linear-gradient(#17223a0b 1px, transparent 1px), linear-gradient(90deg, #17223a0b 1px, transparent 1px), var(--paper);background-size:auto,38px 38px,38px 38px,auto;min-height:100vh;position:relative;overflow:hidden}.home-shell:before{content:"";background:var(--coral);border-radius:50%;width:360px;height:360px;position:absolute;top:-250px;right:-220px}.home-nav{z-index:2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f6f2e9c9;border-bottom:1px solid #17223a1c;justify-content:space-between;align-items:center;height:76px;padding:0 5vw;display:flex;position:relative}.privacy-pill{color:#42543e;background:#dfe9dc;border:1px solid #a9bca6;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:12px;font-weight:800;display:inline-flex}.hero{z-index:1;text-align:center;max-width:860px;margin:0 auto;padding:78px 28px 50px;position:relative}.eyebrow{color:#cf4935;letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:7px;font-size:11px;font-weight:900;display:inline-flex}.hero h1,.mapping-panel h1{letter-spacing:-.055em;margin:18px 0;font-family:Georgia,Times New Roman,serif;font-weight:500;line-height:.93}.hero h1{font-size:clamp(58px,7.6vw,102px)}.hero h1 em{color:var(--coral);font-weight:400}.hero>p{max-width:590px;color:var(--ink-2);margin:0 auto 32px;font-size:17px;line-height:1.65}.drop-zone{text-align:left;min-height:214px;box-shadow:var(--shadow);background:#fffdf8ee;border:1.5px dashed #aaa296;border-radius:22px;grid-template-rows:1fr auto;grid-template-columns:58px 1fr auto;align-items:center;gap:16px;padding:34px;transition:all .18s;display:grid}.drop-zone.is-dragging{border-color:var(--coral);background:#fff6f1;transform:scale(1.01)}.drop-icon{width:56px;height:56px;color:var(--coral);background:var(--muted);border-radius:16px;place-items:center;display:grid}.drop-zone strong,.drop-zone span{display:block}.drop-zone strong{margin-bottom:6px;font-size:18px}.drop-zone span{color:var(--ink-2);font-size:13px}.drop-zone small{border-top:1px solid var(--line);color:#7b7b78;text-align:center;grid-column:1/-1;padding-top:14px}.notice{border-radius:9px;justify-content:center;align-items:center;gap:8px;margin:14px auto 0;padding:10px 14px;font-size:12px;font-weight:800;display:flex}.notice-error{color:#8e2f24;background:#ffe5de}.notice-info,.notice-success{color:#315537;background:#e6efe3}.sample-link{cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;margin:24px auto 0;padding:0;font-weight:800;display:flex}.sample-link:hover{color:#cf4935}.sample-cards{width:38px;height:26px;display:inline-block;position:relative}.sample-cards i{border:1px solid var(--ink);background:var(--paper-2);border-radius:5px;width:20px;height:25px;position:absolute;bottom:0}.sample-cards i:first-child{left:0;transform:rotate(-8deg)}.sample-cards i:nth-child(2){left:9px}.sample-cards i:nth-child(3){background:var(--coral);left:18px;transform:rotate(8deg)}.recents-section{z-index:1;max-width:1180px;margin:0 auto;padding:24px 28px 78px;position:relative}.section-heading{justify-content:space-between;align-items:end;margin-bottom:19px;display:flex}.section-kicker{color:var(--ink-2);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:900}.section-heading h2{margin:5px 0 0;font:500 28px Georgia,serif}.text-button{cursor:pointer;background:0 0;border:0;padding:5px;font-size:12px;font-weight:800}.danger-text{color:#96392d}.recent-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.recent-card{border:1px solid var(--line);cursor:pointer;background:#fffdf8e8;border-radius:16px;grid-template-columns:84px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px;transition:all .16s;display:grid}.recent-card:hover{transform:translateY(-2px);box-shadow:0 10px 26px #17223a17}.color-navy{--card-accent:#17223a}.color-cobalt{--card-accent:#3e63dd}.color-sage{--card-accent:#738a70}.color-coral{--card-accent:#e85f47}.recent-visual{color:#fff;background:var(--card-accent);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;height:64px;display:flex}.recent-visual span{text-transform:uppercase;margin-top:4px;font-size:9px;font-weight:800}.recent-copy{min-width:0}.recent-copy strong,.recent-copy span{display:block}.recent-copy strong{text-overflow:ellipsis;white-space:nowrap;margin-bottom:5px;overflow:hidden}.recent-copy span{color:var(--ink-2);font-size:10px}.recent-actions{gap:3px;display:flex}.recent-actions button{cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:28px;height:28px;display:grid}.recent-actions button:hover{background:var(--muted)}.empty-recents{color:var(--ink-2);border:1px dashed var(--line);border-radius:14px;justify-content:center;align-items:center;gap:11px;padding:32px;display:flex}.home-footer{z-index:1;color:var(--ink-2);letter-spacing:.06em;text-transform:uppercase;border-top:1px solid #17223a19;justify-content:space-between;padding:21px 5vw;font-size:10px;font-weight:800;display:flex;position:relative}.mapping-shell{background:var(--paper);min-height:100vh}.mapping-top{background:var(--paper-2);border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;height:74px;padding:0 34px;display:grid}.mapping-top>:last-child{justify-self:end}.step-counter{align-items:center;display:flex}.step-dot{border:1px solid var(--line);width:25px;height:25px;color:var(--ink-2);border-radius:50%;place-items:center;font-size:10px;font-weight:900;display:grid}.step-dot.done{color:#fff;background:#71876d;border-color:#71876d}.step-dot.active{color:#fff;background:var(--coral);border-color:var(--coral)}.step-line{background:var(--line);width:32px;height:1px}.step-label{margin-left:9px;font-size:12px;font-weight:800}.icon-text-button{cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-size:12px;font-weight:800;display:inline-flex}.mapping-layout{grid-template-columns:minmax(360px,440px) minmax(0,1fr);min-height:calc(100vh - 74px);display:grid}.mapping-panel{background:var(--paper-2);border-right:1px solid var(--line);padding:46px 44px 56px;overflow-y:auto}.mapping-panel h1{margin-top:15px;font-size:48px}.mapping-panel>p{color:var(--ink-2);margin:0 0 28px;line-height:1.6}.field{margin:17px 0;display:block}.field>span,.orientation-field legend,.attribute-picker>div:first-child>span,.image-control>span{letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:900;display:block}.field input,.field select,.field textarea{width:100%;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:9px;padding:11px 12px}.field textarea{resize:vertical;min-height:92px;line-height:1.45}.orientation-field{border:0;margin:24px 0;padding:0}.orientation-field button{text-align:left;border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:11px;grid-template-rows:auto auto;grid-template-columns:44px 1fr auto;gap:3px 10px;width:100%;margin:9px 0;padding:13px;display:grid}.orientation-field button.selected{border-color:var(--coral);box-shadow:inset 0 0 0 1px var(--coral)}.orientation-field button strong{font-size:13px}.orientation-field button small{color:var(--ink-2);grid-column:2/4}.orientation-icon{background-size:9px 9px;border:1px solid #c8c1b5;border-radius:5px;grid-row:1/3;width:39px;height:35px}.orientation-icon.columns{background:linear-gradient(90deg,#0000 49%,#d6cec2 50% 54%,#0000 55%),linear-gradient(#f2b5a8 45%,#0000 46%)}.orientation-icon.rows{background:linear-gradient(90deg,#f2b5a8 43%,#0000 44%),linear-gradient(#0000 49%,#d6cec2 50% 54%,#0000 55%)}.attribute-picker{margin-bottom:23px}.attribute-picker>div:first-child{justify-content:space-between;align-items:baseline;display:flex}.attribute-picker small{color:var(--ink-2);font-size:10px}.attribute-list{border:1px solid var(--line);background:#fff;border-radius:10px;max-height:180px;overflow-y:auto}.attribute-list label{cursor:pointer;border-bottom:1px solid #eee8dd;align-items:center;gap:9px;padding:10px 12px;font-size:12px;display:flex}.attribute-list label:last-child{border:0}.attribute-list input{accent-color:var(--coral)}.sheet-preview{background-color:#ebe7df;background-image:linear-gradient(#17223a09 1px,#0000 1px),linear-gradient(90deg,#17223a09 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:30px 30px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-width:0;padding:44px}.preview-heading{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.preview-heading span,.preview-heading strong{display:block}.preview-heading span{font-size:18px;font-weight:800}.preview-heading strong{color:var(--ink-2);font:500 10px var(--font-geist-mono),monospace;margin-top:3px}.confidence{color:#385a3b;background:#e4eee1;border:1px solid #bdcfb9;border-radius:999px;align-items:center;gap:7px;padding:7px 10px;font-size:10px;font-weight:800;display:flex}.confidence i{background:#578758;border-radius:50%;width:7px;height:7px}.preview-table-wrap{max-height:calc(100vh - 210px);box-shadow:var(--shadow);background:#fff;border:1px solid #cfc7ba;border-radius:14px;overflow:auto}.preview-table-wrap table{border-collapse:separate;border-spacing:0;min-width:100%;font-size:12px}.preview-table-wrap th{text-align:center;color:#8b877f;background:#f1ede5;border-bottom:1px solid #ddd6cb;border-right:1px solid #ddd6cb;width:38px;min-width:38px;padding:9px}.preview-table-wrap td{text-overflow:ellipsis;white-space:nowrap;border-bottom:1px solid #eee9e0;border-right:1px solid #eee9e0;min-width:130px;max-width:220px;padding:11px 12px;overflow:hidden}.preview-table-wrap td.entity-cell{color:#fff;background:var(--ink);font-weight:800}.preview-table-wrap td.attribute-cell{color:#8a3328;background:#ffe4dc;font-weight:800}.preview-legend{color:var(--ink-2);gap:17px;margin-top:14px;font-size:10px;font-weight:800;display:flex}.preview-legend span{align-items:center;gap:6px;display:flex}.preview-legend i{border-radius:2px;width:9px;height:9px}.legend-entity{background:var(--ink)}.legend-attribute{background:#f2a18f}.legend-value{background:#fff;border:1px solid #bbb4aa}.workspace{background:#e8e3da;flex-direction:column;height:100vh;display:flex;overflow:hidden}.workspace-topbar{z-index:20;background:var(--paper-2);border-bottom:1px solid var(--line);flex:0 0 68px;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;height:68px;padding:0 18px;display:grid}.logo-button{cursor:pointer;background:0 0;border:0;width:-moz-fit-content;width:fit-content;padding:0}.project-title{border-left:1px solid var(--line);padding-left:17px;position:absolute;top:13px;left:166px}.project-title input{background:0 0;border:0;width:210px;padding:0;font-size:13px;font-weight:800;display:block}.project-title span{color:#647b61;text-transform:uppercase;margin-top:3px;font-size:9px;font-weight:800;display:block}.topbar-center{background:var(--muted);border-radius:10px;align-items:center;gap:4px;padding:4px;display:flex}.topbar-center select{background:0 0;border:0;min-width:190px;padding:7px 28px 7px 9px;font-size:12px;font-weight:800}.topbar-actions{justify-self:end;align-items:center;gap:6px;display:flex}.icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;place-items:center;width:34px;height:34px;padding:0;display:grid}.icon-button:hover:not(:disabled){background:var(--muted)}.icon-button:disabled{opacity:.35}.export-button{border-radius:9px;padding:10px 14px;font-size:12px}.workspace-body{flex:1;min-height:0;display:flex;position:relative}.left-rail{z-index:12;background:var(--paper-2);border-right:1px solid var(--line);flex-direction:column;flex:0 0 54px;align-items:center;width:54px;padding:10px 7px;display:flex}.rail-group{border-bottom:1px solid var(--line);flex-direction:column;gap:5px;padding:4px 0 9px;display:flex}.rail-group button{cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.rail-group button:hover{background:var(--muted)}.rail-group button.active{color:#fff;background:var(--ink)}.rail-bottom{border-top:1px solid var(--line);border-bottom:0;margin-top:auto}.canvas-column{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.canvas-toolbar{z-index:8;border-bottom:1px solid var(--line);background:#fffdf8ec;flex:0 0 50px;grid-template-columns:minmax(200px,320px) 1fr auto;align-items:center;gap:18px;height:50px;padding:0 15px;display:grid}.search-box{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.search-box input{background:0 0;border:0;outline:0;flex:1;min-width:0;padding:8px 0;font-size:11px}.search-box button{cursor:pointer;background:0 0;border:0;place-items:center;padding:2px;display:grid}.canvas-status{color:var(--ink-2);text-transform:uppercase;justify-content:center;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.editing-badge{color:#8c3b2d;background:#ffe2da;border-radius:5px;align-items:center;gap:4px;margin-left:8px;padding:5px 7px;display:inline-flex}.zoom-readout{min-width:48px;color:var(--ink-2);font:10px var(--font-geist-mono),monospace;text-align:right}.focus-banner{z-index:10;color:#fff;background:var(--ink);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;min-width:360px;padding:10px 12px 10px 15px;display:flex;position:absolute;top:64px;left:50%;transform:translate(-50%);box-shadow:0 9px 25px #17223a30}.focus-banner>div{align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.focus-banner button{color:#fff;cursor:pointer;background:0 0;border:1px solid #ffffff4c;border-radius:6px;padding:5px 8px;font-size:10px;font-weight:800}.focus-banner button span{color:#c4c9d5;margin-left:5px}.canvas-viewport{cursor:grab;touch-action:none;background-color:#e8e3da;background-image:radial-gradient(circle,#17223a2b 1px,#0000 1.5px),none;background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:24px 24px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;flex:1;min-height:0;position:relative;overflow:hidden}.canvas-viewport:active{cursor:grabbing}.canvas-viewport.layout-editing{cursor:default}.canvas-world{transform-origin:0 0;pointer-events:none;width:4200px;height:2600px;transition:transform 80ms linear;position:absolute;top:0;bottom:0;left:0;right:0}.entity-card{background:var(--paper-2);transform-origin:0 0;pointer-events:auto;border:1px solid #ccc5ba;border-radius:15px;flex-direction:column;min-width:220px;min-height:220px;transition:transform .28s cubic-bezier(.22,.72,0,1),opacity .28s;display:flex;position:absolute;top:0;left:0;overflow:hidden;box-shadow:0 12px 34px #17223a1f}.entity-card.can-move{cursor:move;border-color:#7886a5;box-shadow:0 16px 42px #17223a2b,0 0 0 2px #7886a526}.entity-card.focus-hidden{opacity:.08;pointer-events:none}.entity-header{text-align:left;color:#fff;background:var(--card-accent);cursor:pointer;border:0;grid-template-columns:47px 1fr auto;align-items:center;gap:12px;width:100%;min-height:82px;padding:14px;display:grid}.entity-image{width:44px;height:44px;color:var(--card-accent);background:#fff;border-radius:11px;place-items:center;font:900 16px Georgia,serif;display:grid;overflow:hidden}.entity-image img{object-fit:contain;width:100%;height:100%}.entity-header small,.entity-header strong{display:block}.entity-header small{color:#ffffffa6;letter-spacing:.13em;text-transform:uppercase;margin-bottom:4px;font-size:8px;font-weight:900}.entity-header strong{line-height:1.25}.entity-values{flex:1;min-height:0;padding:5px 0 9px;overflow:auto}.value-row{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ece6dc;flex:none;justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:55px;padding:9px 14px;transition:opacity .28s,background .16s,color .16s;display:flex}.value-row.has-bullets{align-items:flex-start;padding-top:12px;padding-bottom:12px}.value-row:last-child{border-bottom:0}.value-row:hover{background:#f4efe6}.value-row.is-focused{color:#a73524;box-shadow:inset 4px 0 var(--coral);background:#fff0eb}.value-row.is-faded{opacity:.15}.entity-card.attribute-focus-card{max-height:none;height:auto!important}.attribute-focus-card .entity-values{overflow:visible}.attribute-focus-card .value-row.is-focused{height:auto;min-height:0;max-height:none;padding:14px;display:block;overflow:visible}.attribute-focus-card .value-row.is-focused .value-label{color:#a73524;letter-spacing:.06em;text-transform:uppercase;max-width:none;margin-bottom:9px;padding:0;font-size:9px;display:block}.attribute-focus-card .value-row.is-focused .value-content{justify-content:flex-start;width:100%;overflow:visible}.attribute-focus-card .value-row.is-focused .plain-value{text-align:left}.attribute-focus-card .value-row.is-faded{align-items:center;height:36px;min-height:36px;max-height:36px;padding-top:6px;padding-bottom:6px;overflow:hidden}.attribute-focus-card .value-row.is-faded .value-label,.attribute-focus-card .value-row.is-faded .plain-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attribute-focus-card .value-row.is-faded .value-content{align-items:center;max-height:18px;overflow:hidden}.attribute-focus-card .value-row.is-faded .bullet-value{text-overflow:ellipsis;white-space:nowrap;padding:0;list-style:none;display:block;overflow:hidden}.attribute-focus-card .value-row.is-faded .bullet-value li{white-space:nowrap;margin:0;display:none}.attribute-focus-card .value-row.is-faded .bullet-value li:first-child{text-overflow:ellipsis;display:block;overflow:hidden}.value-label{max-width:42%;color:var(--ink-2);padding-top:2px;font-size:10px;font-weight:700}.value-content{flex:1;justify-content:flex-end;align-items:flex-start;gap:7px;min-width:0;display:flex}.plain-value{min-width:0;color:inherit;overflow-wrap:anywhere;text-align:right;white-space:normal;flex:1;font-size:12px;line-height:1.45}.bullet-value{min-width:0;color:inherit;text-align:left;flex:1;margin:0;padding-left:17px;font-size:11px;font-weight:700;line-height:1.45}.bullet-value li{overflow-wrap:anywhere;margin:0 0 5px}.bullet-value li:last-child{margin-bottom:0}.value-content img{object-fit:contain;border-radius:6px;flex:0 0 29px;width:29px;height:29px}.formula-mark{color:#4b5d8a;background:#e7ebf6;border-radius:4px;padding:2px 4px;font:italic 8px Georgia,serif}.resize-handle{z-index:6;opacity:.82;touch-action:none;border:0;border-radius:0;padding:0;display:block;position:absolute}.resize-width{cursor:ew-resize;background:linear-gradient(90deg,#0000 3px,#627397 3px 6px,#0000 6px);width:12px;top:88px;bottom:18px;right:0}.resize-height{cursor:ns-resize;background:linear-gradient(#0000 3px,#627397 3px 6px,#0000 6px);height:12px;bottom:0;left:18px;right:18px}.resize-both{cursor:nwse-resize;background:repeating-linear-gradient(135deg,#0000 0 4px,#627397 4px 6px);width:20px;height:20px;bottom:0;right:0}.resize-handle:hover{opacity:1;background-color:#dce2ef}.resize-handle:focus-visible{opacity:1;background-color:#dce2ef}.canvas-help{color:var(--ink-2);border:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#fffdf8df;border-radius:8px;align-items:center;gap:7px;padding:8px 10px;font-size:9px;font-weight:800;display:flex;position:absolute;bottom:14px;left:16px}.minimap{border:1px solid var(--line);pointer-events:none;background:#fffdf8dc;border-radius:8px;width:108px;height:72px;position:absolute;bottom:14px;right:14px}.minimap i{background:var(--coral);border-radius:2px;width:12px;height:18px;position:absolute}.inspector{background:var(--paper-2);border-left:1px solid var(--line);z-index:15;flex:0 0 286px;width:286px;padding:18px;overflow-y:auto}.inspector-title{justify-content:space-between;align-items:start;display:flex}.inspector-title span,.inspector-title strong{display:block}.inspector-title span{color:#cf4935;text-transform:uppercase;margin-bottom:4px;font-size:10px;font-weight:900}.inspector-title strong{font:500 20px Georgia,serif}.inspector-title button{background:var(--muted);cursor:pointer;border:0;border-radius:7px;place-items:center;width:29px;height:29px;display:grid}.inspector-address{color:var(--ink-2);background:var(--muted);border-radius:7px;justify-content:space-between;margin-top:17px;padding:9px 10px;font-size:10px;display:flex}.inspector-address code{color:var(--ink);font-weight:800}.formula-note{color:#8a503f;margin:7px 0 10px;line-height:1.4;display:block}.inspector-divider{background:var(--line);height:1px;margin:22px 0}.image-preview{aspect-ratio:16/10;background:var(--muted);border-radius:10px;margin:10px 0;overflow:hidden}.image-preview img{object-fit:contain;width:100%;height:100%}.fit-control{border:0;margin:12px 0 16px;padding:0}.fit-control legend{color:var(--ink-2);letter-spacing:.07em;text-transform:uppercase;margin-bottom:7px;font-size:9px;font-weight:900}.fit-control>div{grid-template-columns:1fr 1fr;gap:6px;display:grid}.fit-control button{color:var(--ink-2);border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;padding:9px 7px;font-size:10px;font-weight:800}.fit-control button small{color:#8e8a82;margin-top:3px;font-size:8px;font-weight:600;display:block}.fit-control button.active{color:#fff;background:var(--ink);border-color:var(--ink)}.fit-control button.active small{color:#c9cfde}.image-drop-mini{width:100%;color:var(--ink-2);cursor:pointer;background:#f9f6ef;border:1px dashed #aaa296;border-radius:10px;flex-direction:column;align-items:center;padding:22px 10px;display:flex}.image-drop-mini strong{color:var(--ink);margin:7px 0 3px;font-size:12px}.image-drop-mini span{font-size:9px}.paste-guidance{color:var(--ink-2);background:#eef1f7;border:1px solid #d8deea;border-radius:10px;grid-template-columns:auto 1fr;gap:9px;margin-top:10px;padding:11px;display:grid}.paste-guidance>svg{color:#4b5d8a;margin-top:2px}.paste-guidance strong,.paste-guidance span{display:block}.paste-guidance strong{color:var(--ink);margin-bottom:3px;font-size:10px}.paste-guidance span{font-size:8px;line-height:1.45}.paste-guidance kbd{color:var(--ink);font:700 8px var(--font-geist-mono),monospace;background:#fff;border:1px solid #cbd2df;border-radius:3px;padding:1px 3px}.paste-guidance button{color:#fff;cursor:pointer;background:#4b5d8a;border:0;border-radius:7px;grid-column:1/-1;padding:8px;font-size:9px;font-weight:900}.check-row{align-items:center;gap:8px;font-size:11px;display:flex}.list-view{flex:1;padding:22px;overflow:auto}.list-view table{border-collapse:separate;border-spacing:0;border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;overflow:hidden;box-shadow:0 8px 24px #17223a15}.list-view th,.list-view td{text-align:left;border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px}.list-view thead th{color:#fff;background:var(--ink)}.list-view td button{text-align:left;width:100%}.list-view .plain-value{text-align:left;display:block}.list-view .bullet-value{padding-left:18px}.list-view tbody th{color:#8b3b30;background:#fff0eb}.list-view td button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:0}.toast{z-index:100;color:#fff;background:var(--ink);max-width:390px;box-shadow:var(--shadow);border-radius:10px;align-items:center;gap:9px;padding:12px 14px;font-size:12px;font-weight:700;display:flex;position:fixed;bottom:18px;right:18px}.toast-error{background:#8e382c}.toast-success{background:#3e6545}@media (max-width:980px){.recent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mapping-layout{grid-template-columns:380px minmax(0,1fr)}.mapping-panel{padding:38px 28px}.sheet-preview{padding:30px 24px}.project-title{display:none}.inspector{flex-basis:260px;width:260px}}@media (max-width:720px){.home-nav{padding:0 20px}.hero{padding-top:52px}.hero h1{font-size:56px}.drop-zone{grid-template-columns:48px 1fr;padding:24px}.drop-zone .button{grid-column:1/-1}.recent-grid{grid-template-columns:1fr}.home-footer{flex-direction:column;gap:7px}.mapping-top{grid-template-columns:1fr auto;padding:0 18px}.step-counter,.sheet-preview{display:none}.mapping-layout{display:block}.mapping-panel{border-right:0}.workspace-topbar{grid-template-columns:1fr auto}.workspace-topbar .brand-name,.topbar-center,.topbar-actions .icon-button{display:none}.export-button{padding:9px 11px}.left-rail{display:none}.canvas-toolbar{grid-template-columns:1fr auto}.canvas-status{display:none}.canvas-viewport{cursor:default;touch-action:pan-y;padding:16px;overflow:auto}.canvas-world{pointer-events:auto;flex-direction:column;gap:14px;width:auto;height:auto;display:flex;position:relative;top:auto;bottom:auto;left:auto;right:auto;transform:none!important}.entity-card{position:relative;width:100%!important;height:auto!important;transform:none!important}.resize-handle,.canvas-help,.minimap,.zoom-readout{display:none}.focus-banner{width:calc(100% - 28px);min-width:0}.inspector{z-index:30;border:0;border-top:1px solid var(--line);border-radius:16px 16px 0 0;width:100%;max-height:54vh;position:fixed;bottom:0;right:0;box-shadow:0 -12px 40px #17223a29}.list-view{padding:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){.entity-header,.button,.rail-group button.active{border:1px solid buttontext}}@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}
