:root{color-scheme:light;--bg:#f7f6f2;--panel:#fff;--fg:#242522;--fg-dim:#686a64;--faint:#8d8f88;--rule:#dedfd9;--soft:#eeeee9;--accent:#d9562b;--accent-soft:#fff0e9;--mono:"IBM Plex Mono",monospace;--sans:"DM Sans",sans-serif}*{box-sizing:border-box}html{background:var(--bg)}body{min-height:100vh;color:var(--fg);background:var(--bg);font:400 16px/1.55 var(--sans);-webkit-font-smoothing:antialiased;margin:0}button,input,select{font:inherit}main{width:min(1120px,100% - 2rem);margin:0 auto}.page-head{flex-direction:column;align-items:flex-start;gap:1.5rem;padding:3.5rem 0 2.25rem;display:flex}.overline{color:var(--accent);font:600 .75rem var(--mono);text-transform:uppercase;letter-spacing:.08em;margin:0 0 .45rem}h1{letter-spacing:-.045em;margin:0;font-size:clamp(2.15rem,7vw,3.7rem);line-height:1.05}.intro{max-width:42rem;color:var(--fg-dim);margin:.85rem 0 0;font-size:1.05rem}.publish-link{border:1px solid var(--rule);min-height:44px;color:var(--fg);background:var(--panel);border-radius:7px;align-items:center;padding:0 1rem;font-weight:600;text-decoration:none;display:inline-flex}.publish-link:hover{border-color:var(--accent);color:var(--accent)}.search-area{border:1px solid var(--rule);background:var(--panel);border-radius:10px;padding:1.25rem;box-shadow:0 8px 28px #2c2d280d}.search-area>label{margin-bottom:.5rem;font-size:.84rem;font-weight:600;display:block}.search-box{background:#fff;border:1px solid #bfc1ba;border-radius:7px;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;min-height:54px;padding:0 .9rem;display:grid}.search-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.search-box svg{fill:none;stroke:var(--faint);stroke-width:1.8px;stroke-linecap:round}.search-box input{width:100%;min-width:0;min-height:50px;color:var(--fg);background:0 0;border:0;outline:0;font-size:1rem}.search-box input::placeholder{color:var(--faint)}kbd{border:1px solid var(--rule);color:var(--faint);background:var(--bg);font:500 .7rem var(--mono);border-radius:4px;padding:.15rem .4rem}.filters{flex-wrap:wrap;align-items:center;gap:.65rem 1.2rem;padding-top:1rem;display:flex}.filters select{border:1px solid var(--rule);min-height:44px;color:var(--fg);background:var(--bg);border-radius:6px;padding:0 2.2rem 0 .75rem}.network-filter{min-height:44px;color:var(--fg-dim);align-items:center;gap:.5rem;font-size:.88rem;display:flex}.network-filter input{width:18px;height:18px;accent-color:var(--accent)}.count{width:100%;color:var(--faint);font-size:.8rem}.catalog-layout{gap:1.25rem;padding:1.5rem 0 4rem;display:grid}.results,.detail{border:1px solid var(--rule);background:var(--panel);border-radius:10px}.section-title{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding:1rem 1.15rem;display:flex}.section-title h2{margin:0;font-size:1rem}.section-title span{color:var(--faint);font-size:.72rem}.package-row{text-align:left;border:0;border-bottom:1px solid var(--soft);width:100%;min-height:96px;color:var(--fg);cursor:pointer;background:#fff;grid-template-columns:minmax(0,1fr) auto;padding:1rem 1.15rem;display:grid}.package-row:last-child{border-bottom:0;border-radius:0 0 10px 10px}.package-row:hover{background:#fafaf7}.package-row.selected{box-shadow:inset 3px 0 var(--accent);background:var(--accent-soft)}.package-identity{min-width:0;padding-right:1rem}.package-identity strong{color:#343d77;font:500 .88rem var(--mono);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.package-identity small{max-width:38rem;color:var(--fg-dim);margin-top:.38rem;font-size:.84rem;line-height:1.4;display:block}.contract-count{text-align:right}.contract-count b{color:var(--accent);font:500 .82rem var(--mono);display:block}.contract-count small{color:var(--faint);font-size:.7rem}.detail{min-height:400px;padding:1.25rem}.detail-idle{max-width:22rem;color:var(--fg-dim)}.detail-idle h2{color:var(--fg);margin:1rem 0 .25rem;font-size:1.1rem}.detail-idle p{margin:0}.detail-top{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.detail h2{overflow-wrap:anywhere;letter-spacing:-.025em;max-width:26rem;margin:0;font-size:clamp(1.25rem,4vw,1.7rem);line-height:1.15}.detail-meta{color:var(--faint);font:500 .7rem var(--mono);text-transform:uppercase;margin:0 0 .35rem}.signed,.unsigned{border-radius:999px;flex:none;padding:.25rem .5rem;font-size:.68rem;font-weight:700}.signed{color:#246242;background:#e7f5ec}.unsigned{color:#8b492f;background:#fff0e9}.detail-description{color:var(--fg-dim)}.permissions{flex-wrap:wrap;gap:.4rem;margin:1rem 0 1.4rem;display:flex}.permission{border:1px solid var(--rule);color:var(--fg-dim);background:var(--bg);border-radius:5px;padding:.3rem .5rem;font-size:.72rem}.schema{margin-top:1.15rem}.schema h3,.command-box h3{color:var(--fg-dim);text-transform:uppercase;letter-spacing:.06em;margin:0 0 .5rem;font-size:.76rem}.schema-rows{border-top:1px solid var(--rule)}.schema-row{border-bottom:1px solid var(--soft);justify-content:space-between;gap:1rem;padding:.5rem 0;display:flex}.schema-row code{color:#343d77;font:500 .76rem var(--mono)}.schema-row span,.schema-empty{color:var(--accent);font:500 .72rem var(--mono)}.schema-empty{margin:.5rem 0}.command-box{margin-top:1.25rem}.command-row{border:1px solid var(--rule);background:#f6f6f2;border-radius:6px;grid-template-columns:1fr auto;display:grid;overflow:hidden}.command-row code{color:var(--fg);font:500 .7rem/1.5 var(--mono);white-space:nowrap;padding:.75rem;overflow:auto}.copy{border:0;border-left:1px solid var(--rule);min-width:64px;min-height:44px;color:var(--accent);cursor:pointer;background:#fff;font-size:.75rem;font-weight:700}.copy:hover{background:var(--accent-soft)}.empty{color:var(--fg-dim);margin:0;padding:2.5rem 1.15rem}footer{border-top:1px solid var(--rule);color:var(--faint);background:#eeeee9;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;padding:1.4rem max(1rem,50% - 560px);font-size:.75rem;display:flex}@media (width>=700px){.page-head{flex-direction:row;justify-content:space-between;align-items:flex-end;padding-top:4.5rem}.count{width:auto;margin-left:auto}}@media (width>=900px){main{width:min(1120px,100% - 3rem)}.catalog-layout{grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr)}.detail{align-self:start;position:sticky;top:1rem}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
