:root{--bg: #F7F9FA;--rail: #FFFFFF;--rail-2: #F0F2F4;--surface: #FFFFFF;--surface-2: #F0F2F4;--ink: #1D232A;--ink-2: #616A74;--ink-3: #9CA3AF;--line: #EAECEE;--line-2: #D5D8DC;--accent: #07A17B;--accent-d: #058263;--accent-dd: #04634B;--accent-soft: #E6F6F2;--accent-tint: #F4FBF9;--gold: #E0A33B;--ok: #3F7D52;--ok-soft: #E6F0E7;--warn: #C8442A;--warn-soft: #FBE6E0;--shadow-sm: 0 1px 2px rgba(42, 33, 28, .06), 0 1px 3px rgba(42, 33, 28, .05);--shadow: 0 4px 14px rgba(42, 33, 28, .07), 0 2px 6px rgba(42, 33, 28, .05);--shadow-lg: 0 18px 44px rgba(42, 33, 28, .13), 0 6px 16px rgba(42, 33, 28, .08);--r: 14px;--r-lg: 20px;--r-xl: 26px;--font: "DM Sans", system-ui, -apple-system, sans-serif;--display: "Bricolage Grotesque", "DM Sans", sans-serif;--ease: cubic-bezier(.22, .61, .36, 1)}*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--ink-3) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:99px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--ink-3);border:2px solid transparent;background-clip:padding-box}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:480px){.form-grid-2{grid-template-columns:1fr;gap:12px}}html,body{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}#root{height:100%}button{font-family:inherit}::selection{background:var(--accent-soft)}.app{display:flex;height:100vh;overflow:hidden}.app.full .rail{display:none}.rail{width:340px;min-width:340px;background:var(--rail);color:var(--ink);display:flex;flex-direction:column;padding:30px 28px 24px;position:relative;overflow:hidden;border-right:1px solid var(--line)}.rail:after{content:"";position:absolute;left:-40%;bottom:-10%;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(7,161,123,.05),transparent 70%);pointer-events:none}.rail-brand{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:34px;position:relative;z-index:1}.rail-mark{width:90px;height:32px;display:flex;align-items:center;justify-content:flex-start}.rail-tagline{margin-left:2px;margin-top:2px;font-family:var(--font);font-size:11px;font-weight:600;color:#031525;letter-spacing:.02em;white-space:nowrap;line-height:1}.rail-name{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.01em;line-height:1}.rail-name small{display:block;font-family:var(--font);font-weight:400;font-size:12px;color:var(--ink-2);letter-spacing:0;margin-top:3px}.vstep{position:relative;z-index:1;flex:1}.vstep-item{display:flex;gap:16px;align-items:flex-start;padding:14px 0;position:relative}.vstep-item .vline{position:absolute;left:15px;top:46px;bottom:-14px;width:2px;background:var(--line)}.vstep-item:last-child .vline{display:none}.vstep-item .vline.done{background:var(--accent)}.vbub{width:32px;height:32px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:14px;font-weight:700;border:2px solid var(--line-2);color:var(--ink-3);background:var(--surface);transition:.3s var(--ease)}.vstep-item.done .vbub{background:var(--accent);border-color:var(--accent);color:#fff}.vstep-item.active .vbub{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);box-shadow:none}.vtext{padding-top:6px}.vtext .vt{font-size:15px;font-weight:600;color:var(--ink-3);transition:.3s var(--ease);line-height:1.2}.vstep-item.active .vt{color:var(--ink);font-weight:600}.vstep-item.done .vt{color:var(--ink-2)}.vtext .vs{font-size:12px;color:var(--ink-3);margin-top:1px}.vstep-item.clickable{cursor:pointer}.vstep-item.clickable:hover .vt{color:var(--ink)}.rail-foot{position:relative;z-index:1;margin-top:18px}.rail-tip{background:var(--surface-2);border:1px solid var(--line);border-radius:14px;padding:13px 15px;display:flex;gap:11px;align-items:flex-start;margin-bottom:14px}.rail-tip .ic{font-size:18px;line-height:1}.rail-tip p{margin:0;font-size:12.5px;color:var(--ink-2);line-height:1.4}.rail-tip b{color:var(--ink);font-weight:600}.autosave{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ok)}.autosave .dot{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 3px var(--ok-soft)}.autosave.saving .dot{background:var(--gold);box-shadow:0 0 0 3px #e0a33b33;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.4}}.content{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg)}.content-scroll{flex:1;overflow-y:auto;overflow-x:hidden;scroll-behavior:smooth}.content-inner{max-width:620px;margin:0 auto;padding:54px 40px 40px;animation:rise .45s var(--ease) both}.content-inner.wide{max-width:780px}.content-inner.extra-wide{max-width:960px}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.mtop{display:none}.step-eyebrow{display:flex;align-items:center;gap:9px;color:var(--accent-d);font-weight:600;font-size:13px;letter-spacing:.02em;margin-bottom:14px}.step-eyebrow .si{width:30px;height:30px;border-radius:9px;background:var(--accent-soft);display:grid;place-items:center;font-size:16px}h1.step-title{font-family:var(--display);font-weight:700;font-size:34px;line-height:1.08;letter-spacing:-.02em;margin:0 0 9px}p.step-sub{font-size:16.5px;color:var(--ink-2);margin:0 0 28px;line-height:1.5;max-width:90%}.field{margin-bottom:18px}.field>label,.flabel{display:block;font-weight:600;font-size:14px;margin-bottom:7px;color:var(--ink)}.flabel .opt{font-weight:400;color:var(--ink-3);margin-left:4px}.fhint{font-size:13px;color:var(--ink-2);margin-top:6px;line-height:1.4}.input,.select-box{width:100%;background:var(--surface);border:1.5px solid var(--line-2);border-radius:var(--r);padding:13px 15px;font-size:16px;color:var(--ink);font-family:inherit;transition:.16s var(--ease);outline:none}.input::placeholder{color:var(--ink-3)}.input:focus,.select-box:focus-within,.input.focused{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-tint)}.input.err{border-color:var(--warn);background:#fff}.input.err:focus{box-shadow:0 0 0 4px var(--warn-soft)}.input.valid{border-color:#bcd8c2}textarea.input{resize:none;line-height:1.5}.row{display:flex;gap:12px}.row>*{flex:1;min-width:0}.row .g2{flex:2}.row .gauto{flex:none}.errline{display:flex;align-items:center;gap:7px;color:var(--warn);font-size:13.5px;margin-top:7px;animation:rise .2s var(--ease)}.errline svg{flex:none}.okline{display:flex;align-items:center;gap:6px;color:var(--ok);font-size:13.5px;margin-top:7px}.phone-grp{display:flex;gap:10px}.dialbox{flex:none;width:124px}.selwrap{position:relative}.selwrap select{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;background:var(--surface);border:1.5px solid var(--line-2);border-radius:var(--r);padding:13px 40px 13px 15px;font-size:16px;font-family:inherit;color:var(--ink);cursor:pointer;outline:none;transition:.16s var(--ease)}.selwrap select:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-tint)}.selwrap:after{content:"";position:absolute;right:15px;top:50%;width:9px;height:9px;border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);transform:translateY(-70%) rotate(45deg);pointer-events:none}.derived-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:2px}.derived{display:inline-flex;align-items:center;gap:9px;background:var(--surface);border:1.5px solid var(--line);border-radius:12px;padding:11px 14px;font-size:14px;flex:1;min-width:160px}.derived .dic{width:30px;height:30px;border-radius:8px;background:var(--ok-soft);display:grid;place-items:center;font-size:14px;flex:none}.derived .dl{font-size:11.5px;color:var(--ink-2);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.derived .dv{font-weight:600;font-size:15px;line-height:1.1}.derived .lock{margin-left:auto;color:var(--ink-3);font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;cursor:pointer;font-family:inherit;font-weight:600;font-size:15.5px;border-radius:12px;padding:13px 22px;border:1.5px solid transparent;transition:.16s var(--ease);white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 4px 12px #07a17b47}.btn-primary:hover{background:var(--accent-d);box-shadow:0 6px 18px #07a17b5c}.btn-primary:disabled{background:#a3dccf;box-shadow:none;cursor:not-allowed;color:#fff}.btn-ghost{background:transparent;color:var(--ink-2);border-color:transparent}.btn-ghost:hover{background:var(--surface-2);color:var(--ink)}.btn-outline{background:var(--surface);color:var(--ink);border-color:var(--line-2)}.btn-outline:hover{border-color:var(--ink-3);background:var(--surface-2)}.btn-lg{font-size:17px;padding:16px 30px;border-radius:14px}.btn-block{width:100%}.btn .sp{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.footer{border-top:1px solid var(--line);background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:16px 40px;display:flex;align-items:center;justify-content:space-between;gap:14px}.footer .fcount{font-size:13.5px;color:var(--ink-2);font-weight:500}.footer .fspace{flex:1}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.choice{position:relative;text-align:left;background:var(--surface);border:2px solid var(--line-2);border-radius:var(--r-lg);padding:24px 22px 22px;cursor:pointer;transition:.18s var(--ease);display:flex;flex-direction:column}.choice:hover{border-color:var(--ink-3);transform:translateY(-3px);box-shadow:var(--shadow)}.choice.sel{border-color:var(--accent);background:var(--accent-tint);box-shadow:0 8px 24px #07a17b24}.choice .cic{width:56px;height:56px;border-radius:15px;background:var(--accent-soft);display:grid;place-items:center;font-size:28px;margin-bottom:16px;transition:.18s var(--ease);color:var(--accent)}.choice.sel .cic{background:var(--accent);color:#fff;transform:rotate(-4deg) scale(1.04)}.choice h3{font-family:var(--display);font-weight:600;font-size:21px;margin:0 0 5px;letter-spacing:-.01em}.choice p{margin:0;font-size:14px;color:var(--ink-2);line-height:1.45}.choice .tick{position:absolute;top:16px;right:16px;width:26px;height:26px;border-radius:50%;border:2px solid var(--line-2);display:grid;place-items:center;transition:.18s var(--ease);background:var(--surface)}.choice.sel .tick{background:var(--accent);border-color:var(--accent);color:#fff}.choice .tick svg{opacity:0;transform:scale(.5);transition:.18s var(--ease)}.choice.sel .tick svg{opacity:1;transform:none}.choice .cstruct{margin-top:14px;display:flex;align-items:center;gap:7px;color:var(--ink-3);font-size:12px;font-weight:500}.item-list{display:flex;flex-direction:column;gap:12px}.item-card{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;transition:.16s var(--ease);animation:rise .3s var(--ease) both}.item-card:hover{box-shadow:var(--shadow-sm);border-color:var(--line-2)}.item-head{display:flex;align-items:center;gap:14px}.item-logo{width:46px;height:46px;border-radius:12px;background:var(--accent-soft);display:grid;place-items:center;font-size:20px;flex:none;overflow:hidden;color:var(--accent-d);font-weight:700}.item-logo img{width:100%;height:100%;object-fit:cover}.item-main{min-width:0;flex:1}.item-title{font-weight:600;font-size:16.5px;letter-spacing:-.01em;line-height:1.2}.item-sub{font-size:13px;color:var(--ink-2);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-actions{display:flex;gap:6px;align-items:center;flex:none}.iconbtn{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;cursor:pointer;color:var(--ink-2);transition:.14s var(--ease)}.iconbtn:hover{background:var(--surface-2);color:var(--ink);border-color:var(--line-2)}.iconbtn.danger:hover{color:var(--warn);border-color:var(--warn);background:var(--warn-soft)}.pill{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:4px 11px;border-radius:20px;background:var(--surface-2);color:var(--ink-2);border:1px solid var(--line)}.pill.accent{background:var(--accent-soft);color:var(--accent-d);border-color:transparent}.pill.ok{background:var(--ok-soft);color:var(--ok);border-color:transparent}.pill.warn{background:var(--warn-soft);color:var(--warn);border-color:transparent}.nest{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line-2)}.nest-row{display:flex;align-items:center;gap:12px;padding:9px 0}.nest-row+.nest-row{border-top:1px solid var(--line)}.nest-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);flex:none;margin-left:5px}.add-btn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;border:1.5px dashed var(--line-2);background:var(--surface-2);border-radius:var(--r-lg);padding:15px;font-weight:600;font-size:15px;color:var(--accent-d);cursor:pointer;transition:.16s var(--ease)}.add-btn:hover{border-color:var(--accent);background:var(--accent-tint)}.add-btn .plus{width:24px;height:24px;border-radius:7px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:16px;font-weight:400}.empty{text-align:center;padding:34px 20px;border:1.5px dashed var(--line-2);border-radius:var(--r-lg);background:var(--surface-2)}.empty .eic{width:64px;height:64px;border-radius:18px;background:var(--accent-soft);display:grid;place-items:center;font-size:30px;margin:0 auto 14px;color:var(--accent)}.empty h4{font-family:var(--display);font-weight:600;font-size:19px;margin:0 0 4px}.empty p{margin:0 0 16px;color:var(--ink-2);font-size:14.5px}.scope{display:flex;align-items:center;gap:12px;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r);padding:10px 12px 10px 14px;margin-bottom:22px}.scope .sl{font-size:12.5px;color:var(--ink-2);font-weight:500}.scope .selwrap{flex:1}.scope .selwrap select{padding-top:9px;padding-bottom:9px;font-weight:600}.logo-up{display:flex;align-items:center;gap:16px}.logo-drop{width:96px;height:96px;border-radius:18px;border:1.5px dashed var(--line-2);background:var(--surface-2);display:grid;place-items:center;cursor:pointer;position:relative;overflow:hidden;transition:.16s var(--ease);flex:none;text-align:center}.logo-drop:hover{border-color:var(--accent);background:var(--accent-tint)}.logo-drop.has{border-style:solid;border-color:var(--line)}.logo-drop img{width:100%;height:100%;object-fit:cover}.logo-drop .ph{color:var(--ink-3);font-size:12px;padding:0 8px;line-height:1.3}.logo-drop .ph .pic{font-size:24px;display:block;margin-bottom:3px}.logo-up .lu-text{font-size:13.5px;color:var(--ink-2);line-height:1.5}.logo-up .lu-text b{color:var(--ink);display:block;font-size:14.5px;margin-bottom:2px;font-weight:600}.logo-rm{color:var(--warn);font-size:13px;cursor:pointer;font-weight:500;margin-top:6px;display:inline-block}.map{height:180px;border-radius:var(--r);overflow:hidden;position:relative;cursor:crosshair;border:1.5px solid var(--line-2);background:linear-gradient(0deg,#07a17b0a,#07a17b0a),repeating-linear-gradient(0deg,#EFE7DA,#EFE7DA 1px,transparent 1px,transparent 26px),repeating-linear-gradient(90deg,#EFE7DA,#EFE7DA 1px,transparent 1px,transparent 26px),#f6efe3}.map .road{position:absolute;background:#e4d7c4}.map .pin{position:absolute;transform:translate(-50%,-100%);font-size:30px;line-height:1;filter:drop-shadow(0 4px 4px rgba(0,0,0,.25));animation:drop .35s var(--ease);pointer-events:none}@keyframes drop{0%{transform:translate(-50%,-160%);opacity:0}60%{transform:translate(-50%,-92%)}to{transform:translate(-50%,-100%);opacity:1}}.map-hint{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#ffffffeb;border:1px solid var(--line);border-radius:20px;padding:7px 15px;font-size:13px;color:var(--ink-2);font-weight:500;pointer-events:none}.plat-add-wrap{position:relative;display:flex;align-items:center;background:var(--surface);border:1.5px solid var(--line-2);border-radius:12px;padding:4px;transition:border-color .15s;cursor:pointer}.plat-add-wrap:hover{border-color:var(--ink-3)}.plat-add-icon{width:36px;height:36px;display:grid;place-items:center;color:var(--accent-d);flex:none}.plat-add-select{flex:1;font-weight:600;font-size:15px;color:var(--ink)}.plat-add-chev{width:36px;height:36px;display:grid;place-items:center;color:var(--ink-3);pointer-events:none;flex:none}.custom-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 10px 30px #00000014;z-index:100;overflow:hidden;animation:rise .2s var(--ease) both}.custom-dropdown-item{padding:12px 16px;display:flex;align-items:center;gap:12px;cursor:pointer;font-weight:600;font-size:15px;color:var(--ink);transition:background .15s}.custom-dropdown-item:hover{background:var(--surface-2)}.custom-dropdown-item.disabled{color:var(--ink-3);cursor:default;background:transparent}.plat-logo.mini{width:28px;height:28px;border-radius:8px;font-size:13px;border:none;flex:none}.plat-card{border:1.5px solid var(--line-2);border-radius:14px;background:var(--surface);margin-bottom:12px;overflow:hidden;transition:.16s var(--ease)}.plat-card.expanded{border-color:var(--accent);box-shadow:0 6px 16px #07a17b14}.plat-card-head{display:flex;align-items:center;padding:16px;cursor:pointer;transition:background .15s}.plat-card-head:hover{background:#fcfcfc}.plat-logo{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-weight:800;font-size:17px;flex:none;margin-right:16px}.plat-name{font-weight:700;font-size:16px;color:var(--ink)}.plat-state{font-size:13px;color:var(--ink-2);margin-top:2px}.plat-del{opacity:0;transition:opacity .15s}.plat-card-head:hover .plat-del{opacity:1}.plat-card-body{padding:0 16px;max-height:0;overflow:hidden;transition:max-height .3s var(--ease),padding .3s var(--ease)}.plat-card.expanded .plat-card-body{max-height:10000px;padding:0 16px 16px}.plat-loc-group{margin-bottom:4px;transition:all .2s var(--ease)}.plat-loc-inputs{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px;padding:16px 20px 24px 44px;background:#fcfcfc;border-left:3px solid var(--accent);margin-left:24px;border-radius:0 0 12px;animation:rise .3s var(--ease) both}@media(max-width:768px){.plat-loc-inputs{grid-template-columns:1fr;padding:16px 16px 24px 24px}}.tgl{width:50px;height:29px;border-radius:30px;background:#ddd2c4;position:relative;cursor:pointer;transition:.2s var(--ease);flex:none;border:none;padding:0}.tgl:after{content:"";position:absolute;top:3px;left:3px;width:23px;height:23px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:.2s var(--ease)}.tgl.on{background:var(--accent)}.tgl.on:after{left:24px}.seg{display:inline-flex;background:var(--surface-2);border:1.5px solid var(--line-2);border-radius:11px;padding:3px;gap:3px}.seg button{border:none;background:transparent;padding:8px 16px;border-radius:8px;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:.14s var(--ease);white-space:nowrap}.seg button.on{background:var(--surface);color:var(--accent-d);box-shadow:var(--shadow-sm)}.dropzone{border:2px dashed var(--line-2);border-radius:var(--r-lg);background:var(--surface-2);padding:34px 20px;text-align:center;cursor:pointer;transition:.18s var(--ease)}.dropzone:hover,.dropzone.drag{border-color:var(--accent);background:var(--accent-tint)}.dropzone .dz-ic{width:58px;height:58px;border-radius:16px;background:var(--surface);box-shadow:var(--shadow-sm);display:grid;place-items:center;font-size:26px;margin:0 auto 14px}.dropzone h4{font-family:var(--display);font-weight:600;font-size:19px;margin:0 0 4px}.dropzone p{margin:0;color:var(--ink-2);font-size:14px}.dropzone .browse{color:var(--accent-d);font-weight:600;text-decoration:underline;text-underline-offset:2px}.menu-card{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-lg);padding:16px 18px;margin-bottom:12px;animation:rise .3s var(--ease) both}.menu-file{display:flex;align-items:center;gap:13px;margin-bottom:14px}.file-ic{width:42px;height:48px;border-radius:9px;display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff;flex:none}.file-ic.xls{background:#2f7d4f}.file-ic.pdf{background:#c8442a}.file-ic.doc{background:#3a6ea5}.menu-file .mf-name{font-weight:600;font-size:15.5px;word-break:break-all;line-height:1.2}.menu-file .mf-size{font-size:12.5px;color:var(--ink-2);margin-top:2px}.progress{height:7px;border-radius:6px;background:var(--line);overflow:hidden;margin-top:7px}.progress>i{display:block;height:100%;background:var(--accent);border-radius:6px;transition:width .2s linear}.cascade{display:flex;align-items:stretch;gap:8px;flex-wrap:wrap}.cascade .selwrap{flex:1;min-width:150px}.cascade .selwrap select{padding-top:10px;padding-bottom:10px;font-size:14.5px;font-weight:500}.cascade .carr{display:flex;align-items:center;color:var(--ink-3);font-size:14px}.cascade .selwrap.locked select{background:var(--surface-2);color:var(--ink-3);cursor:not-allowed}.menu-foot{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.menu-foot .mfl{font-size:13.5px;font-weight:600;color:var(--ink)}.menu-foot .help{font-size:12.5px;color:var(--ink-2)}.summary-box{background:var(--ok-soft);border:1.5px solid #cbe2cf;border-radius:var(--r-lg);padding:16px 18px;margin-top:6px}.summary-box h4{margin:0 0 10px;font-size:13px;font-weight:700;color:var(--ok);text-transform:uppercase;letter-spacing:.04em;display:flex;align-items:center;gap:7px}.summary-row{display:flex;gap:10px;font-size:13.5px;padding:5px 0;align-items:baseline}.summary-row .sk{font-weight:600;flex:none;color:var(--ink)}.summary-row .sv{color:var(--ink-2)}.summary-row .sv.warn{color:var(--warn);font-weight:600}.saved-menus{margin-bottom:32px;display:flex;flex-direction:column;gap:12px}.sm-card{display:flex;align-items:center;gap:16px;background:var(--surface);border-radius:12px;padding:16px 20px;border:1px solid var(--line-2);border-left:5px solid var(--accent);box-shadow:0 4px 12px #00000005}.sm-main{flex:1;min-width:0}.sm-name{font-weight:700;font-size:15px;color:var(--ink);margin-bottom:10px}.sm-pills{display:flex;gap:8px;flex-wrap:wrap}.sm-pill{display:inline-flex;align-items:center;gap:6px;background:#f5f5f5;border-radius:20px;padding:4px 12px;font-size:11px;font-weight:600;color:var(--ink-2)}.sm-pill-ic{width:16px;height:16px;border-radius:50%;background:#e0e0e0;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:9px}.sm-pill-ic img{width:100%;height:100%;object-fit:cover}.sm-actions{display:flex;align-items:center;gap:24px;flex:none}.sm-btn{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--accent-d);font-weight:600;font-size:13.5px;cursor:pointer;transition:opacity .15s}.sm-btn.danger{color:var(--ink-3)}.sm-btn:hover{opacity:.7}.assoc-title{font-family:var(--display);font-weight:800;font-size:12.5px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px}.assoc-box{border:1.5px dashed #c1e3cd;border-radius:16px;padding:24px;background:var(--surface)}.assoc-cols{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:24px}.assoc-col{display:flex;flex-direction:column}.assoc-label{font-family:var(--display);font-weight:800;font-size:11.5px;color:var(--ink);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.flex-between{display:flex;align-items:center;justify-content:space-between}.assoc-sub{font-weight:600;font-size:15px;color:var(--ink);margin-bottom:14px}.assoc-dropzone{border:1.5px dashed var(--line-2);border-radius:12px;padding:32px 20px;text-align:center;cursor:pointer;transition:all .15s;background:#fafafa;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:160px;flex:1}.assoc-dropzone:hover{border-color:var(--accent);background:#fdfdfd}.assoc-dropzone.drag{border-color:var(--accent);background:#f4f9f5}.assoc-draft-file{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:240px}.assoc-df-name{font-weight:600;font-size:15px;color:var(--ink);text-align:center;word-break:break-all}.assoc-df-size{font-size:13px;color:var(--ink-3)}.assoc-note{font-size:11.5px;color:var(--warn);margin-top:16px;font-weight:500}.assoc-template{display:flex;align-items:center;gap:8px;justify-content:center;width:100%;margin-top:16px;padding:12px;background:none;border:none;color:var(--accent-d);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;transition:opacity .15s}.assoc-template:hover{opacity:.7}.assoc-submit{width:100%;padding:16px;background:#9bdfc3;color:#fff;border:none;border-radius:12px;font-weight:700;font-size:15px;cursor:not-allowed;transition:all .2s;display:flex;align-items:center;justify-content:center}.assoc-submit.ready{background:var(--accent);cursor:pointer}.assoc-submit.ready:hover{background:var(--accent-d);box-shadow:0 4px 12px #2ecc7133}@media(max-width:768px){.assoc-cols{grid-template-columns:1fr}.sm-card{flex-direction:column;align-items:flex-start}}.mac-actions{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:700}.mac-btn-text{background:none;border:none;color:var(--accent);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;padding:0}.mac-btn-text:hover{opacity:.8}.mac-div{color:var(--line-2)}.mac-brand{border:1px solid var(--line-2);border-radius:12px;margin-bottom:12px;overflow:hidden}.mac-brand:last-child{margin-bottom:0}.mac-brand-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fafafa;border-bottom:1px solid var(--line-2)}.mac-brand-name{display:flex;align-items:center;gap:8px;font-weight:700;font-size:12px;color:var(--ink);letter-spacing:.04em}.mac-bicon{width:22px;height:22px;border-radius:50%;background:#eee;display:flex;align-items:center;justify-content:center;font-size:12px;overflow:hidden}.mac-bicon img{width:100%;height:100%;object-fit:cover}.mac-loc{display:flex;align-items:center;padding:12px 16px;border-bottom:1px solid var(--line-2);cursor:pointer;transition:background .15s}.mac-loc:last-child{border-bottom:none}.mac-loc:hover{background:#fdfdfd}.mac-loc.selected{background:#f4f9f5}.mac-loc.disabled{opacity:.6;cursor:not-allowed;pointer-events:none;background:var(--bg)}.mac-check{width:18px;height:18px;border-radius:4px;border:1.5px solid var(--ink-3);display:flex;align-items:center;justify-content:center;flex:none;transition:all .15s;background:#fff}.mac-check.on{background:var(--accent);border-color:var(--accent);color:#fff}.mac-loc-name{flex:1;font-size:14px;color:var(--ink);margin-left:12px;font-weight:500}.mac-badge{font-size:11.5px;color:var(--ink-3);background:var(--line-1);padding:4px 10px;border-radius:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.terms{border:1.5px solid var(--line-2);border-radius:var(--r-lg);background:var(--surface);height:300px;overflow-y:auto;padding:24px 26px}.terms h4{font-family:var(--display);font-size:17px;margin:18px 0 8px;font-weight:600}.terms h4:first-child{margin-top:0}.terms p{margin:0 0 12px;font-size:14px;color:var(--ink-2);line-height:1.6}.scroll-hint{text-align:center;font-size:12.5px;color:var(--ink-3);margin-top:10px;transition:.2s}.agree-check{display:flex;gap:13px;align-items:flex-start;background:var(--surface);border:1.5px solid var(--line-2);border-radius:var(--r);padding:16px 17px;margin-top:18px;cursor:pointer;transition:.16s var(--ease)}.agree-check:hover{border-color:var(--ink-3)}.agree-check.on{border-color:var(--accent);background:var(--accent-tint)}.cbox{width:24px;height:24px;border-radius:7px;border:2px solid var(--line-2);background:var(--surface);flex:none;display:grid;place-items:center;color:#fff;transition:.16s var(--ease);margin-top:1px}.agree-check.on .cbox{background:var(--accent);border-color:var(--accent)}.agree-check .ac-text{font-size:14.5px;line-height:1.5}.agree-check .ac-text b{font-weight:600}.rev-group{background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r-lg);overflow:hidden;margin-bottom:14px}.rev-head{display:flex;align-items:center;gap:11px;padding:15px 18px;background:var(--surface-2);border-bottom:1px solid var(--line)}.rev-head .ric{width:32px;height:32px;border-radius:9px;background:var(--accent-soft);display:grid;place-items:center;font-size:16px}.rev-head h3{font-family:var(--display);font-size:17px;font-weight:600;margin:0;flex:1;letter-spacing:-.01em}.rev-edit{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600;color:var(--accent-d);cursor:pointer;padding:6px 11px;border-radius:8px;transition:.14s}.rev-edit:hover{background:var(--accent-soft)}.rev-body{padding:14px 18px}.rev-kv{display:flex;gap:14px;padding:6px 0;font-size:14px}.rev-kv .rk{color:var(--ink-2);min-width:130px;flex:none}.rev-kv .rv{font-weight:500;color:var(--ink)}.rev-sub{font-size:13px;color:var(--ink-2);padding:5px 0 5px 14px;border-left:2px solid var(--line);margin:4px 0 4px 4px}.submit-note{display:flex;align-items:flex-start;gap:11px;background:var(--accent-tint);border:1px solid var(--accent-soft);border-radius:var(--r);padding:14px 16px;margin-top:6px;font-size:13.5px;color:var(--ink-2);line-height:1.5}.submit-note b{color:var(--ink)}.review-toggle-container{display:flex;background:var(--surface-2);padding:4px;border-radius:30px;width:fit-content;margin:16px auto 28px;border:1.5px solid var(--line)}.review-toggle-btn{display:flex;align-items:center;gap:8px;background:transparent;border:none;padding:8px 18px;font-family:var(--font);font-size:14px;font-weight:600;color:var(--ink-2);border-radius:26px;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.review-toggle-btn.active{background:var(--surface);color:var(--accent-d);box-shadow:var(--shadow-sm)}.review-toggle-btn:hover:not(.active){color:var(--ink)}.visual-tree-container{display:flex;flex-direction:column;align-items:center;width:100%;padding:24px;background:var(--accent-tint);border:1.5px solid var(--accent-soft);border-radius:var(--r-xl);position:relative;overflow:hidden;box-shadow:inset 0 2px 8px #07a17b05}.visual-tree-container:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-d) 100%)}.tree-connector-vertical{width:2px;height:24px;background:var(--line-2);position:relative}.tree-connector-vertical:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid var(--line-2)}.tree-card{background:var(--surface);border:1.5px solid var(--line-2);border-radius:var(--r-lg);padding:16px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow-sm);transition:all .2s ease;position:relative;z-index:2}.tree-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:var(--accent-d)}.tree-card.root-card{border-color:var(--accent-d);background:var(--surface);min-width:280px;max-width:360px;padding:18px 22px}.tree-card.root-card .card-logo{width:48px;height:48px;border-radius:12px;background:var(--accent-soft);color:var(--accent-d);display:flex;align-items:center;justify-content:center;overflow:hidden;border:1.5px solid var(--accent-soft)}.tree-card.root-card .card-logo img{width:100%;height:100%;object-fit:cover}.tree-card .card-content{display:flex;flex-direction:column;flex:1}.tree-card .card-badge{font-size:10px;font-weight:700;text-transform:uppercase;color:var(--accent-d);letter-spacing:.05em;margin-bottom:4px}.tree-card .card-badge.brand{color:var(--gold)}.tree-card h4{margin:0;font-family:var(--display);font-size:16px;font-weight:700;color:var(--ink);line-height:1.2}.tree-card p{margin:4px 0 0;font-size:12px;color:var(--ink-2)}.brand-flow-rows-container{display:flex;flex-direction:column;gap:24px;width:100%}.brand-flow-row{display:flex;background:#ffffff8c;border:1.5px solid var(--line-2);border-radius:var(--r-xl);padding:24px;width:100%;gap:16px;align-items:center;position:relative;box-shadow:var(--shadow-sm);transition:all .25s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brand-flow-row:hover{background:#ffffffd9;border-color:var(--accent);box-shadow:var(--shadow)}.brand-flow-brand-column{width:250px;min-width:250px;flex-shrink:0;display:flex;flex-direction:column;position:relative}.brand-flow-connector-horizontal{width:36px;height:2px;background:var(--line-2);position:relative;flex-shrink:0}.brand-flow-connector-horizontal:after{content:"";position:absolute;right:-2px;top:50%;transform:translateY(-50%);border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:6px solid var(--line-2)}.brand-flow-locations-grid{display:flex;gap:20px;flex-wrap:wrap;flex:1}.brand-flow-locations-grid .tree-location-node{width:290px;min-width:290px;max-width:320px;flex-shrink:0}.tree-locations-list{display:flex;flex-direction:column;gap:20px;width:100%}.tree-location-node{display:flex;flex-direction:column;align-items:center;width:100%}.tree-card.location-card{flex-direction:column;align-items:stretch;gap:12px;width:100%;padding:18px}.location-card-header{display:flex;align-items:center;gap:8px;border-bottom:1.5px solid var(--line);padding-bottom:8px}.location-card-header h5{margin:0;font-family:var(--display);font-size:15px;font-weight:700;color:var(--ink)}.location-card-body{display:flex;flex-direction:column;gap:10px}.loc-contact{margin:0;font-size:12px;color:var(--ink-2)}.loc-menu-info{display:flex;align-items:center;gap:6px;background:var(--surface-2);padding:8px 12px;border-radius:10px;font-size:12px;border:1px solid var(--line);color:var(--ink);transition:all .2s ease}.loc-menu-info .menu-name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left}.loc-menu-info .menu-tax{font-size:10px;color:var(--accent-d);background:var(--accent-soft);padding:2px 6px;border-radius:4px;font-weight:600}.loc-menu-info.empty{color:var(--warn);background:var(--warn-soft);border-color:#c8442a26}.loc-platforms-section{background:var(--surface);border:1.5px dashed var(--line-2);border-radius:12px;padding:10px 12px;cursor:pointer;transition:all .2s ease}.loc-platforms-section:hover{background:var(--accent-tint);border-color:var(--accent)}.loc-platforms-section .section-title{display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-2);margin-bottom:8px}.loc-platforms-section:hover .section-title{color:var(--accent-d)}.view-details-hint{display:flex;align-items:center;gap:2px;font-size:10px;color:var(--accent);text-transform:none}.loc-platforms-row{display:flex;gap:8px;flex-wrap:wrap}.loc-platform-icon{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--line-2);position:relative;display:flex;align-items:center;justify-content:center;background:var(--surface);padding:4px;transition:all .2s ease}.loc-platform-icon.selected{border-color:var(--accent);box-shadow:0 2px 6px #07a17b26}.loc-platform-icon.unselected{filter:grayscale(100%);opacity:.25}.loc-platform-icon img{width:100%;height:100%;object-fit:contain}.loc-platform-icon span{font-size:10px;font-weight:700;text-transform:uppercase}.platform-tick-badge{position:absolute;right:-5px;bottom:-5px;width:14px;height:14px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;border:1.5px solid var(--surface);box-shadow:0 1px 3px #0000001a}.no-plats-text{font-size:12px;color:var(--ink-3);font-style:italic}.review-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1d232a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:modalFadeIn .2s cubic-bezier(.16,1,.3,1) forwards}.review-modal-content{background:var(--surface);border-radius:var(--r-xl);width:90%;max-width:480px;box-shadow:var(--shadow-lg);padding:0;position:relative;border:1.5px solid var(--line-2);max-height:85vh;overflow:hidden;display:flex;flex-direction:column;animation:modalSlideUp .3s cubic-bezier(.16,1,.3,1) forwards}.review-modal-close{position:absolute;top:20px;right:20px;background:var(--surface-2);border:none;cursor:pointer;color:var(--ink-2);width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.review-modal-close:hover{background:var(--warn-soft);color:var(--warn)}.review-modal-header{border-bottom:1.5px solid var(--line);padding:24px 28px 16px;flex-shrink:0}.review-modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:18px 28px 24px}.modal-title-eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--accent-d);letter-spacing:.05em;margin-bottom:4px}.review-modal-header h3{margin:0;font-family:var(--display);font-size:20px;font-weight:700;color:var(--ink)}.modal-aggregators-list{display:flex;flex-direction:column;gap:16px;margin-top:16px}.modal-aggregator-card{border:1.5px solid var(--line-2);border-radius:var(--r-lg);padding:16px;background:var(--surface);transition:all .2s ease}.modal-aggregator-card.selected{border-color:var(--accent);background:var(--accent-tint)}.modal-aggregator-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.modal-aggregator-logo{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:6px;border:1px solid var(--line-2);background:var(--surface)}.modal-aggregator-logo img{width:100%;height:100%;object-fit:contain}.modal-aggregator-logo span{font-size:14px;font-weight:700;text-transform:uppercase}.aggregator-name{font-weight:700;font-size:15px;color:var(--ink)}.aggregator-status-text{font-size:11px;color:var(--ink-3);margin-top:1px}.modal-aggregator-card.selected .aggregator-status-text{color:var(--accent-d);font-weight:600}.aggregator-status-badge{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:4px 8px;border-radius:20px;background:var(--surface-2);color:var(--ink-2)}.aggregator-status-badge.selected{background:var(--accent-soft);color:var(--accent-d)}.modal-aggregator-credentials{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px dashed var(--line-2)}.cred-grid{display:flex;flex-direction:column;gap:12px}.cred-row-item{display:flex;flex-direction:column;gap:4px;text-align:left}.cred-item{display:flex;flex-direction:column;gap:2px;text-align:left}.cred-label{font-size:11px;font-weight:600;color:var(--ink-2);text-transform:uppercase;letter-spacing:.02em}.cred-value-wrap{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--surface);border:1px solid var(--line-2);border-radius:8px;padding:6px 10px}.modal-aggregator-card.selected .cred-value-wrap{background:var(--surface)}.cred-value{font-size:13px;font-family:monospace;color:var(--ink);word-break:break-all}.cred-value.empty{font-family:inherit;color:var(--ink-3);font-style:italic;font-size:13px;padding-left:2px}.copy-btn{background:none;border:none;cursor:pointer;color:var(--ink-3);display:flex;align-items:center;justify-content:center;padding:4px;border-radius:4px;transition:all .2s ease;flex-shrink:0}.copy-btn:hover{background:var(--surface-2);color:var(--accent-d)}.cred-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sahl-note{display:flex;align-items:flex-start;gap:8px;margin-top:12px;padding:10px 12px;background:var(--accent-soft, rgba(7,161,123,.08));border:1px solid var(--line);border-radius:10px;font-size:12.5px;line-height:1.45;color:var(--ink-2)}.cred-value.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.02em}.agg-notconnected{margin-top:20px;padding-top:18px;border-top:1px dashed var(--line)}.agg-notconnected-title{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}.agg-notconnected-row{display:flex;flex-wrap:wrap;gap:10px}.agg-chip{display:inline-flex;align-items:center;gap:8px;padding:4px 12px 4px 4px;border:1px solid var(--line-2);border-radius:24px;background:var(--surface-2);color:var(--ink-2);font-size:12px;font-weight:500;transition:all .2s ease}.agg-chip:hover{background:var(--surface);border-color:var(--line);color:var(--ink)}.agg-chip-logo{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;background:var(--surface);font-size:9px;font-weight:800;text-transform:uppercase}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.hero{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 28px;max-width:560px;margin:0 auto}.hero-art{width:130px;height:130px;border-radius:36px;background:#fff;display:grid;place-items:center;box-shadow:0 22px 48px #07a17b38;margin-bottom:30px;transform:rotate(-3deg);overflow:hidden}.hero h1{font-family:var(--display);font-weight:700;font-size:46px;line-height:1.05;letter-spacing:-.025em;margin:0 0 14px}.hero p{font-size:18px;color:var(--ink-2);line-height:1.55;margin:0 0 30px;max-width:440px}.hero .reassure{display:flex;gap:22px;flex-wrap:wrap;justify-content:center;margin-top:26px}.reassure .ri{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--ink-2);font-weight:500}.reassure .ri .rd{width:26px;height:26px;border-radius:8px;background:var(--accent-soft);display:grid;place-items:center;font-size:13px}.confirm-badge{width:104px;height:104px;border-radius:50%;background:var(--ok-soft);border:2px solid #bcdcc2;display:grid;place-items:center;margin-bottom:26px;position:relative;animation:pop .5s var(--ease) both}.confirm-badge svg{width:52px;height:52px}@keyframes pop{0%{transform:scale(.3);opacity:0}60%{transform:scale(1.08)}to{transform:scale(1);opacity:1}}.ref-box{display:inline-flex;flex-direction:column;align-items:center;gap:3px;border:1.5px dashed var(--line-2);border-radius:var(--r);padding:14px 30px;margin:6px 0 4px;background:var(--surface)}.ref-box .rl{font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);font-weight:600}.ref-box .rn{font-family:var(--display);font-weight:700;font-size:30px;letter-spacing:.04em;color:var(--accent-d)}.next-steps{display:flex;gap:0;margin:30px 0 28px;width:100%;max-width:440px}.next-step{flex:1;text-align:center;position:relative;font-size:12.5px;color:var(--ink-2)}.next-step .nd{width:34px;height:34px;border-radius:50%;background:var(--surface);border:1.5px solid var(--line-2);display:grid;place-items:center;margin:0 auto 8px;font-size:15px}.next-step.cur .nd{background:var(--accent);border-color:var(--accent);color:#fff}.next-step .nline{position:absolute;top:17px;left:50%;width:100%;height:1.5px;background:var(--line-2);z-index:-1}.next-step:last-child .nline{display:none}.hero-top{position:absolute;top:24px;left:28px;display:flex;align-items:center;gap:10px}.hero-top .rail-mark{width:76px;height:32px}.hero-top .ht-name{font-family:var(--display);font-weight:700;font-size:16px}.reset-link{position:absolute;top:26px;right:30px;font-size:12.5px;color:var(--ink-3);cursor:pointer;z-index:5}.reset-link:hover{color:var(--warn)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#2a211c6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:flex-end;justify-content:center;z-index:50;animation:fade .2s ease;padding:0}@keyframes fade{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border-radius:24px 24px 0 0;width:100%;max-width:760px;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;padding:0;animation:slideup .3s var(--ease)}@keyframes slideup{0%{transform:translateY(40px);opacity:.6}to{transform:none;opacity:1}}.modal-head{display:flex;align-items:center;flex-shrink:0;margin:0;padding:22px 26px 14px;border-bottom:1px solid var(--line)}.modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:18px 26px;-webkit-overflow-scrolling:touch}.modal-head h3{font-family:var(--display);font-size:22px;font-weight:700;margin:0;flex:1;letter-spacing:-.01em}.modal-x{width:34px;height:34px;border-radius:9px;border:1px solid var(--line);background:var(--surface);cursor:pointer;display:grid;place-items:center;color:var(--ink-2)}.modal-x:hover{background:var(--surface-2)}.modal-foot{display:flex;gap:10px;flex-shrink:0;margin:0;padding:14px 26px 18px;border-top:1px solid var(--line);background:var(--surface)}.prefill-note{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ok);background:var(--ok-soft);border-radius:10px;padding:9px 13px;margin-bottom:16px}.prefill-note.warn{color:var(--accent-d);background:var(--accent-soft)}.missing-brand-note{display:flex;align-items:flex-start;gap:8px;font-size:13px;color:var(--warn);background:var(--warn-soft);border-radius:10px;padding:10px 14px;margin-bottom:16px}.choice-row{display:flex;align-items:center;gap:14px;text-align:left;background:var(--surface);border:1.5px solid var(--line-2);border-radius:var(--r-lg);padding:16px 18px;cursor:pointer;transition:.16s var(--ease);width:100%;font-family:inherit}.choice-row:hover{border-color:var(--accent);background:var(--accent-tint);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.choice-row .cr-ic{width:46px;height:46px;border-radius:12px;background:var(--accent-soft);display:grid;place-items:center;font-size:22px;flex:none}.choice-row .cr-main{flex:1;min-width:0}.choice-row .cr-t{font-family:var(--display);font-weight:600;font-size:16.5px;letter-spacing:-.01em}.choice-row .cr-s{font-size:13px;color:var(--ink-2);margin-top:2px;line-height:1.4}.choice-row .cr-arrow{color:var(--ink-3);flex:none}.pick-list{display:flex;flex-direction:column;gap:9px}.pick-row{display:flex;align-items:center;gap:12px;border:1.5px solid var(--line);border-radius:var(--r);padding:12px 14px;cursor:pointer;background:var(--surface);transition:.14s var(--ease);width:100%;font-family:inherit;text-align:left}.pick-row:hover{border-color:var(--accent);background:var(--accent-tint)}.pick-row .pk-main{flex:1;min-width:0}.pick-row .pk-t{font-weight:600;font-size:15px}.pick-row .pk-s{font-size:12.5px;color:var(--ink-2);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick-row .pk-add{color:var(--accent-d);font-weight:600;font-size:13px;display:flex;align-items:center;gap:4px;flex:none}.section-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--ink-3);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.section-divider:before,.section-divider:after{content:"";flex:1;height:1px;background:var(--line)}.shared-note{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:var(--accent-d);background:var(--accent-soft);border-radius:9px;padding:5px 11px;margin-top:10px;font-weight:600}.location-hint{font-size:13px;color:var(--ink-2);margin-top:9px;display:flex;align-items:center;gap:7px}.location-hint.ok{color:var(--ok)}.ctx-note{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--ink);background:var(--accent-tint);border:1px solid var(--accent-soft);border-radius:11px;padding:12px 15px;margin-bottom:18px;line-height:1.4}.ctx-note b{font-weight:700}.overview{background:var(--surface-2);border:1.5px solid var(--line);border-radius:var(--r-lg);padding:17px 19px;margin-top:24px}.overview h4{font-family:var(--display);font-size:16px;font-weight:600;margin:0 0 3px;display:flex;align-items:center;gap:8px;letter-spacing:-.01em}.overview .ov-sub{font-size:12.5px;color:var(--ink-2);margin:0 0 12px;line-height:1.4}.ov-row{display:flex;align-items:flex-start;gap:12px;padding:10px 0}.ov-row+.ov-row{border-top:1px solid var(--line)}.ov-pin{width:32px;height:32px;border-radius:9px;background:var(--accent-soft);display:grid;place-items:center;font-size:15px;flex:none}.ov-main{flex:1;min-width:0}.ov-name{font-weight:600;font-size:14.5px}.ov-shared{color:var(--accent-d);font-weight:700}.ov-brands{font-size:12.5px;color:var(--ink-2);margin-top:4px;display:flex;flex-wrap:wrap;gap:6px}.ov-brand-chip{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:3px 10px;font-size:11.5px;color:var(--ink);font-weight:500}.assign-section{margin-top:14px;padding-top:15px;border-top:1px solid var(--line)}.assign-head{display:flex;align-items:center;gap:8px;font-weight:600;font-size:14px;margin-bottom:11px}.assign-head .ah-count{font-size:12px;font-weight:600;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:20px;padding:1px 9px}.assign-empty{display:flex;align-items:center;gap:13px;background:var(--surface-2);border:1.5px dashed var(--line-2);border-radius:var(--r);padding:14px 16px}.assign-empty .ae-ic{width:40px;height:40px;border-radius:11px;background:var(--accent-soft);display:grid;place-items:center;font-size:19px;flex:none}.assign-empty .ae-main{flex:1;min-width:0}.assign-empty b{font-size:14.5px;font-weight:600}.assign-row{display:flex;align-items:flex-start;gap:10px;background:var(--surface-2);border:1.5px solid var(--line);border-radius:var(--r);padding:12px;margin-bottom:10px;animation:rise .25s var(--ease) both}.assign-row.bad{border-color:var(--warn);background:var(--warn-soft)}.assign-row .ar-main{flex:1;min-width:0}.assign-row .cascade{margin-bottom:0}.assign-tax{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:11px}.assign-tax .at-l{font-size:13px;font-weight:600;color:var(--ink)}.assign-tax .help{font-size:12px;color:var(--ink-2)}.assign-row-rm{width:32px;height:32px;border-radius:9px;border:1px solid var(--line);background:var(--surface);display:grid;place-items:center;cursor:pointer;color:var(--ink-2);flex:none;transition:.14s var(--ease)}.assign-row-rm:hover{color:var(--warn);border-color:var(--warn);background:var(--warn-soft)}.assign-hint{display:flex;align-items:center;gap:7px;color:var(--warn);font-size:12.5px;margin-top:9px}.assigned-badge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;color:var(--ok);background:var(--ok-soft);border-radius:20px;padding:3px 10px;flex:none}.receipt{margin-top:13px;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--r);padding:6px 14px}.receipt-row{display:flex;align-items:center;gap:10px;padding:9px 0;font-size:13.5px}.receipt-row+.receipt-row{border-top:1px dashed var(--line)}.receipt-row .rc-arrow{color:var(--accent);font-weight:700;flex:none}.receipt-row .rc-path{flex:1;min-width:0;color:var(--ink);font-weight:500}.receipt-row .rc-path .rc-dim{color:var(--ink-2);font-weight:400}.receipt-row .rc-tax{font-size:11px;font-weight:700;color:var(--ink-2);background:var(--surface-2);border:1px solid var(--line);border-radius:20px;padding:2px 9px;flex:none}@media(min-width:560px){.modal-bg{align-items:center;padding:20px}.modal{border-radius:24px}}@media(max-width:880px){.app{flex-direction:column}.rail,.app.full .rail{display:none}.mtop{display:flex;align-items:center;gap:13px;padding:14px 18px;background:var(--rail);color:#fff;position:sticky;top:0;z-index:10}.mtop .rail-mark{width:64px;height:28px}.mtop .mt-info{flex:1;min-width:0}.mtop .mt-step{font-size:11px;color:#b7a99b;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.mtop .mt-label{font-family:var(--display);font-weight:600;font-size:15px}.mtop .mt-bar{height:5px;border-radius:5px;background:#ffffff29;width:74px;overflow:hidden;flex:none}.mtop .mt-bar>i{display:block;height:100%;background:var(--accent);border-radius:5px;transition:width .3s var(--ease)}.content-inner{padding:30px 20px}h1.step-title{font-size:28px}p.step-sub{font-size:15.5px;max-width:100%}.footer{padding:13px 18px}.choice-grid{grid-template-columns:1fr}.row{flex-direction:column;gap:0}.row.keep{flex-direction:row;gap:10px}.hero h1{font-size:36px}.hero-art{width:104px;height:104px;font-size:50px}.derived{min-width:0}}@media(max-width:420px){.content-inner{padding:24px 16px 28px}.btn{padding:12px 18px}}.search-select-container{position:relative;width:100%}.search-select-trigger{width:100%;background:var(--surface);border:1.5px solid var(--line-2);border-radius:var(--r);padding:13px 40px 13px 15px;font-size:16px;font-family:inherit;color:var(--ink);cursor:pointer;outline:none;transition:.16s var(--ease);display:block;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-sizing:border-box;min-height:50px}.search-select-container.open .search-select-trigger{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-tint)}.search-select-container:after{content:"";position:absolute;right:15px;top:50%;width:9px;height:9px;border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);transform:translateY(-70%) rotate(45deg);pointer-events:none;transition:transform .16s var(--ease)}.search-select-container.open:after{transform:translateY(-30%) rotate(-135deg)}.search-select-dropdown{position:absolute;top:calc(100% + 6px);left:0;width:100%;min-width:200px;background:var(--surface);border:1.5px solid var(--line-2);border-radius:var(--r);box-shadow:var(--shadow-lg);z-index:1000;overflow:hidden;display:flex;flex-direction:column;max-height:250px;animation:selectSlideDown .16s var(--ease);box-sizing:border-box}@keyframes selectSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.search-select-search-wrap{padding:8px 10px;border-bottom:1.5px solid var(--line);background:var(--bg);display:flex;align-items:center;gap:8px}.search-select-search-wrap svg{flex:none}.search-select-input{width:100%;border:1.5px solid var(--line-2);border-radius:8px;padding:8px 12px;font-size:14px;font-family:inherit;color:var(--ink);outline:none;background:var(--surface);transition:border-color .16s;box-sizing:border-box}.search-select-input:focus{border-color:var(--accent)}.search-select-options{overflow-y:auto;flex:1}.search-select-option{padding:11px 16px;font-size:15px;color:var(--ink);cursor:pointer;transition:background .12s;text-align:left}.search-select-option:hover{background:var(--accent-soft)}.search-select-option.selected{background:var(--accent);color:#fff;font-weight:500}.search-select-no-results{padding:16px;font-size:14px;color:var(--ink-2);text-align:center}.plat-split-container{display:flex;gap:24px;width:100%;margin-top:24px;align-items:flex-start}.plat-sidebar{width:220px;flex-shrink:0;display:flex;flex-direction:column;gap:6px;border-right:1px solid var(--line-2);padding-right:16px}.plat-sidebar-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:12px;cursor:pointer;background:transparent;color:var(--ink-2);font-weight:500;transition:all .2s ease}.plat-sidebar-item:hover{background:var(--surface-2);color:var(--ink)}.plat-sidebar-item.active{background:var(--accent-soft);color:var(--accent-d);font-weight:600}.plat-sidebar-item-info{display:flex;align-items:center;gap:10px}.plat-sidebar-badge{font-size:9px;font-weight:700;color:var(--accent-d);background:var(--surface);border:1px solid var(--accent);padding:1px 6px;border-radius:8px;text-transform:uppercase;letter-spacing:.05em}.plat-detail-pane{flex:1;min-width:0}.plat-detail-card{border:1.5px solid var(--line-2);border-radius:20px;background:var(--surface);box-shadow:0 4px 16px #00000003;overflow:hidden}.plat-empty-detail{padding:48px 32px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--surface)}@media(max-width:768px){.plat-split-container{flex-direction:column;gap:16px}.plat-sidebar{width:100%;flex-direction:row;overflow-x:auto;border-right:none;padding-right:0;padding-bottom:8px;border-bottom:1.5px solid var(--line-2);-webkit-overflow-scrolling:touch}.plat-sidebar-item{padding:8px 12px;border-radius:20px;border:1px solid var(--line-2);flex-shrink:0}.plat-sidebar-item.active{border-color:var(--accent)}.plat-sidebar-badge{display:none}}.plat-sidebar-add-btn:hover{background:var(--surface-2)!important;border-color:var(--line)!important;color:var(--ink)!important}
