:root{--bg:#f5f7f6;--surface:#fff;--surface-strong:#eef4f1;--ink:#17211e;--muted:#5d6b66;--line:#d8e1dd;--teal:#087f6f;--teal-dark:#056458;--amber:#b7791f;--red:#b42318;--blue:#2459a6;--shadow:0 18px 45px rgba(23,33,30,.08)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;letter-spacing:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;letter-spacing:0}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}.shell{min-height:100vh}.topbar{background:hsla(0,0%,100%,.94);border-bottom:1px solid var(--line);display:grid;grid-gap:16px;gap:16px;grid-template-columns:auto 1fr auto;left:0;padding:14px clamp(16px,4vw,48px);position:-webkit-sticky;position:sticky;right:0;top:0;z-index:10}.brand,.topbar{align-items:center}.brand{display:inline-flex;height:42px;width:150px}.brand-logo{display:block;height:auto;max-height:42px;object-fit:contain;object-position:left center;width:150px}.nav{align-items:center;display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.danger,.ghost,.nav a,.primary,.secondary,.wallet-button{align-items:center;border-radius:8px;display:inline-flex;gap:8px;justify-content:center;min-height:42px;padding:0 14px;transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}.nav a{color:var(--muted);font-size:14px}.nav a:hover{background:var(--surface-strong);color:var(--ink)}.ghost,.secondary,.wallet-button{background:var(--surface);border:1px solid var(--line);color:var(--ink)}.wallet-button.connected{border-color:rgba(8,127,111,.35);color:var(--teal-dark)}.primary{background:var(--teal);border:1px solid var(--teal);color:#fff;font-weight:700}.primary:hover{background:var(--teal-dark)}.ghost:hover,.secondary:hover{background:var(--surface-strong)}.danger{background:#fff4f2;border:1px solid #f3b8b1;color:var(--red);font-weight:700}.small{min-height:38px;padding-inline:12px}.global-warning{background:#fff8ea;border-bottom:1px solid #eed8a8;color:#6c470c;font-size:14px;padding:10px clamp(16px,4vw,48px);text-align:center}main{margin:0 auto;max-width:1180px;padding:32px clamp(16px,4vw,48px) 72px}.page-stack{display:grid;grid-gap:28px;gap:28px}.home-hero{align-items:center;display:grid;grid-gap:32px;gap:32px;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);min-height:520px}.hero-copy{display:grid;grid-gap:18px;gap:18px}.eyebrow{color:var(--teal-dark);font-size:13px;font-weight:800;margin:0;text-transform:uppercase}h1,h2,h3,p{margin:0}h1{font-size:clamp(40px,6vw,72px);line-height:.98;max-width:760px}h2{font-size:26px}h3{font-size:18px}p{color:var(--muted);line-height:1.6}.hero-copy>p:not(.eyebrow){font-size:20px;max-width:680px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.market-visual{background:var(--surface);box-shadow:var(--shadow);grid-gap:14px;gap:14px}.market-visual,.visual-node{border:1px solid var(--line);border-radius:8px;display:grid;padding:18px}.visual-node{align-items:center;font-weight:800;grid-gap:10px;gap:10px;grid-template-columns:34px 1fr;min-height:84px}.visual-node.collateral{background:#eef8f6;color:var(--teal-dark)}.visual-node.bid{background:#f2f6fb;color:var(--blue)}.visual-node.default{background:#fff8ea;color:var(--amber)}.visual-arrow{background:var(--line);height:28px;margin-left:34px;width:2px}.data-panel,.form-panel,.warning-panel{background:var(--surface);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.warning-panel{align-items:start;display:grid;grid-gap:14px;gap:14px;grid-template-columns:28px 1fr;padding:22px}.warning-panel svg{color:var(--amber)}.feature-grid,.loan-grid,.request-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.feature-grid>div,.loan-card,.request-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:10px;gap:10px;padding:18px}.page-header{display:grid;grid-gap:10px;gap:10px;margin-bottom:24px}.page-header h1{font-size:clamp(34px,5vw,52px)}.data-panel,.form-panel{display:grid;grid-gap:18px;gap:18px;padding:22px}.form-grid,.inline-form{display:grid;grid-gap:14px;gap:14px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}label{color:var(--ink);display:grid;font-size:14px;font-weight:800;grid-gap:8px;gap:8px}input,select,textarea{background:#fbfdfc;border:1px solid var(--line);border-radius:8px;color:var(--ink);min-height:44px;padding:10px 12px;width:100%}textarea{min-height:92px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:rgba(8,127,111,.7);outline:3px solid rgba(8,127,111,.14)}.form-actions{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}.form-message{color:var(--teal-dark);font-size:14px;font-weight:700}.hint{color:var(--muted);font-size:13px}.token-preview{border-bottom:1px solid rgba(8,127,111,.22);border-top:1px solid rgba(8,127,111,.22);display:grid;grid-gap:12px;gap:12px;padding:16px 0}.token-preview,.token-preview span{color:var(--teal-dark)}.collateral-value-preview{border-top:2px solid var(--teal);display:grid;grid-gap:8px;gap:8px;padding-top:16px}.collateral-value-preview>span:first-child{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.collateral-value-preview strong{font-size:26px}.collateral-value-preview>small{color:var(--muted);font-size:12px}.analytics-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.metadata-loading{color:var(--muted);font-size:14px;padding:12px 0}.metadata-loading.compact{font-size:12px;padding:0}.collateral-badge{border:1px solid transparent;border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;justify-self:start;padding:5px 9px;white-space:nowrap}.collateral-bluechip{background:#eef4fb;border-color:#bfd0e8;color:#2459a6}.collateral-established{background:#edf8f1;border-color:#b7ddc3;color:#176c35}.collateral-longtail{background:#fff7e8;border-color:#ecd09b;color:#98620f}.collateral-unlisted{background:#fff1ef;border-color:#efbbb5;color:#a62b20}.discovery-controls{border-bottom:1px solid var(--line);border-top:1px solid var(--line);display:grid;grid-gap:14px;gap:14px;margin-bottom:22px;padding:18px 0}.search-control{align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:8px;gap:8px;grid-template-columns:auto 1fr auto;padding:0 12px}.search-control input{background:transparent;border:0;outline:0}.search-control input:focus{outline:0}.icon-button{align-items:center;background:transparent;border:0;color:var(--muted);display:inline-flex;height:34px;justify-content:center;padding:0;width:34px}.filter-row{align-items:end;display:grid;grid-gap:14px;gap:14px;grid-template-columns:1fr minmax(210px,auto) auto}.classification-filters{border:0;display:flex;flex-wrap:wrap;gap:8px 16px;margin:0;min-width:0;padding:0}.classification-filters legend{color:var(--muted);font-size:12px;font-weight:800;margin-bottom:8px;text-transform:uppercase;width:100%}.check-label{align-items:center;display:inline-flex;flex-direction:row;font-weight:700;gap:7px}.check-label input{min-height:auto;width:auto}.sort-control{min-width:210px}.request-discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.request-card-heading{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.token-symbol{color:var(--teal-dark);font-size:13px;font-weight:800;text-transform:uppercase}.token-address{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px}.meta-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.meta{border-top:1px solid var(--line);display:grid;grid-gap:4px;gap:4px;min-width:0;padding:10px 0}.meta span:first-child{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.meta span:last-child{font-weight:800;overflow-wrap:anywhere}.status{border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;justify-self:start;padding:5px 9px}.status-0{background:#eef8f6;color:var(--teal-dark)}.status-1,.status-4{background:#fff4f2;color:var(--red)}.status-2{background:#f2f6fb;color:var(--blue)}.status-3{background:#f0f7ee;color:#287a36}.inline-form{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr)) auto;padding-top:14px}.bid-funding-hint,.bid-preview,.inline-form .form-message{grid-column:1/-1}.economics-grid{background:#f7faf9;border-left:3px solid var(--teal);display:grid;grid-gap:10px 16px;gap:10px 16px;grid-template-columns:repeat(3,minmax(0,1fr));padding:14px}.economics-grid>div{display:grid;grid-gap:3px;gap:3px}.economics-grid>div span{color:var(--muted);font-size:11px;font-weight:800;text-transform:uppercase}.economics-note{font-size:12px;grid-column:1/-1}.market-attribution{align-items:center;color:var(--muted);display:inline-flex;font-size:12px;font-weight:700;gap:6px;justify-self:start}.market-attribution:hover{color:var(--ink);text-decoration:underline}.market-attribution img{display:block;height:18px;object-fit:contain;width:18px}.attribution-meta .market-attribution{margin-top:4px}.collateral-value{display:inline-grid;gap:5px}.collateral-value small{color:var(--muted);font-size:11px;font-weight:500}.collateral-value.compact{display:inline}.funding-ready{color:#176c35;font-weight:800}.funding-missing{color:var(--red);font-weight:800}.table-list{display:grid;grid-gap:10px;gap:10px}.bid-row{align-items:center;background:#fbfdfc;border:1px solid var(--line);border-radius:8px;display:grid;grid-gap:12px;gap:12px;grid-template-columns:1fr auto;padding:14px}.bid-row .economics-grid,.bid-row>.hint{grid-column:1/-1}.row-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.empty-state{background:var(--surface);border:1px dashed #afbbb7;border-radius:8px;color:var(--muted);padding:28px;text-align:center}.config-warning{background:#fff4f2;border:1px solid #f3b8b1;border-radius:8px;color:var(--red);font-weight:800;margin-bottom:18px;padding:14px}.portfolio-toolbar{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:14px;justify-content:space-between;margin-bottom:22px;overflow-x:auto;padding-bottom:14px}.portfolio-tabs{display:inline-flex;gap:4px}.portfolio-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;color:var(--muted);font-weight:800;min-height:40px;padding:0 12px;white-space:nowrap}.portfolio-tabs button.active{border-color:var(--teal);color:var(--teal-dark)}.portfolio-message{background:#eef8f6;border-left:3px solid var(--teal);color:var(--teal-dark);font-weight:700;margin-bottom:18px;padding:12px 14px}.portfolio-section{display:grid;grid-gap:28px;gap:28px}.portfolio-stats{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.portfolio-stat{border-top:3px solid var(--teal);display:grid;grid-gap:8px;gap:8px;padding:14px 0}.portfolio-stat span{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.portfolio-stat strong{font-size:30px}.portfolio-stat.urgent{border-color:var(--red);color:var(--red)}.settlement-guide{border-bottom:1px solid var(--line);border-top:1px solid var(--line);display:grid;grid-gap:28px;gap:28px;grid-template-columns:repeat(2,minmax(0,1fr));padding:20px 0}.settlement-guide div{display:grid;grid-gap:6px;gap:6px}.role-badge{background:#eef8f6;color:var(--teal-dark);display:inline-flex;font-size:12px;font-weight:800;padding:5px 8px}.role-badge.lender{background:#eef4fb;color:var(--blue)}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.loan-card.past-due{border-color:#e8a8a0;box-shadow:0 12px 30px rgba(180,35,24,.08)}.history-row{align-items:center;border-bottom:1px solid var(--line);display:grid;grid-gap:14px;gap:14px;grid-template-columns:auto 1fr auto;padding:14px 0}.history-row div{display:grid;grid-gap:3px;gap:3px}.history-row .role-badge{justify-self:start;margin-bottom:3px}.history-intro{border-left:3px solid var(--blue);padding:10px 14px}.transaction-history{grid-column:1/-1}.transaction-toggle{align-items:center;background:transparent;border:0;color:var(--blue);display:inline-flex;font-size:13px;font-weight:800;gap:6px;justify-self:start;padding:2px 0}.transaction-toggle:hover{text-decoration:underline}.transaction-list{border-left:2px solid var(--line);display:grid;grid-gap:0;gap:0;margin-top:8px;padding-left:12px}.transaction-list>a{align-items:center;border-bottom:1px solid var(--line);display:flex;gap:14px;justify-content:space-between;padding:10px 0}.transaction-list>a:last-child{border-bottom:0}.transaction-list>a:hover strong{color:var(--blue)}.transaction-list span{display:grid;grid-gap:3px;gap:3px}.transaction-list small{color:var(--muted)}.transaction-error{color:var(--red)}.toast-region{max-width:min(390px,calc(100vw - 32px));position:fixed;right:20px;top:20px;width:100%;z-index:100}.toast,.toast-region{display:grid;grid-gap:10px;gap:10px}.toast{align-items:start;animation:toast-in .22s ease-out;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:8px;box-shadow:0 16px 40px rgba(23,33,30,.18);grid-template-columns:auto 1fr auto;padding:14px}.toast>div{display:grid;grid-gap:3px;gap:3px}.toast p{font-size:13px;line-height:1.45}.toast-icon{color:var(--teal);margin-top:1px}.toast-dismiss{align-items:center;background:transparent;border:0;color:var(--muted);display:inline-flex;justify-content:center;padding:1px}@keyframes toast-in{0%{opacity:0;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}@media (max-width:900px){.topbar{grid-template-columns:1fr}.nav{justify-content:start}.analytics-grid,.bid-row,.economics-grid,.feature-grid,.filter-row,.form-grid,.history-row,.home-hero,.inline-form,.loan-grid,.meta-grid,.portfolio-grid,.portfolio-stats,.request-discovery-grid,.request-grid,.settlement-guide{grid-template-columns:1fr}.home-hero{min-height:auto}.portfolio-toolbar{align-items:stretch;flex-direction:column}.portfolio-tabs{overflow-x:auto}.toast-region{right:12px;top:12px}}