@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:ital,wght@0,400;0,500;1,400&family=Instrument+Serif:ital@0;1&family=Inter:wght@400;500;600&display=swap');:root{--bg:#f7f8f5;--ink:#171a17;--muted:#8a9089;--line:#e3e6e1;--lime:#c8ff35;--mint:#e7f3dc;--coral:#ffe8e1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,sans-serif;font-size:13px}.top{height:66px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 max(28px,6vw);position:sticky;top:0;background:rgba(247,248,245,.92);backdrop-filter:blur(14px);z-index:5}.logo{color:var(--ink);text-decoration:none}.logo span{display:grid;place-items:center;width:20px;height:20px;border-radius:5px;background:var(--lime);font:600 14px Inter}.nav-pill{display:flex;gap:2px;margin:auto;background:#f0f2ed;border:1px solid var(--line);border-radius:9px;padding:3px}.nav-pill a{color:#737970;text-decoration:none;font-size:11px;padding:7px 13px;border-radius:6px}.nav-pill a.active,.nav-pill a:hover{background:#fff;color:var(--ink);box-shadow:0 1px 4px rgba(20,30,20,.06)}.top-actions{display:flex;align-items:center;gap:18px}.x{color:#7e857c;text-decoration:none;font-size:16px}.top button,.ghost{border:0;background:var(--lime);padding:10px 18px;border-radius:7px;color:var(--ink);font:600 11px Inter;cursor:pointer}.top button:hover,.ghost:hover{filter:brightness(.96);transform:translateY(-1px)}main{max-width:1060px;margin:0 auto;padding:42px 26px 80px}.toolbar{display:flex;gap:10px}.search{height:38px;flex:1;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 12px;color:#a2a8a1}.search input{border:0;outline:0;background:transparent;flex:1;font:12px Inter;color:var(--ink)}.search kbd{font:10px DM Mono;color:#a7ada7;border:1px solid var(--line);padding:2px 5px;border-radius:4px}.ghost{background:transparent;border:1px solid var(--line);color:#8b9289;padding:0 17px}.heading{display:flex;justify-content:space-between;align-items:end;margin:17px 2px 26px}.heading h1{font-size:20px;letter-spacing:-.04em;margin:0 0 7px;font-weight:600}.heading sup{display:inline-grid;place-items:center;width:17px;height:17px;border-radius:50%;background:var(--lime);font:10px DM Mono;vertical-align:top;margin-left:4px}.heading p{margin:0;color:#8a9189;font-size:11px}.stats{display:flex;gap:28px;text-align:right}.stats span{display:grid;gap:5px;color:#989f97;font:9px DM Mono}.stats strong{color:var(--ink);font:14px DM Mono}.stats .green,.green{color:#67a83a}.market-panel{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 12px 30px rgba(30,40,30,.045);overflow:hidden}.panel-tabs{height:50px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 18px;gap:4px}.panel-tabs button{border:0;background:none;color:#969d95;padding:7px 10px;border-radius:6px;font:11px Inter;cursor:pointer}.panel-tabs button.selected,.panel-tabs button:hover{background:#f2f4ef;color:var(--ink)}.panel-note{margin-left:auto;color:#a2a9a1;font:9px DM Mono}.panel-note i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#79bf3b;margin-right:5px}.market-grid{padding:4px 18px}.market-row{display:grid;grid-template-columns:34px 1fr 130px 120px 24px;gap:15px;align-items:center;padding:16px 0;border-bottom:1px solid #edf0ec}.market-row:last-child{border-bottom:0}.market-row:hover{background:#fcfdfb}.market-icon{width:29px;height:29px;border-radius:8px;background:var(--lime);display:grid;place-items:center;font:10px DM Mono}.market-icon.pale{background:var(--mint)}.market-icon.coral{background:var(--coral)}.market-name{display:grid;gap:5px}.market-name strong{font-size:12px;font-weight:500}.market-name span,small{font-size:10px;color:#a0a79f}.market-row>div:not(.market-name):not(.market-icon){display:grid;gap:5px}.market-row b{font:11px DM Mono;font-weight:400}.row-action{color:#9ca49b;font-size:15px;text-align:right}.muted{color:#9ca39a}.empty-hint{text-align:center;padding:16px;color:#adb4ad;font-size:10px;background:#fbfcfa}.ledger-strip{display:grid;grid-template-columns:1fr 2fr auto;align-items:center;gap:25px;padding:25px 4px;border-bottom:1px solid var(--line)}.ledger-strip small{display:block;font:9px DM Mono;color:#989f97;letter-spacing:.1em;margin-bottom:7px}.ledger-strip strong{font-size:13px;font-weight:500}.receipt{display:flex;align-items:center;gap:15px;font:10px DM Mono}.receipt span:nth-child(1){color:#a0a69e}.receipt b{font-weight:400}.receipt em{font-style:normal;color:#70ad3b;font-size:9px}.ledger-strip>a,.charter a{color:#70796f;text-decoration:none;font:10px DM Mono}.ledger-strip>a:hover,.charter a:hover{color:var(--ink)}.charter{display:flex;align-items:center;justify-content:space-between;padding:38px 4px;color:#7f887e}.charter>span{font:9px DM Mono;letter-spacing:.1em}.charter p{margin:0;font-size:12px;color:#929a90}.charter a{color:var(--ink)}footer{border-top:1px solid var(--line);padding:19px max(28px,6vw);display:flex;justify-content:space-between;color:#a3aaa2;font:9px DM Mono;letter-spacing:.06em}@media(max-width:700px){.top{padding:0 18px}.nav-pill{margin-left:18px;margin-right:auto}.nav-pill a{padding:7px 9px}.top-actions{gap:8px}.top-actions .x{display:none}main{padding:27px 16px 60px}.heading{align-items:start;gap:20px;flex-direction:column}.stats{width:100%;justify-content:flex-start;text-align:left;gap:35px}.market-row{grid-template-columns:30px 1fr 80px 20px;gap:10px}.market-row>div:nth-child(4){display:none}.market-row b{font-size:10px}.market-name span{font-size:9px}.panel-note{display:none}.ledger-strip{grid-template-columns:1fr;gap:18px}.receipt{justify-content:space-between;gap:7px;font-size:9px}.charter{display:grid;grid-template-columns:1fr auto;gap:12px}.charter p{grid-column:1/-1;grid-row:2}.charter a{grid-column:2;grid-row:1}footer{display:grid;gap:9px;padding:18px}footer span:nth-child(2){order:3}}
.breathing{display:inline-block;animation:breathe 3.2s ease-in-out infinite;transform-origin:left center}@keyframes breathe{0%,100%{letter-spacing:0;opacity:.7;font-variation-settings:"wght" 400}50%{letter-spacing:.012em;opacity:1;font-variation-settings:"wght" 520}}.gravity-field{height:86px;position:relative;border-top:1px solid #f0f2ee;background:#fdfefd;overflow:hidden}.gravity-field span{position:absolute;left:calc(var(--x) * 1%);top:calc(var(--y) * 1%);padding:6px 9px;border:1px solid var(--line);border-radius:999px;color:#7c857a;background:#fff;font:9px 'DM Mono';letter-spacing:.06em;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s ease;will-change:transform}.gravity-field span:hover{box-shadow:0 4px 12px rgba(31,45,27,.12)}body{min-height:100vh;display:flex;flex-direction:column}main{position:relative;z-index:2;flex:1;background:var(--bg)}footer{position:sticky;bottom:0;z-index:1;background:#e9eee6}@media(prefers-reduced-motion:reduce){.breathing{animation:none}.gravity-field span{transition:none}}
@media(min-width:701px){body{zoom:1.25}}
.gravity-field span:nth-child(1){--x:12;--y:20}.gravity-field span:nth-child(2){--x:78;--y:26}.gravity-field span:nth-child(3){--x:22;--y:72}.gravity-field span:nth-child(4){--x:84;--y:74}
.side-rail{position:fixed;top:182px;width:188px;min-height:286px;padding:16px 17px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.52);color:#929a91;z-index:1;font:9px 'DM Mono';letter-spacing:.08em;display:grid;align-content:start;gap:10px}.left-rail{left:24px}.right-rail{right:24px}.side-rail .rail-label{color:#737d73;font-size:8px;letter-spacing:.14em}.side-rail strong{font:500 22px Inter;line-height:.98;letter-spacing:-.05em;color:var(--ink);margin:10px 0 8px}.side-rail>span:not(.rail-label){font-size:8px;color:#a0a8a0;margin-top:5px}.side-rail>b{font:10px 'DM Mono';font-weight:400;color:var(--ink)}.side-rail .rail-rule{height:1px;background:var(--line);margin:3px 0 6px}.rail-stamp{width:40px;height:40px;border:1px solid #b8c1b6;border-radius:50%;display:grid;place-items:center;text-align:center;font:8px 'DM Mono';color:#7f8b7d;line-height:1.1;margin-top:20px}.rail-bars{height:40px;display:flex;align-items:end;gap:3px;margin-top:14px}.rail-bars i{width:7px;background:var(--lime);height:24%;opacity:.7}.rail-bars i:nth-child(2){height:45%}.rail-bars i:nth-child(3){height:31%}.rail-bars i:nth-child(4){height:66%}.rail-bars i:nth-child(5){height:54%}.rail-bars i:nth-child(6){height:76%}.rail-bars i:nth-child(7){height:48%}.rail-bars i:nth-child(8){height:88%}.rail-bars i:nth-child(9){height:62%}.rail-bars i:nth-child(10){height:79%}.rail-bars i:nth-child(11){height:70%}.rail-bars i:nth-child(12){height:100%}@media(max-width:1250px){.side-rail{display:none}}
/* source-aligned type hierarchy */
.heading h1{font-family:'Instrument Serif',Georgia,serif;font-size:28px;font-weight:400;letter-spacing:-.025em}.charter>span,.ledger-strip small,.side-rail .rail-label{font-style:italic}.side-rail strong{font-family:'Instrument Serif',Georgia,serif;font-size:29px;font-weight:400;letter-spacing:-.03em}.market-name strong,.heading p{letter-spacing:-.01em}

.modal-backdrop{position:fixed;inset:0;background:rgba(18,23,18,.22);backdrop-filter:blur(5px);display:none;align-items:center;justify-content:center;z-index:20}.modal-backdrop.open{display:flex}.create-modal{width:min(430px,calc(100vw - 32px));background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 24px 70px rgba(25,35,25,.18);padding:28px;position:relative}.modal-close{position:absolute;top:13px;right:15px;border:0;background:none;color:#8d958b;font-size:20px;cursor:pointer}.modal-kicker{font:9px 'IBM Plex Mono';letter-spacing:.12em;color:#849080}.create-modal h2{font:32px 'Instrument Serif',Georgia,serif;font-weight:400;line-height:.92;letter-spacing:-.03em;margin:17px 0 25px}.create-modal label{display:grid;gap:8px;font:9px 'IBM Plex Mono';color:#7d867c;margin-top:14px}.create-modal input,.create-modal select{height:40px;border:1px solid var(--line);border-radius:7px;padding:0 11px;font:12px Inter;color:var(--ink);background:#fff;outline:0}.create-modal input:focus,.create-modal select:focus{border-color:#9fba90;box-shadow:0 0 0 3px #edf5e7}.modal-submit{margin-top:23px;width:100%;height:41px;border:0;border-radius:7px;background:var(--lime);font:600 11px Inter;cursor:pointer}.create-modal p{margin:15px 0 0;color:#a4aba1;font-size:10px;text-align:center}.market-row{cursor:pointer}.market-row.is-open{background:#fbfdf8}.market-row.is-open .row-action{transform:rotate(90deg)}.market-row .row-action{transition:transform .2s ease}
.logo-mark{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:var(--lime);color:var(--ink)}.logo-mark svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.logo:hover .logo-mark{transform:rotate(-4deg) scale(1.04)}
.logo-mark{font:600 10px 'IBM Plex Mono';letter-spacing:-.08em}.logo-mark svg{display:none}
.logo{gap:9px}.logo-mark{width:25px;height:25px;border-radius:7px;background:var(--lime);display:grid;place-items:center;font:600 17px Inter;line-height:1;letter-spacing:0;transition:transform .2s ease}.logo:hover .logo-mark{transform:translate(1px,-1px) rotate(-4deg)}.wordmark{display:grid;gap:2px;color:var(--ink);font:600 12px Inter;letter-spacing:.03em;line-height:1}.wordmark small{font:8px 'IBM Plex Mono';font-weight:400;letter-spacing:.09em;color:#9aa299}.logo-mark svg{display:none}

.page-main{min-height:calc(100vh - 150px)}.page-hero{padding:74px 0 56px;border-bottom:1px solid var(--line)}.page-kicker{font:italic 9px 'IBM Plex Mono';letter-spacing:.13em;color:#8b9589}.page-hero h1{font:48px 'Instrument Serif',Georgia,serif;font-weight:400;line-height:.9;letter-spacing:-.04em;margin:18px 0}.page-hero h1 em{color:#7aa944;font-style:italic}.page-hero p{max-width:430px;color:#8d968b;line-height:1.55}.log-panel{background:#fff;border:1px solid var(--line);border-radius:10px;margin-top:28px;overflow:hidden}.log-head,.log-row{display:grid;grid-template-columns:170px 1fr 140px 100px;gap:16px;padding:18px 22px;border-bottom:1px solid #edf0ec;font:10px 'IBM Plex Mono';align-items:center}.log-head{color:#9aa299;font-size:9px;background:#fbfcfa}.log-row:last-child{border-bottom:0}.log-row b{font-weight:400}.log-row em{font-style:normal;color:#71a746;font-size:9px}.charter-hero{display:flex;align-items:end;justify-content:space-between;gap:30px}.charter-hero p{margin-bottom:4px}.charter-list{margin-top:28px;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}.charter-list article{display:grid;grid-template-columns:80px 1fr;gap:20px;padding:30px 28px;border-bottom:1px solid var(--line)}.charter-list article:last-child{border-bottom:0}.charter-list article>span{font:11px 'IBM Plex Mono';color:#98a198}.charter-list h2{font:22px 'Instrument Serif',Georgia,serif;font-weight:400;margin:0 0 8px}.charter-list p{margin:0;color:#8d968b;font-size:12px}@media(max-width:700px){.page-hero{padding:52px 0 38px}.page-hero h1{font-size:42px}.charter-hero{display:block}.charter-hero p{margin-top:20px}.log-head,.log-row{grid-template-columns:80px 1fr 72px;gap:8px;padding:15px 12px;font-size:9px}.log-head span:last-child,.log-row em{display:none}}
.top button.connected{background:#eef5e7;color:#56853b;border-color:#cbdac4}.vault-row.is-open,.market-row.is-open{background:#fbfdf8}.market-row{cursor:pointer}
.market-row[data-status="executed"]{opacity:.72}.market-row[hidden]{display:none!important}

.market-detail{margin-top:18px;background:#171a17;color:#fff;border-radius:10px;padding:25px 27px;position:relative}.market-detail h2{font:34px 'Instrument Serif',Georgia,serif;font-weight:400;margin:14px 0 22px}.market-detail .page-kicker{color:var(--lime)}.detail-close{position:absolute;right:16px;top:14px;border:0;background:none;color:#8f998f;font-size:20px;cursor:pointer}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.detail-grid span{display:grid;gap:7px}.detail-grid small{font:8px 'IBM Plex Mono';color:#7f8a80}.detail-grid b{font:10px 'IBM Plex Mono';font-weight:400}.market-detail>p{margin:23px 0 0;color:#9da79d;font-size:11px}.market-row[hidden]{display:none!important}@media(max-width:700px){.detail-grid{grid-template-columns:1fr 1fr}.market-detail{padding:22px 20px}}
/* align independent pages with Markets top rhythm */
.page-main{padding-top:22px}.page-main .page-hero{padding-top:28px;margin-top:0}.page-main .log-panel,.page-main .charter-list{margin-top:22px}

/* Trigger product flow */
:root{--bg:#f5f7f1;--paper:#fffef9;--ink:#121712;--muted:#6f786e;--soft:#90998e;--line:#dce2d8;--lime:#baff2c;--forest:#254a2c;--mint:#e2f1d9;--coral:#ffd9cd;--blue:#dceafc;--error:#a73d2f;--focus:#345f39}
*{box-sizing:border-box}
html{background:var(--bg)}
body{zoom:1!important;min-height:100vh;background:var(--bg);color:var(--ink);font-family:'Manrope','Microsoft YaHei',sans-serif;font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
::selection{background:var(--lime);color:var(--ink)}
button,input,select{font:inherit}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid color-mix(in srgb,var(--focus) 28%,transparent);outline-offset:3px}
button:disabled{cursor:not-allowed;opacity:.55}
svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

.top{height:74px;padding-inline:clamp(20px,5vw,72px);background:rgba(245,247,241,.96);border-color:var(--line);backdrop-filter:blur(16px)}
.logo{display:flex;align-items:center;gap:10px;min-width:190px}
.logo span.logo-mark{width:30px;height:30px;border-radius:8px;background:var(--lime)}
.logo-mark svg{display:block;width:17px;height:17px}
.wordmark{font:700 13px 'Space Grotesk',sans-serif;letter-spacing:.05em}
.wordmark small{font:500 8px 'IBM Plex Mono',monospace;letter-spacing:.13em;color:var(--muted)}
.nav-pill{position:absolute;left:50%;transform:translateX(-50%);margin:0;border-radius:12px;padding:4px;background:#edf0e9}
.nav-pill a{min-width:72px;padding:8px 14px;text-align:center;border-radius:8px;font:600 12px 'Space Grotesk',sans-serif}
.nav-pill a.active{box-shadow:0 2px 8px rgba(23,34,22,.08)}
.top-actions{margin-left:auto;gap:14px}
.network-dot{display:flex;align-items:center;gap:7px;color:var(--muted);font:500 10px 'IBM Plex Mono',monospace}
.network-dot::before{content:'';width:7px;height:7px;border-radius:50%;background:#a3aaa0;box-shadow:0 0 0 4px #e9ece6}
.network-dot.ready{color:var(--forest)}.network-dot.ready::before{background:#58a44c;box-shadow:0 0 0 4px #dcebd7}
.network-dot.warning{color:var(--error)}.network-dot.warning::before{background:#d06b56;box-shadow:0 0 0 4px #f5dfda}
.top button{min-height:40px;border-radius:9px;padding:0 17px;background:var(--lime);font:700 12px 'Space Grotesk',sans-serif;transition:transform .16s ease,box-shadow .16s ease}
.top button:hover{filter:none;box-shadow:0 6px 18px rgba(60,90,30,.12)}
.top button:active{transform:translateY(1px)}
.top button.connected{background:var(--forest);color:#fff}

main{width:min(1180px,calc(100% - 40px));max-width:none;margin:0 auto;padding:36px 0 72px;background:transparent}
.markets-main{padding-top:22px}
.network-banner{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:11px 14px 11px 16px;margin-bottom:18px;border:1px solid #d6dfd1;background:#edf4e8;color:var(--forest)}
.network-banner div{display:flex;align-items:center;gap:9px;font:500 10px 'IBM Plex Mono',monospace}
.network-banner strong{font-weight:600}.network-banner p{margin:0;color:#667464;font-size:11px}
.pulse{width:7px;height:7px;border-radius:50%;background:#64aa4e;box-shadow:0 0 0 4px rgba(100,170,78,.14)}

.toolbar{gap:12px}
.search{height:46px;border-radius:10px;background:var(--paper);padding-inline:14px}
.search svg{width:17px;height:17px}
.search input{font:500 13px 'Manrope',sans-serif}
.search input::placeholder{color:#8b9489}
.search kbd{font:500 10px 'IBM Plex Mono',monospace;background:#f6f7f3}
.secondary-action,.primary-action,.text-action{border:0;cursor:pointer;text-decoration:none}
.secondary-action{height:46px;display:inline-flex;align-items:center;gap:8px;padding:0 18px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);font:700 12px 'Space Grotesk',sans-serif}
.secondary-action svg{width:16px;height:16px}
.secondary-action:hover{border-color:#b9c6b4;background:#fff}
.heading{margin:28px 2px 24px;align-items:flex-end}
.heading h1{font:500 clamp(28px,3vw,42px)/1 'Space Grotesk',sans-serif;letter-spacing:-.04em;margin-bottom:11px}
.heading p{font-size:13px;color:var(--muted)}
.stats{gap:40px}.stats span{font:500 9px 'IBM Plex Mono',monospace;letter-spacing:.08em;text-align:left}.stats strong{font:600 18px 'Space Grotesk',sans-serif;color:var(--ink)}

.market-panel{border-radius:14px;background:var(--paper);box-shadow:0 20px 50px rgba(29,44,27,.05)}
.panel-tabs{height:58px;padding:0 20px}
.panel-tabs button{padding:8px 12px;font:600 12px 'Space Grotesk',sans-serif}
.panel-tabs button.selected{background:#edf1e9}
.panel-note{font:500 9px 'IBM Plex Mono',monospace}
.market-grid{padding:0 20px}
.market-row{grid-template-columns:42px minmax(190px,1.6fr) minmax(90px,.65fr) minmax(100px,.75fr) minmax(90px,.65fr) 20px;gap:16px;min-height:78px;padding:14px 4px;cursor:pointer;border-bottom-color:#e7ebe4;transition:background-color .16s ease,transform .16s ease}
.market-row:hover{background:#f8faf5;transform:translateX(3px)}
.market-icon,.market-avatar{width:36px;height:36px;border-radius:10px;background:var(--lime);display:grid;place-items:center;font:700 11px 'Space Grotesk',sans-serif}
.market-name{min-width:0;gap:4px}.market-name strong{font:700 14px 'Space Grotesk',sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-name span{font-size:11px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.market-row>div:not(.market-name):not(.market-icon){gap:5px;min-width:0}
.market-row small{font:500 8px 'IBM Plex Mono',monospace;letter-spacing:.07em;color:#8b9489}.market-row b{font:600 12px 'IBM Plex Mono',monospace}.row-arrow{width:18px;height:18px;color:#838c82}
.muted{color:#7e877c}.green{color:#4f8f3f!important}
.empty-state{padding:38px 20px;text-align:center}.empty-state strong,.empty-state span{display:block}.empty-state strong{font:700 15px 'Space Grotesk',sans-serif}.empty-state span{margin-top:6px;color:var(--muted);font-size:12px}.empty-state a{display:inline-block;margin-top:14px;color:var(--forest);font-weight:700}
.directive-tape{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;border-top:1px solid var(--line);background:#f6f8f3;color:#667064;font:600 9px 'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.11em}
.directive-tape i{width:38px;height:1px;background:#b9c3b5;position:relative}.directive-tape i::after{content:'';position:absolute;right:-1px;top:-2px;width:5px;height:5px;border-top:1px solid #8e9b89;border-right:1px solid #8e9b89;transform:rotate(45deg)}

.modal-backdrop{display:flex;visibility:hidden;opacity:0;padding:20px;background:rgba(15,22,15,.36);transition:opacity .18s ease,visibility .18s}
.modal-backdrop.open{visibility:visible;opacity:1}
.create-modal,.confirm-modal{width:min(720px,100%);max-height:calc(100vh - 40px);overflow-y:auto;overflow-x:hidden;background:var(--paper);border:1px solid #d2dbcf;border-radius:16px;box-shadow:0 32px 90px rgba(16,25,15,.24);padding:32px;position:relative;transform:translateY(10px);transition:transform .22s cubic-bezier(.2,.8,.2,1)}
.modal-backdrop.open .create-modal,.modal-backdrop.open .confirm-modal{transform:translateY(0)}
.icon-button{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);cursor:pointer}.icon-button svg{width:18px;height:18px}.icon-button:hover{background:#f1f4ed}
.modal-close{position:absolute;right:22px;top:22px;z-index:2}
.wizard-head{display:flex;justify-content:space-between;gap:28px;padding-right:46px;margin-bottom:28px}.wizard-head>div>span,.confirm-modal>span{font:600 9px 'IBM Plex Mono',monospace;letter-spacing:.12em;color:var(--forest)}.wizard-head h2,.confirm-modal h2{max-width:420px;margin:9px 0 0;font:500 32px/1.04 'Space Grotesk',sans-serif;letter-spacing:-.035em}
.wizard-head ol{display:flex;gap:18px;list-style:none;margin:6px 0 0;padding:0;counter-reset:steps}.wizard-head li{color:#9aa198;font:600 10px 'IBM Plex Mono',monospace}.wizard-head li::before{counter-increment:steps;content:counter(steps);display:grid;place-items:center;width:22px;height:22px;margin:0 auto 6px;border:1px solid var(--line);border-radius:50%}.wizard-head li.current{color:var(--ink)}.wizard-head li.current::before{border-color:var(--ink);background:var(--ink);color:#fff}.wizard-head li.done::before{content:'✓';background:var(--mint);border-color:#bdd3b3;color:var(--forest)}
.wizard-step{display:none;border:0;padding:0;margin:0}.wizard-step.current{display:block}.wizard-step legend{width:100%;margin-bottom:18px;font:700 15px 'Space Grotesk',sans-serif}
.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px}.mode-switch input,.rule-options input{position:absolute;width:1px;height:1px;margin:0;opacity:0;clip-path:inset(50%)}.mode-switch span{display:block;padding:12px;border:1px solid var(--line);border-radius:9px;text-align:center;cursor:pointer;font:600 12px 'Space Grotesk',sans-serif}.mode-switch input:checked+span{border-color:#7ea66c;background:#edf5e8;color:var(--forest)}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.wizard-step>label,.field-grid label{display:grid;gap:7px;margin-top:14px;color:#4e594d;font:600 11px 'Space Grotesk',sans-serif}.wizard-step input,.wizard-step select{width:100%;height:46px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 12px;color:var(--ink);font-size:13px}.wizard-step input:focus{border-color:#76986a;outline:3px solid #e5efe0}.wizard-step label small{font:400 10px 'Manrope',sans-serif;color:#8b9489}
.rule-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rule-options label>span{min-height:88px;display:grid;align-content:center;gap:6px;padding:15px;border:1px solid var(--line);border-radius:10px;cursor:pointer}.rule-options b{font:700 13px 'Space Grotesk',sans-serif}.rule-options small{font-size:11px;line-height:1.45}.rule-options input:checked+span{border-color:#779a68;background:#f0f6eb;box-shadow:inset 0 0 0 1px #779a68}
.inline-message{min-height:18px;margin:10px 0 0;color:var(--error);font-size:11px}.wizard-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line)}
.text-action{padding:10px 12px;background:transparent;color:var(--muted);font-weight:700}.text-action:hover{color:var(--ink)}
.primary-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 20px;border-radius:9px;background:var(--lime);color:var(--ink);font:700 12px 'Space Grotesk',sans-serif}.primary-action:hover{box-shadow:0 8px 22px rgba(77,110,38,.13);transform:translateY(-1px)}.primary-action:active{transform:translateY(0)}.primary-action.full{width:100%}
.review-card{padding:20px;border:1px solid var(--line);background:#f8faf5}.review-token{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line)}.review-token>span{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:var(--lime);font:700 12px 'Space Grotesk',sans-serif}.review-token div{display:grid;gap:3px}.review-token strong{font:700 15px 'Space Grotesk',sans-serif}.review-token small{font:600 9px 'IBM Plex Mono',monospace}.review-card dl{display:grid;grid-template-columns:1fr 1fr;gap:16px 30px;margin:20px 0 0}.review-card dl div,.confirm-modal dl div{display:grid;gap:5px}.review-card dt,.confirm-modal dt{font:600 9px 'IBM Plex Mono',monospace;color:#899287}.review-card dd,.confirm-modal dd{margin:0;font:600 12px 'Space Grotesk',sans-serif;overflow-wrap:anywhere}
.truth-note{display:flex;gap:10px;margin-top:14px;padding:12px;background:#fff3ef;color:#704238}.truth-note svg{width:18px;flex:0 0 18px;color:#704238}.truth-note p{margin:0;color:#6b4037;font-size:11px;line-height:1.55}.publish-error{margin-top:9px;text-align:left}

.page-main,.market-main{min-height:calc(100vh - 140px);padding-top:38px}
.page-title{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding-bottom:34px;border-bottom:1px solid var(--line)}.page-title h1{max-width:700px;margin:0;font:500 clamp(34px,4vw,52px)/.98 'Space Grotesk',sans-serif;letter-spacing:-.045em}.page-title p{max-width:690px;margin:14px 0 0;color:var(--muted);font-size:13px;line-height:1.65}.ledger-key{display:flex;gap:16px;flex-wrap:wrap}.ledger-key span{display:flex;align-items:center;gap:6px;color:var(--muted);font:500 9px 'IBM Plex Mono',monospace}.ledger-key i{width:7px;height:7px;border-radius:50%}.ledger-key .local{background:var(--lime)}.ledger-key .chain{background:#5b9750}
.ledger-toolbar{display:flex;justify-content:space-between;align-items:center;margin-top:22px}.ledger-toolbar .panel-tabs{height:auto;padding:4px;border:1px solid var(--line);border-radius:10px;background:#edf0e9}.log-panel{margin-top:12px;border-radius:13px;background:var(--paper);box-shadow:none}.log-head,.log-row{grid-template-columns:145px minmax(210px,1fr) 130px 90px 80px;padding:17px 20px;font:500 10px 'IBM Plex Mono',monospace}.log-head{font-size:8px;letter-spacing:.08em}.log-row em{font-style:normal;color:var(--forest)}.log-row>a,.log-row>span:last-child{color:var(--muted);text-decoration:none;font-size:9px}.log-row>a:hover{color:var(--forest)}
.rule-manifest{margin-top:22px;border-top:1px solid var(--line)}.rule-manifest article{display:grid;grid-template-columns:48px minmax(240px,1fr) auto;align-items:center;gap:22px;padding:26px 4px;border-bottom:1px solid var(--line)}.rule-glyph{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:var(--lime);font:700 10px 'Space Grotesk',sans-serif}.rule-glyph.mint{background:var(--mint)}.rule-glyph.coral{background:var(--coral)}.rule-glyph.blue{background:var(--blue)}.rule-manifest h2{margin:0 0 5px;font:700 18px 'Space Grotesk',sans-serif}.rule-manifest p{margin:0;color:var(--muted);font-size:12px}.rule-manifest article>span{font:600 8px 'IBM Plex Mono',monospace;letter-spacing:.09em;color:#899287}.rule-boundaries{display:grid;grid-template-columns:230px 1fr;gap:26px;margin-top:32px;padding:22px 0;border-top:1px solid var(--line)}.rule-boundaries strong{font:700 14px 'Space Grotesk',sans-serif}.rule-boundaries p{margin:0;color:var(--muted);line-height:1.65}

.back-link{display:inline-flex;align-items:center;gap:6px;margin-bottom:25px;color:var(--muted);text-decoration:none;font:700 11px 'Space Grotesk',sans-serif}.back-link svg{width:16px}.back-link:hover{color:var(--ink)}
.loading-state{display:grid;place-items:center;padding:100px 20px;color:var(--muted)}.loading-state span{width:26px;height:26px;border:2px solid var(--line);border-top-color:var(--forest);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-state p{font-size:11px}
.market-identity{display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:14px;padding-bottom:26px;border-bottom:1px solid var(--line)}.market-avatar{width:52px;height:52px;font-size:15px}.identity-line{display:flex;align-items:center;gap:10px}.identity-line h1{margin:0;font:600 30px 'Space Grotesk',sans-serif;letter-spacing:-.035em}.identity-line+p{margin:4px 0 0;color:var(--muted);font-size:12px}.status-pill{padding:5px 7px;border:1px solid #bfd0b7;background:#edf5e8;color:var(--forest);font:600 8px 'IBM Plex Mono',monospace}
.market-workspace{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;margin-top:22px}.market-overview{min-width:0}.directive-hero{padding:28px;border:1px solid var(--line);background:var(--paper)}.directive-hero>span{font:600 8px 'IBM Plex Mono',monospace;letter-spacing:.12em;color:var(--forest)}.directive-hero h2{max-width:700px;margin:14px 0 9px;font:500 clamp(30px,4vw,50px)/1 'Space Grotesk',sans-serif;letter-spacing:-.045em}.directive-hero>p{max-width:650px;margin:0 0 28px;color:var(--muted);line-height:1.65}.directive-tape.large{justify-content:flex-start;padding-inline:16px;border:1px solid var(--line);background:#f4f7f0;overflow:auto}
.market-facts{display:grid;grid-template-columns:1fr 1fr;margin:0;border:1px solid var(--line);border-top:0;background:var(--paper)}.market-facts div{display:grid;gap:6px;padding:18px 20px;border-bottom:1px solid var(--line)}.market-facts div:nth-child(odd){border-right:1px solid var(--line)}.market-facts div:nth-last-child(-n+2){border-bottom:0}.market-facts dt{font:600 8px 'IBM Plex Mono',monospace;letter-spacing:.08em;color:#8b9489}.market-facts dd{margin:0;font:600 12px 'Space Grotesk',sans-serif;overflow-wrap:anywhere}
.receipt-preview{margin-top:22px;border:1px solid var(--line);background:var(--paper)}.receipt-preview>div:first-child{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line)}.receipt-preview h3{margin:0;font:700 13px 'Space Grotesk',sans-serif}.receipt-preview a{color:var(--forest);font-size:10px;font-weight:700}.receipt-preview #detail-receipts>div{display:grid;grid-template-columns:1fr 120px 70px;gap:12px;padding:14px 18px;border-bottom:1px solid #e9ece6;font:500 10px 'IBM Plex Mono',monospace}.receipt-preview #detail-receipts>div:last-child{border-bottom:0}.receipt-preview em{color:var(--forest);font-style:normal}.receipt-empty{display:block!important;color:var(--muted);text-align:center}
.trade-panel{position:sticky;top:96px;align-self:start;padding:20px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 18px 44px rgba(29,44,27,.06)}.trade-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;border:1px solid var(--line);border-radius:10px;background:#edf0e9}.trade-tabs button{height:36px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-weight:700;cursor:pointer}.trade-tabs button.selected{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(24,36,23,.08)}.trade-panel>label{display:grid;gap:8px;margin-top:20px;color:#667064;font:600 10px 'Space Grotesk',sans-serif}.amount-input{display:flex;align-items:center;height:54px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 13px}.amount-input:focus-within{border-color:#76986a;outline:3px solid #e5efe0}.amount-input input{min-width:0;flex:1;border:0;outline:0;font:600 22px 'Space Grotesk',sans-serif}.amount-input span{font:600 10px 'IBM Plex Mono',monospace}.quote-lines{display:grid;gap:11px;margin:18px 0;padding:16px 0;border-block:1px solid var(--line)}.quote-lines span{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px}.quote-lines b{color:var(--ink);font:600 10px 'IBM Plex Mono',monospace;text-align:right}.trade-warning{display:grid;gap:3px;margin-bottom:16px;padding:11px;background:#fff3ef;color:#71463c}.trade-warning strong{font-size:10px}.trade-warning span{font-size:9px}
.confirm-modal{width:min(480px,100%)}.confirm-modal h2{margin-bottom:22px}.confirm-modal #trade-summary{padding:18px;border:1px solid var(--line);background:#f8faf5}.confirm-modal dl{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:0}.confirm-modal>p{color:var(--muted);font-size:10px;text-align:center}.standalone{margin-top:50px;border:1px solid var(--line);background:var(--paper)}

footer{position:static;margin-top:auto;padding:20px clamp(20px,5vw,72px);background:#e9eee5;color:#7d867c;font:500 9px 'IBM Plex Mono',monospace}footer a{color:inherit;text-decoration:none}footer a:hover{color:var(--ink)}
#toast{position:fixed;right:24px;bottom:24px;z-index:50;max-width:360px;padding:13px 16px;border-radius:10px;background:var(--ink);color:#fff;box-shadow:0 16px 42px rgba(15,23,14,.24);font-size:12px;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .18s ease,transform .18s ease}#toast.show{opacity:1;transform:translateY(0)}#toast[data-type="success"]{background:var(--forest)}#toast[data-type="error"]{background:#7b3329}

@media(max-width:850px){
  .top{padding-inline:18px}.logo{min-width:0}.wordmark small,.network-dot{display:none}.nav-pill{position:static;transform:none;margin-left:auto}.top-actions{margin-left:8px}.top button{padding:0 13px}
  main{width:min(100% - 28px,720px)}.market-row{grid-template-columns:38px minmax(150px,1fr) 80px 20px}.market-row>div:nth-child(4),.market-row>div:nth-child(5){display:none}
  .market-workspace{grid-template-columns:1fr}.trade-panel{position:static}.log-head,.log-row{grid-template-columns:110px 1fr 90px 70px}.log-head>*:last-child,.log-row>*:last-child{display:none}
}
@media(max-width:560px){
  body{font-size:16px}.top{height:auto;min-height:72px;display:grid;grid-template-columns:1fr auto;gap:10px;padding-block:10px}.nav-pill{grid-row:2;grid-column:1/-1;width:100%;order:3}.nav-pill a{flex:1;min-width:0}.top-actions{margin:0}.top button{min-height:42px}.markets-main,.page-main,.market-main{padding-top:18px;padding-bottom:48px}
  .network-banner{align-items:flex-start}.network-banner p{display:none}.toolbar{display:grid;grid-template-columns:1fr}.secondary-action{justify-content:center}.heading{align-items:flex-start;gap:20px}.stats{width:100%}
  .panel-tabs{overflow:auto}.panel-note{display:none}.market-grid{padding-inline:12px}.market-row{grid-template-columns:36px minmax(0,1fr) 66px 18px;gap:10px;min-height:72px}.market-row>div:nth-child(3){display:grid}.market-name strong{font-size:13px}.market-name span{font-size:10px}.directive-tape{gap:8px}.directive-tape i{width:18px}
  .create-modal,.confirm-modal{padding:22px 18px;border-radius:14px}.modal-close{right:14px;top:14px}.wizard-head{display:block;padding-right:38px}.wizard-head h2{font-size:27px}.wizard-head ol{margin-top:20px}.wizard-head li{flex:1;text-align:center}.field-grid,.rule-options,.review-card dl,.confirm-modal dl{grid-template-columns:1fr}.rule-options label>span{min-height:76px}.wizard-step input{font-size:16px}
  .page-title{display:block}.page-title h1{font-size:38px}.page-title .primary-action,.ledger-key{margin-top:22px}.rule-manifest article{grid-template-columns:42px 1fr}.rule-manifest article>span{grid-column:2}.rule-boundaries{grid-template-columns:1fr}.ledger-toolbar{align-items:flex-end}.log-head,.log-row{grid-template-columns:88px minmax(0,1fr) 70px;padding:14px 11px;gap:8px}.log-head>*:nth-child(4),.log-row>*:nth-child(4){display:none}.log-row{font-size:8px}
  .market-identity{grid-template-columns:46px 1fr}.identity-actions{grid-column:2}.identity-line{align-items:flex-start;flex-direction:column;gap:5px}.identity-line h1{font-size:25px}.directive-hero{padding:22px 18px}.directive-hero h2{font-size:34px}.market-facts{grid-template-columns:1fr}.market-facts div{border-right:0!important;border-bottom:1px solid var(--line)!important}.market-facts div:last-child{border-bottom:0!important}.receipt-preview #detail-receipts>div{grid-template-columns:1fr auto}.receipt-preview em{display:none}
  footer{display:flex;flex-wrap:wrap;gap:8px 18px}footer span:nth-child(2){order:0}
}

/* v086 - soft product canvas inspired by the approved motion reference */
:root{
  --bg:#f7f6f1;
  --paper:#fffefa;
  --ink:#1d211e;
  --muted:#737b75;
  --soft:#959d97;
  --line:#dfe3dd;
  --lime:#8fd16d;
  --mint:#eaf3e6;
  --coral:#ee8b76;
  --blue:#e9eff8;
  --forest:#2c5f3a;
  --focus:#527d60;
  --display:'Space Grotesk','Microsoft YaHei',sans-serif;
}
html,body{background:var(--bg)}
body{overflow-x:clip;font-family:'Manrope','Microsoft YaHei',sans-serif;font-weight:400}
::selection{background:#dbeaca;color:var(--ink)}

.top{
  height:72px;
  padding-inline:clamp(20px,5vw,72px);
  border-bottom:1px solid rgba(75,87,78,.13);
  background:rgba(247,246,241,.92);
  backdrop-filter:blur(18px);
}
.logo{gap:10px}.logo span.logo-mark{width:32px;height:32px;border-radius:10px}
.wordmark{font:600 13px var(--display);letter-spacing:.025em}.wordmark small{font:500 7px 'IBM Plex Mono',monospace;color:#7c847e}
.nav-pill{gap:3px;padding:4px;border:1px solid #dfe3dd;border-radius:12px;background:#eeefe9}
.nav-pill a{
  min-width:72px;
  padding:8px 13px;
  border:0;
  border-radius:8px;
  color:#747c76;
  font:500 11px var(--display);
}
.nav-pill a.active,.nav-pill a:hover{border:0;background:#fff;color:var(--ink);box-shadow:0 3px 12px rgba(34,45,36,.07)}
.top button{min-height:40px;border:0;border-radius:10px;background:var(--ink);color:#fff;font:600 11px var(--display)}
.top button:hover{background:#2b332d;box-shadow:0 7px 20px rgba(29,33,30,.12)}
.top button.connected{border:0;background:var(--forest)}
.network-dot{font-size:9px}

main{width:min(1180px,calc(100% - 40px));padding:28px 0 72px}
.markets-main{padding-top:18px}
.network-banner{
  min-height:40px;
  margin-bottom:16px;
  padding:9px 14px;
  border:1px solid #d6e1d2;
  border-radius:10px;
  background:#edf4e9;
  color:var(--forest);
}
.network-banner div{color:var(--forest)}.network-banner p{color:#6f7d70}.pulse{background:#68b45f;box-shadow:0 0 0 4px rgba(104,180,95,.14)}
.toolbar{gap:12px}.search,.secondary-action{height:46px;border:1px solid var(--line);border-radius:11px;background:rgba(255,254,250,.92)}
.search:focus-within{border-color:#98b49e;box-shadow:0 0 0 3px rgba(96,142,106,.1)}
.search kbd{border-radius:5px;background:#f6f6f2;color:#858d87}.secondary-action{border-color:#cfd6ce;color:var(--ink)}
.secondary-action:hover{border-color:#aeb9ae;background:#fff}

.heading.market-hero{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);
  align-items:stretch;
  gap:18px;
  margin:20px 0 22px;
  padding:0;
  border:0;
}
.hero-product{
  min-height:220px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:24px;
  border:1px solid #d7ddd7;
  border-radius:16px;
  background:
    radial-gradient(circle at 80% 14%,rgba(143,209,109,.16),transparent 24%),
    linear-gradient(145deg,#fffefa,#f0f2ec);
  box-shadow:0 18px 50px rgba(39,53,43,.06);
  overflow:hidden;
  position:relative;
}
.hero-product::after{
  content:'';
  position:absolute;
  width:160px;height:160px;
  right:-68px;bottom:-88px;
  border:1px solid rgba(96,121,101,.2);
  border-radius:50%;
}
.hero-product-head,.hero-product-foot{display:flex;justify-content:space-between;gap:16px;color:#7f8981;font:500 8px 'IBM Plex Mono',monospace;letter-spacing:.1em}
.hero-product-head b{font-weight:500;color:var(--forest)}
.route-line{display:flex;align-items:center;gap:10px;position:relative;z-index:1}
.route-line span,.route-line strong{
  flex:0 0 auto;
  padding:8px 11px;
  border:1px solid #d9ded8;
  border-radius:999px;
  background:#fffefa;
  color:#626a64;
  font:500 9px 'IBM Plex Mono',monospace;
}
.route-line strong{border-color:#9fc49e;background:#eaf4e6;color:#285c37;font-weight:600}
.route-line i{height:1px;flex:1;background:#bfc8bf;position:relative}
.route-line i::after{content:'';position:absolute;right:0;top:-2px;width:5px;height:5px;border-top:1px solid #96a097;border-right:1px solid #96a097;transform:rotate(45deg)}
.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:24px 22px}
.hero-kicker{color:#68816e;font:500 8px 'IBM Plex Mono',monospace;letter-spacing:.13em}
.heading.market-hero h1{max-width:430px;margin:12px 0 10px;font:500 clamp(34px,4vw,52px)/.96 var(--display);letter-spacing:-.052em;text-wrap:balance}
.heading.market-hero p{max-width:460px;margin:0;color:var(--muted);font-size:12px;line-height:1.65}
.heading.market-hero .stats{margin-top:24px;padding:0;border:0;text-align:left}
.stats span{color:#8b938d}.stats strong{font:500 17px var(--display)}

.market-panel{border:1px solid #dce1da;border-radius:16px;background:rgba(255,254,250,.96);box-shadow:0 24px 60px rgba(40,52,43,.055)}
.panel-tabs{height:56px;padding:0 18px;border-bottom:1px solid var(--line)}
.panel-tabs button{padding:8px 12px;border:0;border-radius:8px;color:#818983;font:500 11px var(--display)}
.panel-tabs button.selected{border:0;background:#edf1ea;color:var(--ink);box-shadow:none}
.panel-tabs button:hover{background:#f2f3ee;color:var(--ink)}
.market-grid{padding:0 18px}.market-row{min-height:76px;padding:14px 8px;border-bottom-color:#e9ece7;transition:background-color .16s ease,transform .16s ease}
.market-row:hover{background:#f8f9f5;transform:translateX(3px)}
.market-name strong{font:600 13px var(--display)}.market-name span{color:#78817a}
.market-row small{color:#8c948e}.market-row b{font-weight:500}
.directive-tape{min-height:46px;border-top:1px solid var(--line);background:#f4f6f1;color:#707871}
.directive-tape i{background:#c2cac2}.directive-tape i::after{border-color:#98a198}

.page-main,.market-main{padding-top:34px}
.page-title{padding:30px 0 34px;border-bottom:1px solid var(--line)}
.page-title h1{font:500 clamp(36px,4vw,50px)/.98 var(--display);letter-spacing:-.05em}
.page-title p{color:var(--muted)}
.page-title .primary-action,.primary-action{border:0;border-radius:10px;background:var(--ink);color:#fff}
.primary-action:hover{background:#2b332d;box-shadow:0 8px 22px rgba(29,33,30,.12)}
.ledger-toolbar .panel-tabs{gap:3px;padding:4px;border:1px solid var(--line);border-radius:10px;background:#eeefe9}
.ledger-toolbar .panel-tabs button{padding:8px 12px;border:0;border-radius:7px}
.ledger-toolbar .panel-tabs button.selected{border:0;background:#fff;box-shadow:0 2px 8px rgba(28,38,30,.07)}
.log-panel{border:1px solid var(--line);border-radius:14px;background:var(--paper);overflow:hidden}
.log-head{background:#f1f3ee;color:#7d857f}.log-row{border-bottom-color:#e8ebe6}
.rule-manifest{border-top:1px solid var(--line)}
.rule-manifest article{padding:25px 6px}
.rule-manifest article:hover{background:rgba(255,254,250,.6)}
.rule-glyph,.rule-glyph.mint,.rule-glyph.coral,.rule-glyph.blue{width:42px;height:42px;border:0;border-radius:12px}
.rule-glyph{background:#e8f2e4;color:#315f3d}.rule-glyph.mint{background:#e6f1ec}.rule-glyph.coral{background:#fae4de;color:#805045}.rule-glyph.blue{background:#e8eef7;color:#4c607c}
.rule-manifest article>span{padding:0;border:0;background:transparent;color:#89918b}
.rule-boundaries{grid-template-columns:210px 1fr;margin-top:30px;padding:22px;border:1px solid #dce1da;border-radius:14px;background:#eef1eb;color:var(--ink)}
.rule-boundaries p{color:var(--muted)}

.create-modal,.confirm-modal{border:1px solid #d9dfd8;border-radius:18px;background:#fffefa}
.icon-button{border-radius:10px}.mode-switch span,.wizard-step input,.wizard-step select,.rule-options label>span{border-radius:10px}
.mode-switch input:checked+span,.rule-options input:checked+span{border-color:#91b18e;background:#edf5ea;color:var(--forest);box-shadow:none}
.mode-switch input:focus+span,.mode-switch input:focus-visible+span,.rule-options input:focus+span,.rule-options input:focus-visible+span{outline:3px solid rgba(82,125,96,.28);outline-offset:3px}
.review-card,.resolved-token,.trade-panel,.trade-tabs,.amount-input{border-radius:12px}
.trade-panel{border-color:#dce1da}.truth-note,.trade-warning{border:0;border-radius:9px}
.directive-hero,.market-facts,.receipt-preview{border-color:var(--line);background:var(--paper)}
.directive-hero{border-radius:14px 14px 0 0}
.receipt-preview{border-radius:14px;overflow:hidden}
.directive-tape.large{border-color:var(--line);border-radius:10px;background:#f4f6f1}

footer{border-top:1px solid #d9ded8;background:#edf0e9;color:#788078}
footer a{color:#53655a}

.wordmark,.nav-pill a,.top button,.secondary-action,.primary-action,
.heading h1,.market-name strong,.panel-tabs button,.empty-state strong,
.wizard-head h2,.wizard-step legend,.mode-switch span,.rule-options b,
.page-title h1,.rule-manifest h2,.rule-boundaries strong,.back-link,
.identity-line h1,.directive-hero h2,.receipt-preview h3,.trade-tabs button,
.amount-input input,.review-token strong,.review-card dd,.confirm-modal h2,
.confirm-modal dd{font-family:var(--display)}

@media(max-width:850px){
  .heading.market-hero{grid-template-columns:1fr}.hero-copy{padding:18px 8px 6px}.hero-product{min-height:190px}
}
@media(max-width:560px){
  .top{display:flex;flex-wrap:wrap;padding:10px 14px;gap:10px 12px}.logo{flex:1 1 150px;min-width:0}.top-actions{flex:0 0 auto;margin:0}.top-actions #connect{max-width:142px;padding-inline:12px;white-space:nowrap}.nav-pill{position:static;left:auto;order:3;flex:0 0 100%;width:100%;margin:0;transform:none;border:1px solid var(--line);gap:3px}.nav-pill a{flex:1;min-width:0;padding:9px 8px;border:0}.wordmark small{display:none}
  main{width:min(100% - 28px,720px)}.network-banner{border-radius:9px}.heading.market-hero{margin-top:16px;gap:6px}.hero-product{min-height:164px;padding:18px;border-radius:13px}.hero-product-head,.hero-product-foot{font-size:7px}.route-line{gap:5px}.route-line span,.route-line strong{padding:7px 8px;font-size:7px}.heading.market-hero h1{max-width:330px;font-size:38px}.heading.market-hero p{font-size:12px}.heading.market-hero .stats{padding:0;border:0}
  .market-panel,.log-panel{border-radius:12px}.market-grid{padding-inline:10px}.page-title{padding-top:18px}.page-title h1{font-size:36px}.rule-boundaries{grid-template-columns:1fr;padding:18px}
  .toolbar,.market-hero,.hero-product,.hero-copy,.market-panel{min-width:0;max-width:100%}.hero-product{overflow:hidden}.hero-product-head b{display:none}.route-line{width:100%}.route-line i{min-width:8px}.hero-product-foot span:last-child{white-space:nowrap}.heading.market-hero p{overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

.logo-mark,.market-icon,.market-avatar,.review-token>span{overflow:hidden;padding:0}
.logo-mark img,.market-icon img,.market-avatar img,.review-token>span img{display:block;width:100%;height:100%;object-fit:cover}
.logo span.logo-mark{background:transparent}
.market-icon{background:#edf1e9;box-shadow:inset 0 0 0 1px rgba(18,23,18,.06)}
.market-avatar{background:#edf1e9;box-shadow:inset 0 0 0 1px rgba(18,23,18,.08)}

/* v090 - product-specific Trigger identity */
.logo{
  min-width:196px;
  gap:11px;
  color:var(--ink);
}
.logo span.logo-mark{
  width:38px;
  height:32px;
  flex:0 0 38px;
  border-radius:0;
  box-shadow:none;
  transition:transform .18s cubic-bezier(.2,.8,.2,1);
}
.logo-mark img{border-radius:0}
.logo:hover .logo-mark{
  transform:translateX(3px);
  box-shadow:none;
}
.wordmark{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
  color:var(--ink);
  font:650 14px/1 var(--display);
  letter-spacing:.045em;
}
.logo span.wordmark{
  width:auto;
  height:auto;
  place-items:initial;
  border-radius:0;
  background:transparent;
}
.wordmark small{
  display:block;
  color:#727a74;
  font:500 7px/1.2 'IBM Plex Mono',monospace;
  letter-spacing:.12em;
  white-space:nowrap;
}
.logo:focus-visible{outline:3px solid rgba(82,125,96,.24);outline-offset:5px;border-radius:10px}
@media(max-width:560px){
  .logo{min-width:0;gap:9px}.logo span.logo-mark{width:32px;height:32px;flex-basis:32px}.wordmark{font-size:13px}
}

/* v096 — approved pure Trigger wordmark */
.logo{min-width:196px;gap:0}
.logo .wordmark{gap:4px;font-family:'Space Grotesk',sans-serif}
.logo .brand-line{display:block;width:auto;height:auto;place-items:initial;border-radius:0;background:transparent;color:var(--ink);font:700 20px/.82 'Space Grotesk',sans-serif;letter-spacing:-.055em;white-space:nowrap}
.logo .brand-line i{display:inline-block;margin-left:2px;color:#78bd00;font-style:normal;transition:transform .18s cubic-bezier(.16,1,.3,1)}
.logo:hover .brand-line i{transform:translateY(-2px)}
.logo .wordmark small{letter-spacing:.135em}
@media(max-width:560px){.logo{min-width:0;gap:0}.logo .brand-line{font-size:18px}}

.top-actions{position:relative}
.wallet-menu{position:absolute;right:0;top:calc(100% + 10px);z-index:30;padding:5px;border:1px solid rgba(18,23,18,.09);border-radius:12px;background:#191c19;box-shadow:0 14px 36px rgba(12,18,12,.2),0 2px 7px rgba(12,18,12,.1);opacity:0;visibility:hidden;transform:translateY(-4px) scale(.98);transform-origin:top right;transition:opacity .14s ease,transform .14s cubic-bezier(.2,0,0,1),visibility .14s}
.wallet-menu::before{content:'';position:absolute;right:20px;top:-4px;width:8px;height:8px;background:#191c19;transform:rotate(45deg)}
.wallet-menu.open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}
.top .wallet-menu button{position:relative;width:100%;min-height:42px;display:grid;grid-template-columns:22px 1fr;align-items:center;gap:8px;padding:7px 9px;border:0;border-radius:7px;background:transparent;color:#f6f8f3;text-align:left;box-shadow:none;transform:none;font-family:'Manrope',sans-serif;white-space:nowrap}
.top .wallet-menu button:hover{background:#282c28;box-shadow:none;transform:none}
.top .wallet-menu button:active{transform:scale(.96)}
.wallet-menu button svg{width:18px;height:18px;color:#ff8f79;stroke-width:1.8}
.wallet-menu button b{font:700 11px 'Space Grotesk',sans-serif}
#connect.connected{padding-right:16px}
#connect.connected::after{content:'';display:inline-block;width:6px;height:6px;margin-left:9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .14s ease}
#connect.connected[aria-expanded="true"]::after{transform:translateY(1px) rotate(225deg)}
@media(max-width:560px){.wallet-menu{right:0;top:calc(100% + 8px)}}
.network-dot.warning{cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}

.token-lookup{min-height:28px;display:flex;align-items:center;gap:8px;margin-top:2px;padding:7px 9px;border-radius:7px;font:600 9px 'IBM Plex Mono',monospace}
.token-lookup[hidden]{display:none}
.token-lookup.loading,.token-lookup.pending{background:#f0f3ed;color:#687267}
.token-lookup.success{background:#e8f4e2;color:#32652c}
.token-lookup.error{background:#fff0eb;color:#913e31}
.token-lookup i{width:12px;height:12px;flex:0 0 12px;border:1.5px solid #aeb7aa;border-top-color:var(--forest);border-radius:50%;animation:spin .7s linear infinite}
.token-lookup span{overflow-wrap:anywhere}

.wizard-step [hidden]{display:none!important}
.token-mode-panel{margin-top:4px}
.token-mode-panel>label{display:grid;gap:7px;margin-top:14px;color:#4e594d;font:600 11px 'Space Grotesk',sans-serif}
.resolved-token{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;margin-top:12px;padding:13px;border:1px solid #c9dac1;border-radius:10px;background:#eef6e9}
.resolved-token>span{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:var(--lime);font:700 11px 'Space Grotesk',sans-serif}
.resolved-token>div{display:grid;gap:3px;min-width:0}.resolved-token strong{font:700 13px 'Space Grotesk',sans-serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resolved-token small{font:600 9px 'IBM Plex Mono',monospace;color:#557050}.resolved-token>b{font:600 9px 'IBM Plex Mono',monospace;color:#557050}
.launch-route{margin-top:16px;padding:14px 15px;border:1px solid #cbd7c6;background:#f0f5ed}
.launch-route span{font:600 8px 'IBM Plex Mono',monospace;letter-spacing:.1em;color:var(--forest)}
.launch-route p{margin:6px 0 0;color:#5f6b5d;font-size:11px}
.sale-rule-summary{display:grid;gap:6px;padding:16px 18px;border-left:3px solid var(--lime);background:#f1f5ed}
.sale-rule-summary span{font:600 8px 'IBM Plex Mono',monospace;letter-spacing:.12em;color:#527347}
.sale-rule-summary strong{font:600 17px 'Space Grotesk',sans-serif;color:var(--ink)}
.sale-rule-summary p{margin:0;max-width:560px;text-align:left;color:#657061;font-size:11px;line-height:1.55}
.sale-fields{margin-top:4px}
.inline-message a{color:inherit;font-weight:700;text-underline-offset:3px}
.create-modal .publish-error{color:var(--error)}
@media(max-width:560px){.resolved-token{grid-template-columns:42px 1fr}.resolved-token>b{grid-column:2}.launch-route p{line-height:1.55}}
.amount-input input:disabled{background:transparent;color:#a1a8a0;cursor:not-allowed}

/* Deliberately iconless token presentation */
.market-row{grid-template-columns:minmax(220px,1.6fr) minmax(90px,.65fr) minmax(100px,.75fr) minmax(100px,.7fr) 20px;padding-inline:10px}
.market-identity{grid-template-columns:1fr auto}
.review-token{display:block}
.review-token>div{gap:4px}
@media(max-width:850px){.market-row{grid-template-columns:minmax(150px,1fr) 80px 20px}.market-row>div:nth-child(3),.market-row>div:nth-child(4){display:none}}
@media(max-width:560px){.market-row{grid-template-columns:minmax(0,1fr) 66px 18px}.market-row>div:nth-child(2){display:grid}.market-row>div:nth-child(3),.market-row>div:nth-child(4){display:none}}

/* Match the denser, easier-to-read 125% desktop composition */
@media(min-width:1000px){body{zoom:1.25!important}}


