*{box-sizing:border-box}body{font-family:-apple-system,'PingFang SC','Microsoft YaHei',sans-serif;color:var(--type-ink);line-height:1.6}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #397c8d;outline-offset:3px}
.directory-header{padding:12px 18px 0}.directory-header a{color:#4d7477;font-size:var(--type-control);min-height:44px;display:inline-flex;align-items:center;gap:4px}.directory-header svg{width:22px;height:22px}.directory-page{padding:12px 18px 28px;min-height:70vh}.directory-page h1{font-size:var(--type-page);font-weight:600;line-height:1.45;margin:0 0 8px}.directory-deck{font-size:var(--type-body);color:var(--type-copy-color);margin:0 0 18px}
.directory-controls{border:1px solid #cbdcd1;border-radius:10px;overflow:hidden;background:#fffefa}.directory-search{display:flex;gap:8px;align-items:center;margin:0;padding:8px;border-bottom:1px solid #d7e2da}.directory-search input{font-size:var(--type-control);line-height:1.5;flex:1;min-width:0;background:transparent;border:0;padding:9px 3px;color:#365a58}.directory-search button{border:0;border-radius:6px;min-height:42px;padding:8px 14px;color:white;background:#356b77;font-size:var(--type-control)}.directory-zone{display:flex;align-items:center;gap:10px;padding:10px 12px;color:#4b695e;font-size:var(--type-control)}.directory-zone select{width:100%;min-width:0;border:0;background:transparent;color:#244f5d;min-height:40px;font-size:var(--type-control)}.directory-zone>span{flex:none;font-size:var(--type-meta)}
.directory-tabs{display:grid;grid-template-columns:1fr 1fr;padding:4px;border-radius:8px;background:#e9efea;margin:18px 0 0;gap:4px}.directory-tabs button{border:0;background:transparent;color:#5f776c;min-height:44px;font-size:var(--type-control);border-radius:6px}.directory-tabs button[aria-selected=true]{background:#356b77;color:#fff}.directory-status{font-size:var(--type-meta);color:var(--type-muted);margin:12px 0 16px}
.directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.directory-product{min-width:0}.directory-product>a{display:block}.directory-product .directory-photo{display:flex;align-items:center;justify-content:center;aspect-ratio:1.2;background:#edf2e9;border-radius:8px;margin:0 0 10px;overflow:hidden}.directory-photo img{display:block;width:100%;height:100%;object-fit:contain;max-height:220px}.directory-product h2{font-size:var(--type-name);font-weight:600;line-height:1.6;margin:0 0 6px;overflow-wrap:anywhere}.directory-product p{font-size:var(--type-meta);color:var(--type-muted);line-height:1.7;margin:4px 0;overflow-wrap:anywhere}.directory-product.no-photo{padding:14px 12px;border:1px solid #d8e2d8;border-radius:8px;background:#fffefa}.directory-product.no-photo h2{margin-top:0}.directory-company-link{display:block;color:#4b6e68!important}.directory-booth{color:#64776b!important}
.directory-company-list{display:grid;gap:12px}.directory-company{border:1px solid #d5e0d7;border-radius:9px;background:#fffefa;padding:14px}.directory-company h2{font-size:var(--type-name);line-height:1.55;margin:0 0 7px;font-weight:600;overflow-wrap:anywhere}.directory-company p{margin:5px 0;font-size:var(--type-meta);color:var(--type-muted);line-height:1.7}.directory-company .directory-more-link{font-size:var(--type-control);color:#356b77;display:inline-flex;align-items:center;min-height:36px;margin-top:4px}
.directory-pagination{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:24px 0 8px;font-size:var(--type-meta);color:#61776e}.directory-pagination button{border:1px solid #c8d9ce;border-radius:6px;padding:8px 12px;min-height:44px;background:#fffefa;color:#356b77;font-size:var(--type-control)}.directory-pagination button:disabled{opacity:.4;cursor:default}.directory-empty{padding:24px 4px;color:var(--type-muted);font-size:var(--type-body)}.directory-error{border:1px solid #d7e0d7;padding:18px;border-radius:8px}.directory-error button{min-height:44px;padding:8px 12px;color:white;background:#356b77;border:0;border-radius:5px;font-size:var(--type-control)}.directory-page [hidden]{display:none!important}body.detail-shell.directory-shell{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;padding-bottom:calc(var(--topic-nav-height) + env(safe-area-inset-bottom))}.directory-shell .directory-header{flex-shrink:0}.directory-shell .directory-page{flex:1;min-height:0;padding-bottom:0}.directory-shell .directory-footer{flex-shrink:0;padding:20px 18px 12px}.directory-scope{margin:0 0 20px;color:#7b807d;font-size:13px;font-weight:400;line-height:1.75;text-align:right;overflow-wrap:anywhere}.directory-producer{margin:0;color:#7b8580;font-size:var(--type-meta);font-weight:400;line-height:1.6;text-align:center}
@media(max-width:350px){.directory-page{padding-left:14px;padding-right:14px}.directory-grid{gap:16px 10px}.directory-product.no-photo{padding:12px 9px}.directory-pagination button{padding:8px}}
