From 5850674448f30e136b8c09421377f461905ad1e2 Mon Sep 17 00:00:00 2001 From: HRiggs Date: Wed, 6 May 2026 01:15:37 -0400 Subject: [PATCH] ux: LBC Styling, feat: thinking, feat: more tools: --- pyproject.toml | 3 + tests/test_tools.py | 87 ++++++ traderai/agent.py | 14 +- traderai/tools.py | 429 +++++++++++++++++++++++++++- traderai/uex_client.py | 9 + web/app.js | 145 +++++++++- web/art/LBC_Logo.png | Bin 0 -> 205544 bytes web/index.html | 12 +- web/styles.css | 626 +++++++++++++++++++++++++++++++---------- 9 files changed, 1160 insertions(+), 165 deletions(-) create mode 100644 web/art/LBC_Logo.png diff --git a/pyproject.toml b/pyproject.toml index f9bd388..1c770a7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -24,3 +24,6 @@ dev = [ [tool.pytest.ini_options] testpaths = ["tests"] pythonpath = ["."] + +[tool.setuptools.packages.find] +include = ["traderai*"] diff --git a/tests/test_tools.py b/tests/test_tools.py index 7d0d523..bd8eafd 100644 --- a/tests/test_tools.py +++ b/tests/test_tools.py @@ -8,6 +8,28 @@ from traderai.uex_client import UEXClient class FakeUEX: async def get(self, path, params=None, authenticated=False): + if path == "commodities_prices": + return { + "status": "ok", + "data": [ + { + "id": 10, + "commodity_name": "Gold", + "terminal_name": "Port Tressler", + "price_buy": 4120, + "price_sell": 5020, + "scu_buy": 1200, + "verbose_note": "x" * 300, + }, + { + "id": 11, + "commodity_name": "Beryl", + "terminal_name": "Area18", + "price_buy": 2500, + "price_sell": 3100, + }, + ], + } assert path == "marketplace_listings" return { "data": [ @@ -42,6 +64,9 @@ class FakeUEX: ] } + async def delete(self, path, params=None, authenticated=True): + return {"status": "ok", "deleted": {"path": path, "params": params, "authenticated": authenticated}} + @pytest.mark.asyncio async def test_search_marketplace_listings_filters_locally(): @@ -83,6 +108,68 @@ def test_uex_client_uses_bearer_and_secret_headers(): assert headers["Authorization"] == "Bearer bearer" +@pytest.mark.asyncio +async def test_uex_get_projects_and_limits_results(): + registry = ToolRegistry(FakeUEX()) + + result = await registry.execute( + "get_uex_commodities_prices", + { + "commodity_name": "Gold", + "ignored": "drop", + "fields": ["id", "commodity_name", "price_buy"], + "limit": 1, + }, + ) + + assert result["resource"] == "commodities_prices" + assert result["params"] == {"commodity_name": "Gold"} + assert result["returned"] == 1 + assert result["truncated"] is True + assert result["items"] == [{"id": 10, "commodity_name": "Gold", "price_buy": 4120}] + + +@pytest.mark.asyncio +async def test_uex_api_catalog_exposes_resources_without_live_call(): + registry = ToolRegistry(FakeUEX()) + + result = await registry.uex_api_catalog(group="vehicles") + + resources = [item["resource"] for item in result["get"]["vehicles"]] + assert "vehicles" in resources + assert "vehicles_prices" in resources + assert "wallet_add" in result["post"] + + +@pytest.mark.asyncio +async def test_draft_delete_approves_with_delete_method(): + registry = ToolRegistry(FakeUEX()) + result = await registry.execute("delete_uex_marketplace_listings", {"id": 123, "label": "Remove listing"}) + action_id = result["pending_action"]["id"] + + approved = await registry.approve(action_id) + + assert result["pending_action"]["method"] == "DELETE" + assert approved["deleted"] == { + "path": "marketplace_listings", + "params": {"id": 123}, + "authenticated": True, + } + + +def test_schemas_expose_specific_uex_tools_instead_of_generic_api_tool(): + registry = ToolRegistry(FakeUEX()) + + names = {schema["function"]["name"] for schema in registry.schemas} + + assert "get_uex_commodities_prices" in names + assert "get_uex_vehicles" in names + assert "draft_uex_marketplace_advertise" in names + assert "delete_uex_marketplace_listings" in names + assert "uex_get" not in names + assert "uex_draft_post" not in names + + @pytest.mark.asyncio @respx.mock async def test_uex_client_get_user_normalizes_user_payload(): diff --git a/traderai/agent.py b/traderai/agent.py index 00abdbb..e5ce43b 100644 --- a/traderai/agent.py +++ b/traderai/agent.py @@ -12,7 +12,8 @@ from traderai.tools import ToolRegistry SYSTEM_PROMPT = """You are TraderAI, a local assistant for UEX marketplace work. -Use tools when the user asks about open/current listings, active negotiations, unread notifications, messages, offers, or posting ads. +Use tools when the user asks about UEX data, open/current listings, active negotiations, unread notifications, messages, offers, or posting ads. +Use the specific UEX tool for the needed endpoint, such as get_uex_commodities_prices or get_uex_vehicles. Use fields, limit, and summary mode so tool results stay compact. Prefer open and current UEX marketplace information. Do not use historical sale data, completed sale records, or sale/average-history information unless the user explicitly asks for historical sales. Treat UEX marketplace prices as in-game aUEC/UEC credits, never real-world dollars, unless the user explicitly says otherwise. For marketplace writes, draft the exact pending action and tell the user what will be sent; never claim it was sent until approval succeeds. @@ -258,6 +259,7 @@ class OllamaAgent: { "id": action.id, "label": action.label, + "method": action.method, "endpoint": action.endpoint, "payload": action.payload, } @@ -271,7 +273,17 @@ class OllamaAgent: @staticmethod def _tool_status(name: str) -> str: + if name.startswith("get_uex_"): + return f"Fetching UEX {name.removeprefix('get_uex_')}" + if name.startswith("draft_uex_"): + return f"Drafting UEX {name.removeprefix('draft_uex_')} for approval" + if name.startswith("delete_uex_"): + return f"Drafting UEX {name.removeprefix('delete_uex_')} delete for approval" labels = { + "uex_api_catalog": "Checking UEX API catalog", + "uex_get": "Fetching UEX data", + "uex_draft_post": "Drafting UEX write for approval", + "uex_draft_delete": "Drafting UEX delete for approval", "search_marketplace_listings": "Searching UEX listings", "get_marketplace_listing": "Fetching listing details", "list_marketplace_negotiations": "Checking negotiations", diff --git a/traderai/tools.py b/traderai/tools.py index 3a80133..3111a05 100644 --- a/traderai/tools.py +++ b/traderai/tools.py @@ -12,12 +12,109 @@ from traderai.uex_client import UEXClient ToolHandler = Callable[..., Awaitable[dict[str, Any]]] +UEX_GET_RESOURCES: dict[str, dict[str, Any]] = { + "categories": {"params": ["type", "section"], "auth": False, "group": "reference"}, + "categories_attributes": {"params": ["id_category", "category_name", "category_type"], "auth": False, "group": "reference"}, + "cities": {"params": ["id", "id_planet", "id_star_system", "name", "slug"], "auth": False, "group": "locations"}, + "commodities": {"params": ["id", "name", "code", "slug"], "auth": False, "group": "trade"}, + "commodities_alerts": {"params": ["id_commodity", "commodity_name", "commodity_code", "commodity_slug"], "auth": False, "group": "trade"}, + "commodities_averages": {"params": ["id_commodity", "commodity_name", "commodity_code", "commodity_slug"], "auth": False, "group": "trade"}, + "commodities_prices": { + "params": ["id_terminal", "id_commodity", "terminal_name", "terminal_code", "terminal_slug", "commodity_name", "commodity_code", "commodity_slug"], + "auth": False, + "group": "trade", + }, + "commodities_prices_all": {"params": [], "auth": False, "group": "trade", "heavy": True}, + "commodities_prices_history": {"params": ["id_commodity", "id_terminal", "commodity_name", "terminal_name"], "auth": False, "group": "trade"}, + "commodities_ranking": {"params": ["id_commodity", "commodity_name", "commodity_code", "commodity_slug"], "auth": False, "group": "trade"}, + "commodities_raw_averages": {"params": ["id_commodity", "commodity_name", "commodity_code", "commodity_slug"], "auth": False, "group": "mining"}, + "commodities_raw_prices": {"params": ["id_terminal", "id_commodity", "terminal_name", "commodity_name"], "auth": False, "group": "mining"}, + "commodities_raw_prices_all": {"params": [], "auth": False, "group": "mining", "heavy": True}, + "commodities_routes": {"params": ["id_terminal_origin", "id_terminal_destination", "id_commodity", "terminal_origin_name", "terminal_destination_name", "commodity_name"], "auth": False, "group": "trade"}, + "commodities_status": {"params": [], "auth": False, "group": "trade"}, + "companies": {"params": ["id", "name", "code"], "auth": False, "group": "reference"}, + "contacts": {"params": ["id", "name"], "auth": False, "group": "reference"}, + "contracts": {"params": ["id", "name", "slug"], "auth": False, "group": "reference"}, + "crew": {"params": ["id", "name", "slug"], "auth": False, "group": "reference"}, + "currencies_index": {"params": ["code"], "auth": False, "group": "reference"}, + "currencies_index_history": {"params": ["code"], "auth": False, "group": "reference"}, + "data_extract": {"params": ["table"], "auth": False, "group": "data"}, + "data_parameters": {"params": ["endpoint"], "auth": False, "group": "data"}, + "factions": {"params": ["id", "name", "slug"], "auth": False, "group": "reference"}, + "fleet": {"params": ["username"], "auth": False, "group": "vehicles"}, + "fuel_prices": {"params": ["id_terminal", "terminal_name", "terminal_code", "terminal_slug"], "auth": False, "group": "trade"}, + "fuel_prices_all": {"params": [], "auth": False, "group": "trade", "heavy": True}, + "game_versions": {"params": [], "auth": False, "group": "reference"}, + "items": {"params": ["id", "id_category", "name", "uuid", "slug"], "auth": False, "group": "items"}, + "items_attributes": {"params": ["id_item", "item_name", "item_slug"], "auth": False, "group": "items"}, + "items_prices": {"params": ["id_item", "id_terminal", "item_name", "terminal_name"], "auth": False, "group": "items"}, + "items_prices_all": {"params": [], "auth": False, "group": "items", "heavy": True}, + "jump_points": {"params": ["id", "name", "slug"], "auth": False, "group": "locations"}, + "jurisdictions": {"params": ["id", "name"], "auth": False, "group": "locations"}, + "marketplace_averages": {"params": ["id_item", "item_name", "item_slug"], "auth": False, "group": "marketplace"}, + "marketplace_averages_all": {"params": [], "auth": False, "group": "marketplace", "heavy": True}, + "marketplace_favorites": {"params": ["id_listing"], "auth": True, "group": "marketplace"}, + "marketplace_listings": {"params": ["id", "slug", "username"], "auth": False, "group": "marketplace"}, + "marketplace_negotiations": {"params": ["id", "id_listing", "hash"], "auth": True, "group": "marketplace"}, + "marketplace_negotiations_messages": {"params": ["hash", "id_negotiation"], "auth": True, "group": "marketplace"}, + "marketplace_prices_averages": {"params": ["id_item", "item_name", "item_slug"], "auth": False, "group": "marketplace"}, + "marketplace_prices_averages_all": {"params": [], "auth": False, "group": "marketplace", "heavy": True}, + "marketplace_prices_history": {"params": ["id_item", "id_listing", "item_name"], "auth": False, "group": "marketplace"}, + "marketplace_trends": {"params": ["id_item", "item_name", "item_slug"], "auth": False, "group": "marketplace"}, + "moons": {"params": ["id", "id_planet", "id_star_system", "name", "slug"], "auth": False, "group": "locations"}, + "orbits": {"params": ["id", "id_star_system", "name", "slug"], "auth": False, "group": "locations"}, + "orbits_distances": {"params": ["id_origin", "id_destination"], "auth": False, "group": "locations"}, + "organizations": {"params": ["sid", "name"], "auth": False, "group": "reference"}, + "outposts": {"params": ["id", "id_moon", "id_planet", "name", "slug"], "auth": False, "group": "locations"}, + "planets": {"params": ["id", "id_star_system", "name", "slug"], "auth": False, "group": "locations"}, + "poi": {"params": ["id", "id_star_system", "name", "slug"], "auth": False, "group": "locations"}, + "refineries_audits": {"params": ["id_terminal", "terminal_name"], "auth": False, "group": "mining"}, + "refineries_capacities": {"params": ["id_terminal", "terminal_name"], "auth": False, "group": "mining"}, + "refineries_methods": {"params": ["id", "name"], "auth": False, "group": "mining"}, + "refineries_yields": {"params": ["id_terminal", "id_commodity", "terminal_name", "commodity_name"], "auth": False, "group": "mining"}, + "release_notes": {"params": [], "auth": False, "group": "reference"}, + "space_stations": {"params": ["id", "id_star_system", "id_planet", "id_moon", "name", "slug"], "auth": False, "group": "locations"}, + "star_systems": {"params": ["id", "name", "code", "slug"], "auth": False, "group": "locations"}, + "terminals": {"params": ["id", "id_star_system", "name", "code", "slug"], "auth": False, "group": "locations"}, + "terminals_distances": {"params": ["id_terminal_origin", "id_terminal_destination"], "auth": False, "group": "locations"}, + "user": {"params": ["username"], "auth": False, "group": "user"}, + "user_notifications": {"params": [], "auth": True, "group": "user"}, + "user_refineries_jobs": {"params": ["id"], "auth": True, "group": "user"}, + "user_trades": {"params": ["id"], "auth": True, "group": "user"}, + "vehicles": {"params": ["id", "name", "slug", "uuid"], "auth": False, "group": "vehicles"}, + "vehicles_loaners": {"params": ["id_vehicle", "vehicle_name", "vehicle_slug"], "auth": False, "group": "vehicles"}, + "vehicles_prices": {"params": ["id_vehicle", "vehicle_name", "vehicle_slug"], "auth": False, "group": "vehicles"}, + "vehicles_purchases_prices": {"params": ["id_vehicle", "id_terminal", "vehicle_name", "terminal_name"], "auth": False, "group": "vehicles"}, + "vehicles_purchases_prices_all": {"params": [], "auth": False, "group": "vehicles", "heavy": True}, + "vehicles_rentals_prices": {"params": ["id_vehicle", "id_terminal", "vehicle_name", "terminal_name"], "auth": False, "group": "vehicles"}, + "vehicles_rentals_prices_all": {"params": [], "auth": False, "group": "vehicles", "heavy": True}, + "wallet_balance": {"params": [], "auth": True, "group": "user"}, +} + +UEX_POST_RESOURCES = { + "data_submit", + "marketplace_advertise", + "marketplace_negotiations_messages", + "user_refineries_jobs_add", + "user_trades_add", + "user_trades_edit", + "wallet_add", +} + +UEX_DELETE_RESOURCES = { + "marketplace_listings", + "user_refineries_jobs_remove", + "user_trades_remove", +} + + @dataclass class PendingAction: id: str label: str endpoint: str payload: dict[str, Any] + method: str = "POST" class ToolRegistry: @@ -46,10 +143,23 @@ class ToolRegistry: "list_wake_jobs": self.list_wake_jobs, "check_uex_notifications": self.check_uex_notifications, } + self.handlers["uex_api_catalog"] = self.uex_api_catalog + self.handlers["uex_get"] = self.uex_get + self.handlers["uex_draft_post"] = self.uex_draft_post + self.handlers["uex_draft_delete"] = self.uex_draft_delete + for resource in UEX_GET_RESOURCES: + self.handlers[self._get_tool_name(resource)] = self._make_get_handler(resource) + for resource in UEX_POST_RESOURCES: + self.handlers[self._post_tool_name(resource)] = self._make_post_handler(resource) + for resource in UEX_DELETE_RESOURCES: + self.handlers[self._delete_tool_name(resource)] = self._make_delete_handler(resource) @property def schemas(self) -> list[dict[str, Any]]: return [ + *self._uex_get_schemas(), + *self._uex_post_schemas(), + *self._uex_delete_schemas(), { "type": "function", "function": { @@ -239,6 +349,8 @@ class ToolRegistry: action = self.pending_actions.pop(action_id, None) if not action: return {"error": f"Pending action not found: {action_id}"} + if action.method == "DELETE": + return await self.uex.delete(action.endpoint, action.payload, authenticated=True) return await self.uex.post(action.endpoint, action.payload, authenticated=True) async def decline(self, action_id: str) -> dict[str, Any]: @@ -250,11 +362,232 @@ class ToolRegistry: "pending_action": { "id": action.id, "label": action.label, + "method": action.method, "endpoint": action.endpoint, "payload": action.payload, }, } + async def uex_api_catalog(self, group: str | None = None, resource: str | None = None) -> dict[str, Any]: + if resource: + key = self._validate_resource(resource, UEX_GET_RESOURCES) + info = UEX_GET_RESOURCES[key] + return { + "resource": key, + "method": "GET", + "group": info["group"], + "authenticated": info["auth"], + "heavy": bool(info.get("heavy")), + "params": info["params"], + "write_resources": { + "post": sorted(UEX_POST_RESOURCES), + "delete": sorted(UEX_DELETE_RESOURCES), + }, + } + + grouped: dict[str, list[dict[str, Any]]] = {} + for name, info in sorted(UEX_GET_RESOURCES.items()): + if group and info["group"] != group: + continue + grouped.setdefault(info["group"], []).append( + { + "resource": name, + "params": info["params"], + "auth": info["auth"], + "heavy": bool(info.get("heavy")), + } + ) + return { + "get": grouped, + "post": sorted(UEX_POST_RESOURCES), + "delete": sorted(UEX_DELETE_RESOURCES), + "usage": "Call uex_get(resource, params, fields, limit, mode). Use fields and limit to keep responses small.", + } + + async def uex_get( + self, + resource: str, + params: dict[str, Any] | None = None, + fields: list[str] | None = None, + search: str | None = None, + limit: int = 10, + offset: int = 0, + mode: str = "summary", + ) -> dict[str, Any]: + resource = self._validate_resource(resource, UEX_GET_RESOURCES) + info = UEX_GET_RESOURCES[resource] + cleaned_params = self._filter_params(params or {}, info["params"]) + response = await self.uex.get(resource, cleaned_params, authenticated=bool(info["auth"])) + data = response.get("data") + items = self._as_list(data) + total = len(items) + if search: + needle = search.casefold() + items = [item for item in items if needle in self._search_text(item)] + filtered_total = len(items) + offset = max(0, offset) + limit = max(1, min(limit, 100)) + window = items[offset : offset + limit] + compacted = [ + self._project_item(item, fields=fields, mode=mode) + for item in window + ] + return { + "status": response.get("status"), + "resource": resource, + "params": cleaned_params, + "total": total, + "matched": filtered_total, + "returned": len(compacted), + "offset": offset, + "truncated": offset + len(compacted) < filtered_total, + "items": compacted, + } + + async def uex_draft_post(self, resource: str, payload: dict[str, Any], label: str | None = None) -> dict[str, Any]: + resource = self._validate_resource(resource, UEX_POST_RESOURCES) + return self._pending(label or f"POST {resource}", resource, payload, method="POST") + + async def uex_draft_delete( + self, + resource: str, + params: dict[str, Any] | None = None, + label: str | None = None, + ) -> dict[str, Any]: + resource = self._validate_resource(resource, UEX_DELETE_RESOURCES) + return self._pending(label or f"DELETE {resource}", resource, params or {}, method="DELETE") + + def _make_get_handler(self, resource: str) -> ToolHandler: + async def handler(**arguments: Any) -> dict[str, Any]: + fields = arguments.pop("fields", None) + search = arguments.pop("search", None) + limit = arguments.pop("limit", 10) + offset = arguments.pop("offset", 0) + mode = arguments.pop("mode", "summary") + return await self.uex_get( + resource, + params=arguments, + fields=fields, + search=search, + limit=limit, + offset=offset, + mode=mode, + ) + + return handler + + def _make_post_handler(self, resource: str) -> ToolHandler: + async def handler(payload: dict[str, Any], label: str | None = None) -> dict[str, Any]: + return await self.uex_draft_post(resource, payload, label=label) + + return handler + + def _make_delete_handler(self, resource: str) -> ToolHandler: + async def handler(label: str | None = None, **params: Any) -> dict[str, Any]: + return await self.uex_draft_delete(resource, params, label=label) + + return handler + + @classmethod + def _uex_get_schemas(cls) -> list[dict[str, Any]]: + return [ + { + "type": "function", + "function": { + "name": cls._get_tool_name(resource), + "description": cls._get_tool_description(resource, info), + "parameters": cls._get_tool_parameters(info["params"]), + }, + } + for resource, info in sorted(UEX_GET_RESOURCES.items()) + ] + + @classmethod + def _uex_post_schemas(cls) -> list[dict[str, Any]]: + return [ + { + "type": "function", + "function": { + "name": cls._post_tool_name(resource), + "description": f"Draft UEX POST /{resource}/ for user approval. Nothing is sent until approval.", + "parameters": { + "type": "object", + "required": ["payload"], + "properties": { + "payload": {"type": "object", "description": f"JSON body for UEX POST /{resource}/."}, + "label": {"type": "string", "description": "Short approval label."}, + }, + }, + }, + } + for resource in sorted(UEX_POST_RESOURCES) + ] + + @classmethod + def _uex_delete_schemas(cls) -> list[dict[str, Any]]: + return [ + { + "type": "function", + "function": { + "name": cls._delete_tool_name(resource), + "description": f"Draft UEX DELETE /{resource}/ for user approval. Nothing is deleted until approval.", + "parameters": { + "type": "object", + "properties": { + "id": {"type": "integer"}, + "label": {"type": "string", "description": "Short approval label."}, + }, + }, + }, + } + for resource in sorted(UEX_DELETE_RESOURCES) + ] + + @classmethod + def _get_tool_parameters(cls, endpoint_params: list[str]) -> dict[str, Any]: + properties = { + param: cls._query_param_schema(param) + for param in endpoint_params + } + properties.update( + { + "fields": { + "type": "array", + "items": {"type": "string"}, + "description": "Fields to keep in each result row.", + }, + "search": {"type": "string", "description": "Local text filter after UEX returns data."}, + "limit": {"type": "integer", "minimum": 1, "maximum": 100, "default": 10}, + "offset": {"type": "integer", "minimum": 0, "default": 0}, + "mode": {"type": "string", "enum": ["summary", "full"], "default": "summary"}, + } + ) + return {"type": "object", "properties": properties} + + @staticmethod + def _query_param_schema(param: str) -> dict[str, Any]: + if param == "id" or param.startswith("id_"): + return {"type": "integer"} + return {"type": "string"} + + @staticmethod + def _get_tool_description(resource: str, info: dict[str, Any]) -> str: + auth = " Authenticated." if info["auth"] else "" + heavy = " Heavy endpoint; use fields and limit." if info.get("heavy") else "" + return f"GET UEX /{resource}/ with compact, token-limited results.{auth}{heavy}" + + @staticmethod + def _get_tool_name(resource: str) -> str: + return f"get_uex_{resource}" + + @staticmethod + def _post_tool_name(resource: str) -> str: + return f"draft_uex_{resource}" + + @staticmethod + def _delete_tool_name(resource: str) -> str: + return f"delete_uex_{resource}" + async def search_marketplace_listings( self, query: str | None = None, @@ -353,20 +686,112 @@ class ToolRegistry: pending = [item for item in notifications if not item.get("date_read")] return {"count": len(pending), "notifications": pending} - def _pending(self, label: str, endpoint: str, payload: dict[str, Any]) -> dict[str, Any]: + def _pending(self, label: str, endpoint: str, payload: dict[str, Any], method: str = "POST") -> dict[str, Any]: action_id = str(uuid.uuid4()) payload = {key: value for key, value in payload.items() if value is not None} - self.pending_actions[action_id] = PendingAction(action_id, label, endpoint, payload) + self.pending_actions[action_id] = PendingAction(action_id, label, endpoint, payload, method) return { "pending_action": { "id": action_id, "label": label, + "method": method, "endpoint": endpoint, "payload": payload, "approval_required": self.require_write_approval, } } + @staticmethod + def _validate_resource(resource: str, allowed: dict[str, Any] | set[str]) -> str: + normalized = resource.strip().strip("/").casefold() + if normalized not in allowed: + choices = sorted(allowed.keys() if isinstance(allowed, dict) else allowed) + near = [name for name in choices if normalized in name or name in normalized][:8] + hint = f" Did you mean: {', '.join(near)}?" if near else "" + raise ValueError(f"Unsupported UEX resource: {resource}.{hint}") + return normalized + + @staticmethod + def _filter_params(params: dict[str, Any], allowed_params: list[str]) -> dict[str, Any]: + if not allowed_params: + return {key: value for key, value in params.items() if value is not None} + allowed = set(allowed_params) + return {key: value for key, value in params.items() if key in allowed and value is not None} + + @staticmethod + def _as_list(data: Any) -> list[Any]: + if data is None: + return [] + if isinstance(data, list): + return data + return [data] + + @classmethod + def _project_item(cls, item: Any, fields: list[str] | None = None, mode: str = "summary") -> Any: + if not isinstance(item, dict): + return item + if fields: + return {field: cls._compact_scalar(item.get(field)) for field in fields if field in item} + if mode == "full": + return {key: cls._compact_scalar(value) for key, value in item.items()} + + priority = [ + "id", + "uuid", + "code", + "slug", + "name", + "title", + "type", + "section", + "operation", + "price", + "currency", + "unit", + "location", + "terminal_name", + "commodity_name", + "item_name", + "vehicle_name", + "price_buy", + "price_sell", + "scu_buy", + "scu_sell", + "scu_sell_stock", + "status_buy", + "status_sell", + "date_modified", + "date_added", + ] + selected: dict[str, Any] = {} + for key in priority: + if key in item and item[key] not in (None, ""): + selected[key] = cls._compact_scalar(item[key]) + for key, value in item.items(): + if len(selected) >= 16: + break + if key in selected or value in (None, ""): + continue + if isinstance(value, (str, int, float, bool)): + selected[key] = cls._compact_scalar(value) + return selected + + @staticmethod + def _compact_scalar(value: Any) -> Any: + if isinstance(value, str) and len(value) > 240: + return value[:237] + "..." + if isinstance(value, list): + return value[:5] + if isinstance(value, dict): + return {key: nested_value for key, nested_value in list(value.items())[:12]} + return value + + @classmethod + def _search_text(cls, item: Any) -> str: + if isinstance(item, dict): + return " ".join(str(value) for value in item.values() if isinstance(value, (str, int, float))).casefold() + return str(item).casefold() + @staticmethod def _summarize_listing(listing: dict[str, Any]) -> dict[str, Any]: return { diff --git a/traderai/uex_client.py b/traderai/uex_client.py index dfc261f..4912577 100644 --- a/traderai/uex_client.py +++ b/traderai/uex_client.py @@ -58,6 +58,15 @@ class UEXClient: ) return self._handle_response(response) + async def delete(self, path: str, params: dict[str, Any] | None = None, authenticated: bool = True) -> dict[str, Any]: + async with httpx.AsyncClient(timeout=30) as client: + response = await client.delete( + f"{self.base_url}/{path.strip('/')}/", + params={k: v for k, v in (params or {}).items() if v is not None}, + headers=self._headers(authenticated), + ) + return self._handle_response(response) + @staticmethod def _handle_response(response: httpx.Response) -> dict[str, Any]: try: diff --git a/web/app.js b/web/app.js index ba9d0e0..32c69aa 100644 --- a/web/app.js +++ b/web/app.js @@ -27,6 +27,7 @@ function setMessageMarkdown(node, text) { function setMessageActivity(node, text, active = false) { const activity = node.querySelector(".message-activity"); if (!activity) return; + if (text) appendThinkingStep(node, reasoningSummaryForStatus(text), { fallback: true }); const phase = activity.querySelector(".message-phase"); phase.innerHTML = ""; if (text) { @@ -48,6 +49,122 @@ function setMessageMetrics(node, metrics) { metricsEl.textContent = metrics || ""; } +function appendThinkingStep(node, text, options = {}) { + const steps = node.querySelector(".thinking-steps"); + if (!steps || !text) return; + const previous = steps.lastElementChild?.textContent; + if (previous === text) return; + const item = document.createElement("li"); + if (options.fallback) item.dataset.fallback = "true"; + item.textContent = text; + steps.appendChild(item); +} + +function appendThinkingText(node, text) { + const steps = node.querySelector(".thinking-steps"); + if (!steps || !text) return; + node.querySelectorAll(".thinking-steps [data-fallback='true']").forEach((item) => item.remove()); + node.dataset.hasModelThinking = "true"; + let item = steps.querySelector(".thinking-raw-step"); + if (!item) { + item = document.createElement("li"); + item.className = "thinking-raw-step"; + steps.appendChild(item); + } + item.textContent += text; +} + +function createThinkTagParser(node) { + let buffer = ""; + let inThinking = false; + + const partialTagLength = (text) => { + const lower = text.toLowerCase(); + const tags = ["", ""]; + for (const tag of tags) { + for (let length = tag.length - 1; length > 0; length -= 1) { + if (lower.endsWith(tag.slice(0, length))) return length; + } + } + return 0; + }; + + const consume = (content, flush = false) => { + buffer += content; + let visible = ""; + + while (buffer) { + const lower = buffer.toLowerCase(); + if (inThinking) { + const closeIndex = lower.indexOf(""); + if (closeIndex === -1) { + if (flush) { + appendThinkingText(node, buffer); + buffer = ""; + } else { + const keep = partialTagLength(buffer); + appendThinkingText(node, buffer.slice(0, buffer.length - keep)); + buffer = buffer.slice(buffer.length - keep); + } + break; + } + appendThinkingText(node, buffer.slice(0, closeIndex)); + buffer = buffer.slice(closeIndex + "".length); + inThinking = false; + continue; + } + + const openIndex = lower.indexOf(""); + if (openIndex === -1) { + const keep = flush ? 0 : partialTagLength(buffer); + visible += buffer.slice(0, buffer.length - keep); + buffer = buffer.slice(buffer.length - keep); + break; + } + + visible += buffer.slice(0, openIndex); + buffer = buffer.slice(openIndex + "".length); + inThinking = true; + } + + return visible; + }; + + return { + consume, + flush: () => consume("", true), + }; +} + +function reasoningSummaryForStatus(text) { + const summaries = { + Thinking: "Reading your request and deciding whether I need current UEX data, memory, or a draft action before answering.", + "Searching UEX listings": "Checking current UEX marketplace listings so the answer is grounded in live item data instead of stale memory.", + "Fetching listing details": "Opening the specific listing details to avoid guessing about price, seller, quantity, or status.", + "Checking negotiations": "Looking through active negotiations because replies and offers can change what the next move should be.", + "Reading negotiation messages": "Reading the negotiation thread so any drafted reply matches the actual conversation.", + "Drafting message for approval": "Preparing the exact message as a pending action because marketplace writes need your approval first.", + "Drafting listing for approval": "Preparing the listing payload as a pending action so you can review it before anything is posted.", + "Checking UEX notifications": "Checking notifications for fresh replies or alerts that could change the recommendation.", + "Writing response": "Turning the gathered context into a concise response with the relevant details and next action.", + }; + if (summaries[text]) return summaries[text]; + if (text.startsWith("Running ")) { + return `Using ${text.replace(/^Running\s+/, "")} to gather the missing context before answering.`; + } + return text; +} + +function finishThinking(node) { + const thinking = node.querySelector(".thinking-log"); + const label = node.querySelector(".thinking-summary-label"); + if (!thinking || !label) return; + const startedAt = Number(thinking.dataset.startedAt || Date.now()); + const elapsedSeconds = Math.max(1, Math.round((Date.now() - startedAt) / 1000)); + label.textContent = `Thought for ${elapsedSeconds}s`; + thinking.classList.remove("thinking-active"); +} + function ensureStreamingChrome(node) { if (node.querySelector(".message-activity")) return; node.innerHTML = ""; @@ -57,10 +174,22 @@ function ensureStreamingChrome(node) { phase.className = "message-phase"; const metrics = document.createElement("span"); metrics.className = "message-metrics"; + const thinking = document.createElement("details"); + thinking.className = "thinking-log"; + thinking.classList.add("thinking-active"); + thinking.dataset.startedAt = String(Date.now()); + const thinkingSummary = document.createElement("summary"); + const thinkingLabel = document.createElement("span"); + thinkingLabel.className = "thinking-summary-label"; + thinkingLabel.textContent = "Thinking..."; + const thinkingSteps = document.createElement("ol"); + thinkingSteps.className = "thinking-steps"; const body = document.createElement("div"); body.className = "message-body"; activity.append(phase, metrics); - node.append(activity, body); + thinkingSummary.appendChild(thinkingLabel); + thinking.append(thinkingSummary, thinkingSteps); + node.append(activity, thinking, body); } function renderMarkdown(text) { @@ -464,6 +593,7 @@ async function sendMessage() { const assistantNode = addMessage("assistant streaming", ""); ensureStreamingChrome(assistantNode); let assistantText = ""; + const thinkParser = createThinkTagParser(assistantNode); statusEl.textContent = "Working"; setMessageActivity(assistantNode, "Thinking", true); setMessageMetrics(assistantNode, ""); @@ -498,10 +628,18 @@ async function sendMessage() { assistantText += event.message; setMessageMarkdown(assistantNode, assistantText); } else if (event.type === "token") { - assistantText += event.content; - setMessageMarkdown(assistantNode, assistantText); + const visibleContent = thinkParser.consume(event.content); + if (visibleContent) { + assistantText += visibleContent; + setMessageMarkdown(assistantNode, assistantText); + } messages.scrollTop = messages.scrollHeight; } else if (event.type === "done") { + const visibleContent = thinkParser.flush(); + if (visibleContent) { + assistantText += visibleContent; + setMessageMarkdown(assistantNode, assistantText); + } renderPending(event.pending_actions || []); } } @@ -517,6 +655,7 @@ async function sendMessage() { input.disabled = false; input.focus(); statusEl.textContent = "Ready"; + finishThinking(assistantNode); setMessageActivity(assistantNode, ""); } } diff --git a/web/art/LBC_Logo.png b/web/art/LBC_Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..fa9b70fe9d502b2c0d088925a2820771e0ce00d0 GIT binary patch literal 205544 zcmeFZ_g_=#6E=JR5k&zDHmW6x(xpf*7D}iJ(h*R4@4Y0hy&w{#6R-i&M7q>OS;0^h z1f-*YEHwg3sL4AAcfZf`2fRN%eq6~XIl0fAnQN}OX6~E4chNwLgPn&RK@bkC_5~vZ z*#i6A}^%>TW7gKYWl zr5zLcpqqcl%)9=3iDy0h-%DhN`u|?;$N%r8D8lsLYjfoPE&Q)9{+}!Ue?^6Q#T*JP zyYwqoq`Cx$aq(eG-G!mZxz&q=7`|^>DuFlq+xn)lQ7hXja0(P$Z6i$_V_{hAn@IJH zzI~%Qk{`Y-f78^&B(Mh!Q1+C#{#vk5s89PuuzQH^M|H8QM~VD;;dKh_%lc>hR)^_FJ9eTeLn>jdgVfIi3DZwFWtPF!wr6>h^8BGi=NxHYst*>-p%z{=PmI zR(RAmy^&kQ+ag0W&QRU&ZCd1RnZ`pkO>bK=lwW(wLy*6Fm5o+qSLD{V9HUtUG zN}r2-Qa5Ub`r;-b>v}uiWXL&&YcRBm2Y=#TwxuBQpQ14tgDX@3jK>aG&8~MdIJ)EF ztx?C;nf5oAU~Sr#&M=>Y&&Wob53@hPNexk2y3I_tli_2k^W~$KcqQ%5Bjut)<9UR{&cq>vTR>bvEv|QM)#GSkZx&Q!es8z5ocG3$P@@Lw3O-b_OcMF@J1SzbUx=q8jS^SClpv##I98 z(2ETw{0hyQfJ<>0-29je{a9Y3r@PQrdqHK>-Dos@jDRBUU{%$4IBoJ!Tg>;PKJa-D zw&3I`jdAM%1T8mlHe{r9P)6>S6UQpIp{~>0#6V=nFE%9U)K$1j{=}w{%=$P0 z^?U$fSbIV6CcHKB6ZOvs5}rcOFjzQ`+Wp2u4-_l@JP-+juYS`Zh&+u&FSQfg4B`1s zLB#I$=3V&F@0y2!nNSFgKchD@Gd!`<`q}5F+u$vLB60Hq9VLCnzkUboBPG7aDA~sV z6J!E<3p-b9v@(y)W7Gsu>okIoQQ+$TMNpmty{%}e`*cq=woZ*=hzZUA;Ro?(jK`?O zk9DA=haxPE8-2q4ZIIFhDANT0!7?J#?2n~K5hNZ#Rn=lb%ujAE_Yjs7Yz5#XSGhAG zcH*e#z-%4VY_cfoJ;@%36Y237+yCN(UkL!q5D4By+w?1=g( zy51)j&2<*!6H*RV*omX2e3IXM#}0kxX%XsEmreWi7woa=xz+n2yf?Gsl;r?FIn|Jc z+UO;(dN;|9ZuxK-pb-TS8^x-^C1<9@w<7rQ<8TQ%=MPD!VAHV+7tpLEi>f5fQV^07 zl$;1wWaKhxkdNEHp0F=dLy!klO@g7&iit6}TV4!xCeULSN^XV(Wm8}ezP!g>sr zej^9{5QB!r;P3P@7L1Y zCrft@?MGgC773!{|-kN+{)R49ATnV+_AobH2gffBu#Jv`Z&f*d)G` zmjBQ@xKC-=E4y>{Wu8U*X}xBt4*^vrgJ(s?+ZGFRbDwCeBwXhthHueA9!*wa3}bHJ zFq;zJg5Xy$urxUqvSmnrVFMebN;wAhx8#89OiU~bOf6@FEN2I^qU1K_uF0A<7wZ+Z z%dgFMFMn$6>l;YXz-pBjSNZ+Zzht&bTery`OmEI%r_}^>=rqI~HBrzfJkhA!YuX#? zl`4r0kbu~gDIfkL+aGt}&d41O{(+W+k@TR3b%r{Daf(vWZO!?~u3u!u3Tx?F z(eE1EH~HmlM>sWityol=xbAC=lS=j|{4(Ub*j->;7}J}ZI~9~jpQ$XVAPu<&cT6*U z?>_CH&g$xmvI$bUlc6cuuPfBgmTJ&U#2(ZzIzFDxV8e&MC5&YgBCg8tE#HC)c?C^? zpZouC`wgtBaj=-W|IDLlL&DPBeY&w_E2-icDOiI(!x|}UWJLm*uu^_egS!>vNc=1h0P*RM!$t+l@OgZ>0^n{v3O6Hr zD%sOBARh)8P*C=Lp9>p3ZXb`%CB%kK)cygNYCaI6Ow8T8BlDBL%YpN*i^>et=k96|Bo{({Cq}%5& zu=v2CJuaJ(cBSeaOv)TAU@gyP8(WfOwsI!FF9Ol{N5hy)fzxn*kU5Y6e(yFoPa5>f z?sCiQbZrli^|eSi)wB?F0~h?8-tZ&K=}5G(*iZjr2$f?dsbo-{5v2aKXL5k9BDurF zWOmCILT+EL&C>zSorwQ*FNX1T2`p~bfPd_^qxq+^@C}2Lpx8tH@!8QLEvq}RmIVQZ zA^R91%2*TAL*AZ_QbY&k^p;-}WUSQ~LOxqAw5_zbxQY;zNAxNTf8NP*|G9SVK>AV1 zY0sVby}nQ`KA`u|J&WGs`eqxnkb_Ypj>U%MF)hJ3#?fTZ=H0McMaT4SgBpq&@u76G zfpp~yifyKjYlhE{FH&sCQYV$xIU8troKKQyU~JOWwx7kZuOPt(k!c6jZ?K??O2pvP zz{xw&c(eYIeQLb+^k+dDmoNpUMkcPoijY+nS1ghz+h64hcRv3ZAceg&P)#9GPj5kz z?3od*3SLfgD=S?>K=|OVs=-5Yvw0q#`bG&KW``vTJiMR@8xT2^7!w-h#5YE|MM5D#Dxl@>5G+OKhcQl`Sovt{fnGtwf> zgzr`KU(yS!wW%7MTcQ>l2o)SUGn-f3((RCvD{7?IT-x9NjO88j>VrQvT>!M^W*U_o zfqP0$K+*C(zT!h59f-!s@6)*SGX7=POWBO|twBe6pC%d5%U%+GC-( zbr8C*B#7Ifh@h<2a*x=+Xg?8}J7;OP8?AD=9XcX|HbR4kqUTBeCJYBDh4}f6lEVmD z8Spn>L*#XLcb_c$<*X`ZXUTo)L?^7Cd)c+Z(zV?uoY~wDq)akMC`(jA`JnR;{B4jI z8=ohrg9hH28D14}LDM0v&x%EjXJ#x^h6)=Y)4v1QKXEnuJ~W88?zVHv*Wr?r_#FSs1pUg_u-iaQ@(9sHn(g)9vTMyqfs!# zd>|E`N}UBw9-W1E7zT!i;p5;~S!))M*QJx)i7g}%ylBg<^vTkX4vMV~?s>7t)?@N? z;){O?#I77g-XsN8>_VZP-KkFsUcabrk^*z z3)QvPlgw;lc)y@??Qb;xk)?9999Au2{+Vq-eh0=MZ4IAn~tvo4#1IY$L zr?NCG3to0k@`*Sgy4U2k`M9FZIcUH?z5f@N?0H5GCL^bk+a-U{mreSgKpDBpW-*#XTN&)uM(A^e-kU`rJM8-gV2<&HRvlCmGRCx6eE=E;pyn_ z?tV&hMG&;cq9%gB5l}Ulrc!by?i7=Wg_ETR8zr|Gkh5nSzIrdzk5~6#Ve+Xe0N6P~ zhW^6k!7_DY0C8?Eh_{YOuflHSwxawwwe;fL?~z9rFTix`bTus1FzVX$T>BEYYuOg& z5l+ytxBi2yC^`?p8$X@r!g*AG%Lu5N4G7Hpd zR890EWkeN*4>wA+F~&@Cj1q=~q|~+`^4tH-)oV!n~=YPdaBkKPxpR$sqm)K+q#MQB~dY$zYU`7^iF+EasB}rO6^;aw%-G@b$~^ zjL}E3>(fG;>pT@N*|r4`-Z_uyoRldr)jf=N{N+KwDgWDe;5AUtO0w`UL{lNH6F^bF ztSBZ#G3Y#kJoMJfF0Z7twjeI|N7t(};z-8F^Dd&$*Fq)`$kzc-svPX*& z8VdVQ%g)Jq!43OprmJ8Lt*ptm9;dnuku-!ga!0o^XKBPXHB^&a{3$6_3o6)N$oEUx{jHV$&QP37I;fd}e>+84BqSRE z>Kn1J=reRtzF0J(M_krRUU?NRcvo~tAbI1 z8MX`-lN9L$B=O)9I52e=r#(wV|Qn1Mzv5f#Eu0NK;ZuBbyDtPhx-nWs20p~+O&=hvdl0hopI#d>F^PYEvcs*cB*^La$7pyp-$q`U{nY6owg@rz8SU;~zv16mTxT&Ea`f^T(Yeh^1 z&gJA;aC0~S6!~iJJ&L2b7nnBRGWua)Vge1=pqJdnn)NuTOt!82M^+JCH}_4UqQ5$V zcPuS0Pmp$QAD{)`3+6Ezr}e9k?9}x>X4l!)FGKPr(d2 zqgjQAQLV@HG^dGp!V?!LTRZnzd?3*=8Tiq|(`&rDAUf`3jDo4DNsaBx$t}o8Yg?L1 z9JnOE;PuPEzmaJNONZjJ_zTPNl}mc%H;_)W(S7v*?(*izYwIg8Rk%!O=UY-0zuCbJ z3Z}~|n^f#Kmc@Yj)%`=Bm$w31E`wL+_Fo6mR7a4xf??{!%u2~5ZEcbkrd36S<)s9& zg>~bYHYYR3!KrqK(6H%_NBuF}fY$%3Fn4MxWY|j1J5#i|-PYC0ZCo>aaMUW* zs`u;Hj{$zAIa%dQBa-axdwF2a?3DM%qZU`Ls2ClzQxT&38wjrMa zm=Pa8nCjJfsfmcxo*(x1cTXz@F2Bj-QYC_ox`3K4vuXOp1ko3Qjj9)&vp)tZOCZHmEDzfGi#S@m9Nd$h z`59*6(*KQAl31Al5OY_mA_B!IAf<#0O#8CGB+0Sj>p}9(8VG@;JkO?O@O%;{WQ@pb zpE`N2emg>*tj>@GV(8^DG>XsMC8iIoKvLo1YzTzZ_TfX#9jFReag(D!Bke@(F?0{C z18)F&Gkd7n{vY3bbd}kl?LkHkGb1uY1o<)@^&Zi<(Mf5q19o!-IBG zr;NCbuOcb`Xc7bs7NE+HY-dMW_My-F+PcnfmQ;{Cl_3=BK!xU>;!6PgBoCm02Mq{; zf5Xw)X-V{ECoi}KD^4y|-Qk%Zev-u?rd;09dJJas;Jt{i94z^-3$lil52MSg`KY?*iMaCn zM3vQQsK@4tu9sw=LM7mfZ%)!JaN>D+?vUlZ4C{PR=&g<8Gi_PF%xV%yFvZ;*t8Q)wy5OOl z!d{y*HeG%ylB?^jM_I=iR(vFM&Q%cZNxofU2V;c#^ESMPERz~4J&~`5C@@#f!j>HQ zdoQozbdXZ$$odL2YL1SX71Rwh7#1%@?_=5;b6R0iz4o6TZPtg!desWmbr6G7qDa%i zcR~t2GOdm`$d2=>sP+!Ax8&~a8)#~1(9DYaF!00w()*n)>5%=$VMv?(wsA$9G~CX@ zmDWDh2Rgk?g=%Zk6?E|F$(y`6ot;?vI~RHL7CFv;htAn^{|k=jBWHF*>$6VBR6qyB zhQs5sNjy;NKvh{ROcQ^x=Y#YHVX1Cx66O8woWjg>YqGSvLhzh*ceg1`g(`ku3M!Ro z*6Drtln6tD#KYSxLPjuZMrZv7UGO+DCsxd`0?A#cxs+H(N>diI5E)|_pg>nx*fU5A z0-6MltPEW2K4sFqvz*CJjb<6UJ#Y_9)s2Q4D?i@gN^eh=p5PofYA2PPmD}{>)-Z2c z)&IrD`0*oftF-(7Cs6lBAzf+%s``)7X*--|9xanr8d@{2Y?t_hfun!{(ZAb2^5{QcdGJ4N~5*f@jK@}$1KgrxtTG#(`F+?GGSzOsm-j8=nF6f;V=C5dFu zQZS77z;$Hori)s@MXz#Hj zaPb{CG6xOW3DiHnMupPe;s2ZiS(rIoP2108V&Zv+>Hd3n{_Js}K^Txo^nh@ClZ006 z5KKDe7S^kO{Az}c1h@F$9l?=Dz09V>0K2p~#?( z_wa58R!YFIxUw=C%|Ro_#r8AE0PK(J1Ia)5R%&Z65b-mjElnXYK0e%#RogFI81H|~ z;N2grKEAvaaXJTU%a=o7t+1+TV~c@31ishTUD?TeZe<;_L7PmH+(mC3Jt`LrWV;vq ze(jZeYI3~+t2O~N-1C#1`($q0FQ;Q{VPi7g1tAxq%}=A>WK)?p3^EvsFk-&aEN+bK z*NPwTS{3{y@8#*~Xm2kKL!xZsfxn755Sm}dX!5s{x##P;Sz3E;_9VjMFe!_pU^Ff@ z98wh;(;*1*ZSHzPr$Ry9NV4LqUC-Uv z8uZ85-;7#5M`0+ghYU}gdQj|3y=A@)1}j$Otf21DF}x2ZQQWq6`Yj_%wvwy*elIuP z32t8yq$DCD;#$EKl@Al9GjekN(?1G~UwN%;Lww})-8#Ef(uGoWxJP5TC1EqkGd-+uJ4~9~m%D$17zGvrZt*l15JHKCiW-5=_ zyu(p2pU;H~u=eUHji0;Yc`aRYP(R#b$~3`oRYYWxR)r;O&=a84mY=CuXpkF{Cw||B zjJ*Dld8yuS7i@sY#k?!7PzgAa=iJ>v=5|0uso4)^=|{;v>X_AI)1@2@ae% zI0NKb!MImZJ03I}q(n5Bm}|`VytbwkW1KL4owT5RkwC$$ycyi*gquUFpi7t+!M^BlA}ehs^FPb*O{RD&>@x`iPnS4Xc6Ywb0w63mJP z08^$xwAPw+x=pkfiC8v51e8Im?K7|ap9%4a)&&*J}^A&T3O{ihZ#L%8<0o9I3 z17XC++;+7iv2!-ad0{cDbJEJIM9x}LAZFN)*Dgx5$sM9axwYefA9S^rY&Ro8yLVE? zo(S7-2YoUBU!4J2f*>^%2)q?GN(!wr53>pa#uAy2aJrbE^T0kx~?`lvQQ#GRqb68cDkL{KKT7yg7v2L!xVyof)Uy zKHXGYv%xqmcAp!zA&O-MNSF72XmmTZ>#e6iBSUcP9b5ZEOR~R(MK2?m7GUYYcy0ZL zfpc4QAmC2(a4J7T@cpRk`o*u*tv)HDolkyGCi2L_3hk5>kM-zQMt zTjIRHPYtKWQq6*qr@6T`t5asF0zu(kpz^vfmCN6C3ou-B5s_k)xf?LWrcoo-DSWh= zZ6Ob~)~2^uLzTU?gUiX&GjMnjW{cXViQ?9~{<4H-h6OZS1zI~cH&_k>GOy?^G-K0~ zx=yEd|D*ba8=uz3zLBMJrsNB{LH4_&cfwb+NebrQW8JM*JS`j()H_PVbM;Q%_BdL* z#PO9dLd5sAI@(uzuMFI`@34oTJSs4OsipM`wyrEr#6*y)SP<+&rUY)BoFl>UiI)Sk zd-|1#`AqbnmI_4A5@-m<#dDr-MCNUH`zRdsg zWg_WVDz$rH_(~C@0rj_`BlpKe3G4M6GH);S&ju~Lqpp%82P?KS;d^XxD!i=>6^0p{ z199f6>-~&c>qYPnUA(|_gz2mO?*9NXQ|UiREh*DANl4av@I=G+etgl>Iw8sdj~%cx zgKjb;eEA=DDdl8*-Xs{O6lR|gqL&cNL(>@&AOYQ#+vMuzZ=YuPH@V3yDL!>A=^q*9 zr!e5qo^J8)d(^cd&HM}D^ji-=q!#vX#cpzPL77m5ewY- z`9PwsG{NCGrMje+^&K0W(_m&6y{93-z&(cYct@b>G0d*RGt?5%-l6GQsGyM3cO60u zZ0Fh=8Zsk4Vo=8>qn%CMIuX;J*3jzvFaUKd?DOh!|yrpJxeeTUoO& zEY77T=H}YKgqGyXLBFBQc>f^-j*ATj&P-IR{&eo_cfR#cRLUM?c_EQRFepKx@EUA& z8`KzRy~4~4b5ov;fm`+F3G)m#&^n?2JiFuPxf3(f1>TjbvD7Tw6t&#rlRZe8~-#5HS1z6u0hP5TDTj2fW0@`+8&C*NM?6!O!S-i&Jv8CdSQ&2X|X zJwN9m;&X%&ZtsT37OgUTpidJB`{x{JbZTho;5|gZaITXEZcCgNXGY`|KmojY3IrQ= z1ddOI*34NFWV}QWW0)unPD1;aRni{yk{4uo=wkP5gO5eRz0Rgvj_hP>P{`gwp~oo) z;%erL8r9qadmf?Q^C7@iTw~PG{E}L%_eQt3LigzuZUlr%Vclw1Lv6$0w!Z1Tby#r*v9UiBR9?AxYMAQ5SPlYi*0EZ)y{TrPd0IXka7H0H2x7z0v>~H z%u_d>A#eVHs$lodx+BiDIEOG_KJL)`VdlKiPhfRZ`Yx+#A$rI5A`l7+q;oTdaeolYjc4K08v{KN~Tr zYwHz;9LBb}MAdW|NRIHYjNW6~Je;U;x(8GbQDi6)wzJsUGTMQLJF3joE1-qkf9ioN zVRhI{(u}S{II!PUmk&`#G0@bO%NW)(riFQa<;I_vl})r`SI_Rpl6tD0w_Syd8W=#w zkTjJ?r;rD&XOQeUsA4BV75YWiNOW*9Gy?ltbHLuO`cgU7k2YYE_(O@bsPrf@?F1`A zaF9wKi=qERY8f*Z`iBDP-##sV&Bhw70obARSu7Lu78IEfcaD_$WkzpE|M>%cKL&ck zy*|U%{)sqj?(+c4wo8BX!HD%*=Ri%Uh?SMq9mOoLSsxj>a0R(&|tg0>Q*#xaR1>AyR-RRdw zS4(hc-THXpOaB;6lk)>0$Q%2^uTlmbEy+S1UnGUgPSbJaZA7J1Hh~B`hW`ph#__a@ zPmlE1QM6x@f#cEWlwWcJRRunT-z}e~@=ipvsLr@7cD`CEjnb^>sh!AuhUp#XgAUoL zVRSw=#+&i^gCj3K8O{hYQpVyv($o#l(*ca12@5-@92KYhXb~5=viGh`yJOao!1!@=zBfd(p6H+%DTdboM7mbV0`up z=d>o_8+@e<4p-pUU>Jw^yQQ0MkTmMcnNQ{kvx!9~(@r5UUK{k9AU7~tQ!Av1LyY(K z(0BCn$;_wx&>_Gn3@TwgeK$Ru3QEOBd%<@4wY}N_apfef;l*qxzx)$hk=)!SGtz1X zuk6NzIJ*0dBh4L6c-OX{nQE{QqQ`E|)4<56`BRJDc<-{?>^I5ccYX&DGNd^W^uWy)5I28NS=D=w3RS$B)oFP8~y=#yLx;XILvH(LQdxK}8&3jJgA-6wOGL^KPxl zac3ugFXkYpf=DUBMhQ_iX;GGw_XoJCoFG$G{h3NzyiUVSv^?s810>Uhr1aL-)@1(0 zn-T30lFGTG+TwM~MsgG-LX8|nsO0cOZFAEyBP^hrsQl~Gc?Ewb&tV!%9Oc3;e7z*< zrH81O?m?Z7I!W<%cx1LQOyR~`FdhmI+DO!TRU|YpY{W6*S;sk%2!K`E>?Jy59<6&X zeuT;2L}}$2h7pd|=qp?#X=+$cy|j{zF$>Z;iNP)3vDMA)HAY?o50fqi?;aQge8I0L z)M0Sq6x*0nO#YCgVcVG{&u76=Bt96T;cr`&nlOT;Snc+!*;mgGQ-9BeK6t*_F~IQ8 z_|T|Lg5!4?|080QGf21@4cB#&vGQwu#{r4#clz()SPYf!FPP$6Qk%?#Hx*gAq4qX5 zilkODn*R6>dR{;9z`J)r<(whTdfQ!;M;WQl`e(=9-`W9thhhbhLpXid@)wHJyjAMT z*9j5hgi@=1L+pDlqrwFh2CP}3smz~jC#lti3tpp)AFZh+!n2?9k6P;OkY^pyB-nmj z62|4N9rzpYW3B6#H>bF?IKsj;)=%2_oVg9bP@rG<&8=}7H3!w7YK7I?=Gws{RgcF8 zu>yt*FD%9uCls!(M!5gBZztdS19nGL9=}mcQ)3$bD|dn#u_i zlT1=oip|8(f!QgKbt<^+w3s?FvYB3fgkd!KiQQJ5Lf-&9bT}h}@@WmKrdha@-^eiG zbA=bjC2+@UBeS|>$kCW#H`%6di=^27|wll*ifuh4mFskBY9;3eb`+x0SV2{y*t)8r(N>3q+-RNEz{==7_ z2zlr>!%PhXh6+n!3&bZvhJwpQoiY6__(y8pV9XCE8BiUWfJy8a>AIhdrZ=Ax zI~m&z<7hay*!`n)p0sJo8&5=LJv0u@8;Q;lO`E)~rr^kt_91~=Bt0hl%cf{vTOHDH zM(@0#HgHVR{$hu@ZClnacpUN()hMa|Yi9K1Sv)2>l%aVn2@WxHpp!t^)gHzVKM{&y zxn+T~wLJDk7J|8BJ|4mRd+rRqJzXVkWHjS3Ns5P4)hc-R7x(rAw7&Kn+vVfZ zz>v5N$jH6i`?f6EbPH3+UKANl;ERiKxD9V{wKNA6r93*XDktrW=rlK8!(*Mnm>G0` zXgv`*u|ib{ESw5oJUXS>_&i^`xZ!zPpRo4Ulf~yd&ejtX>=cqtOP<-~j%R8x#S>W@ zEXfZzcAb)NDk^FqBgZ(pw@V(9=PPwHKas{NmGzNx`<^ZN@5Wl$JGR`locUp*zm%C< zEj}^x;KV+{6_ZFMlXm~ys0_19#N1A`GyL5O6AT=^{Ynb+C!*q4*v(%L?>1e{8<7yx z-*>+dG0yTYUHChZ^!LY)9}h4F-8qnSGv~P`ljpJ8c4{v;+9v#a6ZP)wsvhXv^^@nP z#N<5XN`cEdF1UB*0^To_wdZ-b!s$6>$@F$d?_|!SM~`+q_<|gUA6J7-Hw-(Tsy{n{ zmp!u~aK?CS06SFOb8S*DMf<_x&7z+;34Nx2R6U2bj_{96kQub_VP#9N9ChFk21t`bQtWJk*@NfMe=8 z52vf#wmh!3VP#L*irQe|hV0tCd-7>X=frKivCN?(ZkwIH~ zqgF7h%jvgsD4=Y28aT(Zs&+?p^IWub9*? zTzGlD%^)NEkbLduH4n=TFM@vSuCoSA|CGIF)XK0vU7NAvMWTNvk|8i^TZg2GFXAUi zOMFGR?Qb8y!Ke{S9iH`istwe_)(^)Kxu^H@c3oz-Ld>hW!u7TF{sA}W!n zSlJk+6_U+AKNo}6zKaHI~YfKgprkzv|fzwunz)+qh7j}yhi zr}@uS>BsP)q_uCjmIW6Ddbx zqN*yM+f>B0Fc`1a5u^lWyfbD&eM1JP^s`xG@LkH~+@$ERr?0#^oU)OSbS>d{>x%Zp z8>Xga7B=FS@_x6ycR`VyKC!XyXEu4*HJ+3tX>xLo#R&zmLr9WP`f>qSRmo)M>lUB; z?tUXVLVWG*>Z|L%y!ik}Xui5q_hY@75f z_uluki_xKDYkT|pJErfv`r1|&A85*hjHTC$WUAXV|L)zf#LWWcM}XXlX%b11k@jii#*SZ$>FwDK5^ovW)- zJ2|+@_*ST)0(l~Nvz0TnBO!c4Bw!x zE!PfFBFyL$y>5eTJ6eeb0I8va3mkA#8M{b5ZDDb~Y#?mgB! zkwT9I`*LdDcXSxtiM#b63o#$nA1S=_+4dZ80Uz@Z6z)ED_`-;B^-X&a^7=%EagHg= zTC(T!uDjQ2!&8{*w%2s!WaP~=imy}$MH3(ihs;b&McgDOuSlzlXEeL*kb?M$8KEio zaeo?7bppX{t8xE6;VyzKM(@fAxUU^YVjHHND$IXVV{KWXkI$cg-}5*6@fsc18+%^E}6&{O>G4w^>GH%4OlM1r;~=MTBG`@z^yQH+~TUc^m?H zCU3dfR)M@XU!T>*N*dq5Xg1JzvHSL&JJ@Vved?lHnWF3(?}wL>Hf(fz)x<8fGe8xo zFSjCKuD+sDq&Vw3$5t(lRPm_(_ZN;`5Z!+))j6J0RiXT4x+%<2W|IK%J@s+82%G>U08=!Z=6co|dls17=>f=1d z$Y4^FB97biu|M62-t}novG$3(XDp)4^Li{SEu8`b%RCQ-T?d@=@bb#++sK>-F2a4V zoNv;3H2Sj)w_tKj|Na4*5er$3{T(;{kR3^Lmu|&ZS2P;BO22S{yFkE1KfxWr8`5j|M zAoCP*J!Ho+?&4?LF!JSRNz6Ln2f$(IkICVoFX3It&zRS?B!S!eh=xD>dksNUzMn zuit>VuTSm*Y?fcz%pnyhV-J{d_deL)qB^dyEIiuwJ$OW(bKZeq{&K$ZzZ#a)&?jzL zR^mEw9d`>5QV$3*Eb>uozw+7T=8bloXD8K+g}fo&-gbtc<`HWS_$R&V*gGe~62Y>( zcjQBLq5C>1X;)0+ApwD-@j7Req1njk$+e=-#ePy^T9=NLdvN#e`mxPO4WN-y9XY!H zz&?SOrx5(;h!+hk`g_#(dyz|heV1i)W~QTXd=n>glamX(x-OWsWBvEMy}e`S)eCx{ zgt!pF)V9w}>4Vi@NsM`Yk}d2cizMobii&PsTI?U|0uR)I2Z*Mi4~@uj*BSkb8yjI+ zC$oM5fDZB<7I+}5Y?E{O=X83|p=q&A)@j?+&(~N`1GU?glp@=hP83C?`AEAle;uM8 z=6Mi%x6$=iQPo6IjrDVD(}J=%8P*Y1X|fbsd4zTMT?NLu?uu|zWGk!wcZ#&ROb@;~>U`=Ty32=d@Aovxa;)%aV)aJFT^ zl)wwxE3Dy#3tKi#i2+l9SQL&NS{Z&=&ir+qN{+sujoEWyU~9P6>P4GVC2!wy2PpS$ zX2|YGQ)2bLFWLS_cpRzkrvqcc3Ub9n!XA`w*|j@1JsYLENecitKN6*% zm~TG0astm$&g{c?C*p4~3ZyVgveYnb!l=*voWov-mOuGHmcPv2dly2!jr5eS1C8XH74{^hRu^X$ zaPRb8tn~1XaKGnq3F5{5Q-35o09#*n^ZdW6gQMq- z6hbp(x_jZp-=p(cqx3}G;|Yn0O34?`jI60f1;|I^~EL+|?TFh#E>$|F5H>i3j z%Aw!y4ficffK$>($=MlgkV`DhpHKX&?ROPj*@O-4^M0m|v&ZVs|Kj>3=Ru&U#JCk? zY2t^Ti7^2aPHgrXVVV`u>)u&CsR&==yXXtu4I5fK3~`-tprAzAxnZL#FhK$-jAulF zm6BcEz z^_>rds&US@8^J7#$dN| z7xF1-qH87KhqMu;AzZ-KogX_6JD7lD|U_jZwS}XGyBef`^%-ZVjz1#Q9%SVR^PNlbh|9&(tFOSG|qJPhK z-!v-1m|HF?GSp++J-Htubaq4zEtJdlF~z~ubk9gr4x|;Ni`dRQDHH8oz1NkDnbMJ{ zZD=<<>38GC#!e2-?=o*~mm)LV%5Iw#@@k*p&)SU6^k%PB)%{0Z{rcxV!N!#tfP#s` z9`(9W%O7cOamCU1>TcU%Opj1eci9R52%CG0L{&l^yqeEVbW2l3q*URizTiL(JK zAVR8)h;)$b=ILjWC=FZ-SbkDTJ=TvVjL>ghK135jwsdqT_Kr3W(?`Db19 zqq8s~;AC0^mq^J=lFjP;?D{jzSk#*hrKJ}S&4(zzlAm1wsooWQT^kRU@T(g$y^MyQ z=EaK_m_7RCF?rqdQ(gQ~G1zT<|3?wa{4qrVf$aG6%DaVeSzs0nds>X#2<+^Ai(;*90lb4y! z7A6^x;pN7B_ro;^6Hga1_h`-5(%Nk`RF>&xj0RW#5EK2^a?$DNyWEqHH`|vLt*5c( zq793-(2q`BWFc#2(3WRPny)4?@9MO9e{?o82k9`V4yL+QiQ%cCm)!$v!Uol)CLbRf z$%zoRI>QfA0<&$blW!x0h6WXvE}j(E8V}yu$Pc0RwxpSUenPuP=4(uClpXR~_8F{peBNl(d5k2fu6U z9EThFWcwa|)9%m!rSooJz(lxfs>=S+^q!c;yA9W#-d^zfeehzH&wR((&5rZ0r`y3L zd)$IG=?vZxu}%w*AMyrC0#Ap9V)Y1j<%SZA=2o60B*N+F!CxyftcN3Z0$SLXgBxR_ zUDcd--+%y-m~EtqFAg>OE)xr>>xYU?ARhVF;-}Sc5417Gi*aS`E5I=XDB87}fEWI) zY-@*j_&ln_)XOYi*mQnM6kk&ODOiTW_GU6lEtpb>56n{@efYqXdec(`@1krV9P9G- zyWrEBVjb7Yn-iY3@-r)@hEEdMLehKg-8zHTYQ`iQsz~nBFfq_$Iu5-Z#i2ua@s~Gs zS=kNwiW1EoLuc)5BPBJ9a1NNhS!JES`|J68it#CwYd&3;->&{gcIllM{P~u;c3IeD z-E$yD=VTgEmyISlCjY(3c9?rrj)E9xA#1%_Cb?d9UG?X?qh~8P=>U-{Go4smDf4CY zpQ5wK-=1h{?k)`t`w%+9Y6n{#_SBqZiEGi+6wWuXT7scp18$~&tJ=LPb*S_7nbH0% zmb<@lDfi|V#{OOoCr5R^o^9iOggIiC*Hsy{v9;&*74I4`JSgtJ?|m3`vBJOp#q;y? ztp|xqo7$$BKLwo)KJy1miIAU6@?CXUG)3yTa`aL{O6NmthwqFV-Saz@w3?rV+|=dG zLTa|Juff2e)X4bnb3lXH<~4sw^F;gnTq$Jr6W2$+^1;ABNl8nzJH+a+ZVR#|D`oyS z=dHNx+j!i)@&|Fq!<}58)jkdXiV6!X`^$`$V(=#JqSF87Vh$pkHS-y0L6~A3>Kpde z@)&@Yp9x3Q)d($pjs*@W3DggqN5wotku|6&KvFkz2m;1N&Jd z=!F{rV(r@=@Eg3A=TfHhB{66w>j#R4xb)e+ejKU|*Vp>ztm?62^`4ai+me1W*7i-x z#_b&~gYeNT`UOU?rT-sS-yN6Z`@Vlal@cn6(x#~;(%wkgQAyen+DT7)JP{44G_)6$ zq`j90Ns+dO_CP)DskENod58Ds`}+OkpZA;lzOU;%kMlT=^SrJ{#>YlGM|X0%+j_9v zfu{D|df0?GM+EtJV0m0iRa>Y}ZS}n+tWd9GF$xsA>Dr zTvTdLj2v#BEVL4(DTpa0dv;=WxH<@8dUa#k>alyyogYVKzm?LD2E5t?^#-eW1cguT41j-o@dl8r-=4d=m!A+)co4I~Pp_W;gP{R{p+~J{YOoj=J=SAF z+KZSPPqNq#OIuLS5M1~>XSldO+N*0kt)=+j(|e=J@94MinO^%dQXY?0N*oq$vQcwC zSH2 zTz>F&C~>@|DXaenNQG_?Jxrr+qj&3q{3ew42mcLgmMX0rtsI>|3kG>HH?oaX&(m33 zny^VBC_H_T1eToc6PjO+vN%#7B#CT4 zE0L+aBr3oVobR#DawPDlL3d>H?L{$}A+=c-mW?6L(*wVs9|Aon@cPFU1%+(z4F@qP zkDd^iJLVPT+t%?j3-+7Zgg!a8$!s;?1}gf8KdL=Q z#0L?YSETRUoeXG*%gZl*lvPm2Hg;XyjrX&DM8D>h)JhvIfN*p3N7%~W9B-kE;%U-_ zR5oUT3FHMFS3yA@t^YS40AXYrZEFv>bnD^p0aMd^DR>%!{!nW1+b`2rocYOgM@QC| z;%&|dDz+d5CUHmXZ2s;;h01oYorLc71Ev2Zx7+7MgUs@m4#e=}pBq{?xt?cyaQegC z>IE<|+p+tp$rZ=G^N@*?Z101{iTdqx>%aqCK4M#dGiYAT-Eg-lwQh93X zv+8?q^%W3+XVhMgF`kQb4tv07(#>25AC03)B}$-o53on9;U^ zjVjgILXY*+Lb2GciRUVht$aBdywn3&Es9iC@Il-ZP>N^biZe*ZGk=l}xy)h(NkV(Mgv!+yp7V@;+pCDu2>Ua6!D zCAS#fajW?HeR$wxqB2dO;*zvTy8qy=~U#(NabJ%S5$5-!8bOd@>{>8WD5MR>d**{MGS1L>YzfL_{Cq3ZQc%2;Cut?&iS=!LXZzUd)u2}-BpZP|& z;z$pB=MfXmCO5x1%+AKfoVq9FW4i9XN|ir5Ua3!hyFynT$bc8Imja7tTcY)W5&z}S z2bxuz=brXC*DOqkof1__(b=HGJN!=(q1NGQ$K{@CySoKLXzFE-Wfc`Un)M0({se3; z5ZGL rxLzsl}oW7?a06^$mg+DX*eo>{2nw9!CtDO{+laMVZwU9JS#bBRQ|EE}&T z@!pNj!7STbHJZXKckfxG;OqTiy|!})-AG@5QW6M$&mh<{06U`*5f_nMH#` zf?or!pmAzSDTU&o?Q$F*fi~p7qU&?qy0_+>AA4ZB-C+5rJ{) z*)b18xCihQi3gh0$ta9A#`@=1WAWgWuGjn=9j)Ze@1Gs!L24Gd#M(!S7g1mD{>Jqk zIVEj`NTj}B{Oh^Pjg&LdylmjS@T8c7^WsZPEWP$Mf+FlMBT|zLA?P+L-WMoSD3FePC!e_t#qlR)Jcy}hn04r<=-+3w##Jf!ML1H zDC;P(nI&1<%Ayx*uM<5JgH81`u0~3CN3O|%iD~uTZU6b)jS(Dnc99IqaFa}pwPc+l zi@QZAet#hb!aL(aLCm~F7e?Vj!lyt797qBb4c=7V?HEO<2>a{94sqvHlW$u>WA}j~w7~WpDe^)5xvs0Dg5SP-XIK&C1Na;|L@6v|4E~Ry zUW##+%bDjA&~;XY=nbO)IGiaZD{Mh2W5;DyOZUOnn^kD_*KSUQ@*1nhPy3b1IvPw= zk7j`A0#$Hbi0hJ}rR*jTN8Wnpua3hZYtN|YX7!9UWuX1Lv8Cj&MJf1c2p1x!%`eyk z8y=!Jw#jmGO9K}!3O%<%u_sw8^Gi591DgesOe!<{!s?+ItTdHQ@9ND5g`mo_km{)CSn}{*N=BFgO~h@LD%#o)6=C z$n`zCAMsp7O6=)cv2Axw7riyKavgLs>Wn=k`%ZLOxlx+b(-ZPHTAd6i^ZcG>Eo9GV zQv-ERv_R@0+v^Zd`-0OoX`xH*j6B$t&*gLG3ySmQOWw>)&38r}(_a!~lR^g|KKEbL z;Jd^|U9JWg-*rfy=`{esBs6!9*r9bY%(hB1HiVh12yX zO;N9@CkVR`Z4lcsa{ZKFIbn z$g^PQ`keql14pLlpDX}UymKnyloyBi8-L%R%7gj^90_|+Q929Qd2$rj{&A_Ak}{Vu z&cA$YO#BcfrD$UQmD71w^iPkuS-rPNzl=J7wJ2Em12I%`fy$Ta(;Z)YSI9ES>nC2l zy7%7(#Jl%SCbwxD-}rr#zcBsZbWGSiz69wtp+!2qw>cqLMId)rY^1r+x5e^MO}7e# z5AzF(mNulWT+mv4><8V=Kr}g;qM+1xAu$;(RP>&n(s?rnvzaHh4hJjJGguj-3ES}a zQWR~p&i2To!#QULL+D4(90nUoKzn>o|1Orfo?+pNybLU{-MarAU-LH}|*YS`{*YHLouIS$TSgc!%P8HdNz^x9^ub3m=#d zy$FKgz(Wbp{8i|`4FOB`1$E%2n)Yi-FB!yp*CtN|}!QBMd`U-ubc-co)j9yd{t97Pq& z_c4D~A?EW$;B3{yHA2xfE;LSsikJ-{q= z*f4ZuSV+8Y0ac+|@Cdlf>SeB)T=18P7pJ>;BsFH7OAb@v@;%Ug8o%dHUQnnsfTDPE zltAKbE*TWl(HjkF>Ug8&Th2Nww-QFK!L>O0Q68hqz~|U?%icrZj~?QhwXP5)E}@f| z4mq(3LYD~gCiU^ZR7yVQwAp8FjBwfc`k#t&BReh&l#T)@-3OoKSjzS%6XFJ^cY}5e zdu=QGJA_7rndKEKM?i7rfR7^PW7eZfsTztlmYtnLRMIQwV|-PGp1-#gx^yLb?fCyO zzkYR~461^M;S%q^S%9|0aRS-_AD7Ji*fmt|U#YV zpvPOZXb=uFp~+n6frhX}#6mpf3ASoWc$Gym=;PMn}VyIPMuf zr@U}y8j|kM+}v!60N4ZWD7T|rJUA-Sb))q2yLV2(bcRxG4o$0T)Io|p%*%T?t$SUh zu+>Sa7yG|B4V^hkzBoY5tZ(J^@Ohl3sTt_j&H+zQ)>T4j<^mN)EZIIb`bGakH$b z4@{#6pQ5Zn%i&-v@dT{Rh}AmP5$bPmfbs2%ME5H~d1dyTrv286b8czbS#8t1{lB=I ze+aFtlm#gCh+WbD?g=#K6VRNnDiA6Zm<%5}^}AuMpf2fRvF<}NvMk+J6t#9X1T<*?MgKb)`}I2I8FBIQxwe5DHve8trfs4twoQpM;{0RF=wg=6pa5I6 z%LEN+IvKfVJ)QWYFjX`z9AgKr_`D5ydpebAW!s^}$Xr2)rckuP;m@LQWNLfK`1;UW zj~cpB;yWG+Y*&SLb|``f-B!U30|&oa@$L>Zk?%fevi(>0A0)?7w!_TDx2sDg?;D(k z{Ici;R*j&VD6j}ioZThQPcHGG#$zC?zkQS7eXeLgq!8FZV^oEt9+V;dpY5e|cW>LM zDu4?1VMCmsln-?c&;~Wah>S(~E z3=lpian?9K;W&=*IH^WVEBl_T!sJ_2dM5{yO09jgtkAf1KW~khc8F%FnJQIcr9*nh^*1*qkd5SI2&uQ(>>ebWJtDD?i=v3mkARX4% zTAdfOG!L53+Z1JQ#nGtmT>146Ub<&*;G!ozURV(+aYTR@XY2hPN5fEiH$&ZS-y+vx zDJZhOP(d!P)*4fXZEaic@y8zBJZ1a)O#XWOcO*aF@vH~(7}f$k!*y=%k8;S(?4d3t zy7=VUhTs{oUVHMcSGqqF_h}b4~XCg(k>w$_r_GRW_|3>x{N>ib}9=>wD>!LtoXXRj=gB*LTjz?xHNnP&Dz90*BIn24Ep! zsj;uhMbmV$=-)P7;eKhHhmH}0kJ2YG@S$7Dm>N&&Qo3)0%A(*x?-NCKXf*k|dhWPb zr)#~VT9oiFZaK850~~1O0K8WUtu*|3Z}ZEltj@Omr$(wp%<3=kkc%UA^7Z4m3d1{Q zW+&UnB_-<#Mup+yfrF7MbD88Yj>`A;z$~lO{V5t$_4b>gp0=?t92|JC>kUaQ1XJ9u zzw#7|-3=(H!*bB(`=b(Dj4{}={S!Zf`ybggIFTnw+PBX`~sr!|H! zx#MP=P6{|34zq*NWQ^$Y#zbgb$cZR$3!qaCJ>=!MUlYf|>;RJIHKF%Ll?Eq*!%r6# z7k`=kAu(;dQ`5_AI37r%p}-kmQ6+J z2iz+a*-5sbRiE|GDJWc+0*8S$Wt>p@d&AY(gK?BCY(EIqKj2$jJh%kxtSj&pnHzKP z7G2oz%^j8>RW8A>AhbXnv6AXJEfFz9i`r-r@84smJ*E3xhp@Ed!)w;PvB}9MWt`CN zKbaKZ%c9*k|398=lZaXfkG_C{sCwmyCGNFsv)ESPRpyN~TzAizzpAfqwbew>^=vzM zk27g-0zmF#2vg;4XkaRF1G~ZPgTCeEb1?8)YhJtCfO8>Oc`%;a=lm)~W3?eU&v-rN z_iT|LAC17uJ=y3))Ko|t+M`|sOi-SHxd(6@_EdI-!KTVv-B!o)jO`bB3Yuo1e>7?I0pR9=Xe?7Fgb?Y*vmj(Jd8SpwhDJ$%@ zr6+&~cHd3@JziT?`==2DyHvBW^1G%D1{gamj%F|$y?E#LZ%R)o18Su^{l-BUf&)r$bnMHG- z@9-+u;%yLoY5rclSf60&UsGT@1vD@_Wf^5pOgaTUOqyl?rp|#;rN!s^nrLGLpr}GrR)eY^(FNwE_Y4g4S1@PQ??7Lpwv-4N4Ka}k7 z!pV-TS9rQbmG4~gr-SBG9Ob37Nmz}3vTeH2OIO3;A%)5xHU%n&a;Rqb@CdY>#3*C-P>^!8p1%Ii&x0b3 zyRgMSXuSX066?IpzR@>kRe@p;1hX~-*$V%TG3f6I8bp3d%j~v79Y1b;OKvtIG$M&i zNQciRUV7*N#1`(W4Q$)IfRkov3|1tzy%Jexal|JeAboGo*&rA*d}=XJB+`2?u^bOw z*fZ9|DLxW^on}!zc(5mQ+rD8vPE2++h5m$?^Y``yv?z(fq>Eg`_%RnS1JL0=zs5@3 zA0n%Lh1+Ul5)Pj2Il?)tV%z^_UZ@TBBGT}~xHZkUw=hJTR9zKV9_G~ODXn{*_jRWY zr#jJL>Vl^zkm-$UED_jsw#y#6wCQat2z{y>g>p-dUZrkNtO0Xgj|$Nq^uW3eJ#>PeYj{u+3=4IUexp-|4)X%|m!>} zEh9JQMw+gJP)@9Jo8VemS=q==Zlwt>=jh5jqc)Eh3B|BlqJiOt@{O}f4LGSwsb~HC z{25rXx@BO#C{qW#-fsGkiPcWwY8rX>*`^n0VoZPQAY)@QF!kziSV)qAEeL?)KT}it z*WjXo$Y8Lk0B%eFQuYxtzZ+GP5r+-*^!^x}Ya=a`l$lt`Ln8y#(1BoMqisjw+3)p+ zeTF&jC9a_j79dCkZ;KVG$t1s2yY~|4sbJ+-_f8X-?HxE853Bqegi#ClU5Bl`NrLl< zuYV-Btw_rz{(g%6ym_~$9yDcFkb;6J43|&e9xcW*6`q4*1VdHpFx1SzVq#A$sxbM# zhvCm0Bg_e(5m(}8xUpWjuobCtTUS^2P?}Kl`dj4s+>P^DyO$J7EnzGgvzUu#%8_30 zhOxjdfswBNQwjWVHDKO?ilhk=F}`gM!9U-S< zz1@|UgZ8ihv&jXu>;$~P1j5eFt{y~yc_10+7~V6CJ{_Bsag6|c9*z%6>KSi`Hcl|o z5-y4ICAJ<8%&rwJZr|gyj{;v|u>QY)8yMDlGbgXnFrc_m!C6BQ7|NcRU69 z`(cy-ak9BHXM`j>^P7yaJYcvd-YTc(w<)c|`whgg-PW$z&xBrCS{X;&wJ3#>?lXw64 zVWF~{0r=ycx7n!a+IFj-8CU%i!Dl*!eHOEHcnxE#E~IN2;o4o4?g~MVHwY~!l1=3I z?d7PcZ!FaAY^r^Bh;cM@X~)vuh)@H|f+3XrboBL8&sCT;%;iQ_hz9G+<|wlk1=)@~ zMV&9bod$7X@j7iyuiM%S6wdZrrmfvOXczbjcmHa#{YfT+^VM-}w?Y10P~i9iN5xYs8`Qrsi7v^vnV`b!ZMc9*ts0 zKf$N>6riV!bsl5!w210e4?Z+0|Tabxo!nb^+m|AEcY)yeqystX)P$Y<}CeS++D zZbdB!yA*hjD23Gpt>yIbE+d_|pT zN}3D~*x2Z8=XJ|~K*<>=aEXWbPUyR&W}{&}w?aZoN5K4=|8@($x1orVem7*8f@One&|?By$F1~nFM zaS&o0vDMkGjV>j&s10B=vvAEHE9h2vj80&3PqP>gS#*7HGxdbrGT;LD3tNP?*0XU| zR$;KmZL%w?QLMEruE1DFI4?;OEHQ zX6zM7JQAn?W8bWU%ai|yxb*iVFD(DKakD_rl)j%M=eZ+nl(x8=73)3fpuDiOg0Zoa z(0aJXknL~SeU2?2g-#`T9S88PUnCwSoR2^rLTJX*66ok?uWeI3n-CXIq$gSA+UwGW zwL%k_%JjGITt^3W7j;@=T9;)Pwdh0@Y6xJ9P}*!Nw-|!wFBAcvyWC-iOLiu?mNQ(r z{XLVxpC_%haIqB107lW{dHr?raw1!KoVc4XB&k#e0fyRWBZx5s*|iHV_kxVU$$qC)Hqezx z?8w;QvHWmR_iS{up6Fi>B_EggB7&a1E{==B%D+egXa~y$hwbOl1PM5Di2# z7>cu*l*VZ`wqW2zS79=LZ=l`mc*ALks%C-n0`JMI znL6b{F6m}8^8B>*!P5*~N34JlemjZUR5lme8wgcjN%Ea2DR(aVen_2>DghBmYd501 zRNKPTNM1=ky4V+XafBW+%%cX}t>OQ5#nZ?t>>fRMfRWzH=(sNAsf0e9RuE=B@2{60Vh*F0m8jn#`*g*yPQi3Up8w{2YF-6Ukwtww>SEQ zu}Q6c{_X6f?Nzxsi6?j8fbo9o~j@qMZ zG_@N6ZE7_XTH_Z-yuChRcKs;-1fV<6y>~CpCy@PYfzD{>_>t#U-B*Mj2-xp~!}7}z z1IfjLFmYt_QRl@J0zHNf72a5mM2&dZh|^(8`TChLAq8P{!1{&FK`kofp)MGS>yr`> zWAXb6);}JekFpSBFy{NPV=89vM2VnszGuE^VRKC2cm&nP&t? z%GzZ0)KJdpUX{3Ux82$mX+?u^EuxJJyw5u~HuRboYjy3XR=72<<@NrM*e$-{m{b;j zq|T*wCnpHEHD_=1bo+cI(#~yMK-vE3`}apqB=Sj30q{K{!_pJim4hE^(5-TU$)o9^$Cc7>a9ErwI6US$HfreEqv4i&AEOkw=tnBx z^CC`FE*gPk5|JLP{ITF(@}|2jnRkDZR7Q(qB=S^Z^84E;!l7K1&FQjQr=^1P97rAI z&!2Snh5GRpWgiGlwBdppG??VRz&i=whZV9 zW%jt4oBX=Xn3OgJ@2o{UexirkN6xX;(!xS1cnWvA)`}T!Vaz-ePX!MpTvo?WDE^qxpFAa-FulRS@dY zLELlURoLC_RHvhed{)KpecX7X8KyaNA$kgm5^olSKR7frOFww~ED{}*er!Y%exl^y z<8RxnoD|BNzD~4Q=gC&1oZOOJIrtsDileE|_m}hIxqD6`C!TEZ?L*pbR4#p@I@U2p zi1I##dHOWuRD4URp@{*XwO2gpFO9c7wo@Haa!#!~E+e}=4TVmJk-8A$C}CUXmx;b) zud>+@0WBWQZ?h>*Plq-_oZvb!G|2ezZ_|?X@1DQAzA)4q!L6yEd$*HbB6LZG#84ng z*V}@b2zmLj;rpN@G8K5Yo?zW0;oL02xqRoAIaYxfhQmru>@P0W?NKbLoa{YFlvz-J z6*Kk3AiTy2KmItr=RAVUwX_Isk36}z)FF}4YrGS>ymOD`CgsYmSaz?9_p5eeo@}}U za|94d*_T5JM&89`n3}cC*e<~vaR0WA{jM*S$@A5=9*OpE9~3lFZ?WHRlhMAB)vc4) z{ZwmAb=Ym^3w}N4A|kKDVQ)o(2%fU5$MM8UVP=K5ahuq+$9{y)J6GR3Zhx8yn+exA zyG`aZ6(4WX#QVM;r_8{@q9xfv`7_`ZR3njTr!wL=0S$t9KCs-6z#SU|0cBoHG2`w+nYuc83ioi>YEOC) zUEeY*GCpRXO^m(2&1X^&g3LBaWW0Fs;);vfRCrkqG34&AStXycVmHm;{RRen+C%}R z)(xGX&rUaC@lD!dX_)4&^VZcbNBj96uU&Yto5T<-pX~K3wiAy%mG|w^ z@XTF}A_SKbs3lVmDH>j91Rem$)0P1yiKzY=lSTB}=q09P_E6 zZBwR39&zx%D%VJ1R_|{J%J8W)J>HD-3i6k;2rB34ks%0H zH>PDI5~~8JV)+ME)YcSNuF8A!rms3m8NC0H{3QK34Sasx5x9Qci%%I=)`1V*$&uIH zRYKc@m9{k|PM>@EKje@Py`iwOLS6}T1Zpa6ZEY(B!nqB>y;Yr5y-c+IRq~*-ZdP}h z0LC?GJ)5NNqtwS!7-Y(t34^2v3Jh(0f1QRaYV8nk5T`WF7$X33El=xf3JEhjAhK&R z{%Re4+ISjkZ)(clT^8J}PbRp8AX9VJ4kUHM#@zdfb_QyPbh$P) zw<)Ts~*&?!T(XSvqnfv)@=bDA1tQ+X`{=(FkFZHD|{3 ziA*LGe#=I)xCXMgZusb(6uSt6knSkA(?ml?y%pBs#y-BvwkCEa?VLYXckF_YgjMmJL`3L))`L~PVmHzVPP5xnc+ z>cmY&ISN88ze*#ze*jTgl{I#eRz>_B`(Iv<3W!lf7q}W-;N34Rf(pCG(=tCPCrbY= zc?Db4KF~Y9--pfvzGeP%P}AhRs78(V&sFsqxRsvn9K@=r50dy=c6v6MtXz@^F>&mMSqFZp|a7Sv&Y`b+mWY9Ak|E6r8i zoCZi>F(AVrvm=As4+ZgWoI;!neSHCf3PUh&p8)`M&!7N=g0AP@hhC3qk&9Xtu^ldA zf7l;|ysS025^fZ=%BTX1ixKlejs%Yp=pHJbaGQ1;aJ?7*cpHGYvhr2`M@7vd?0CX= zqKp$C1n%6LtwNVN2bNm?b&VZ!O2kEfO8v`-ag3t|9xF*%g(O6;di;A}FUQW@HW};g zl}?cvX^XX~j$80nKe#^rNRsi#f9Hw#^t$ruwJT*KIYpYbIn;z4%LB-i(DWT7e4gy) z2I1~`_9^_s?;7=l49)B8Vh~Sm8X8_kBsH9Pj(QxTlxCt&X2Jbj1wYkM4*}&Bn~?Cd z{xl+21eJgPWiwGiOaDc_02bRT#LQlb@#?+GR-zUs;ufWe^wH})|2m31V7aM0t-5ROg=oZ+MO1ZJly60pc#+BoO` zzWdR9qc)vN6_I<6-R*2Rczfmq;*-0P1OfCaBh=tB@~cH6!|*h1(OOe2+(he~cP3uY zdLiDg605-UHRpiYK(6k;bLXu@~R6WJ*fCchh&Uz`u? zpr$YvQtzD(_UqB@y?Jh%Q0Sg2*lJ#dg|a$g0HqPz2yql~6fb8HtEQM&y&23*kjWnC zIkSMPchC8L_rToq_wFxp3I7-Jojr_}eV#G(mY@=4pY@TE^p{sAh^$)wnM`RRKhb zW1o)6AsoZaJs3#|SJTguM28thG#?um&ONkj7_G)2`7W^1_MFUJKV{_D%x!bB+w4ZJ zRd;wAK3mwDB{7}Rgvv(_QF!>3f~E+v8lBFVY~HYlYkPkRV?#mc@_vJN&lzr?p42=> z66QUXFEDw;fT;X5{wrja9hz0xp=&e9ocN@$%+9fyb^2PxB(z6uk|Bt0&*`&=lx>j1qi?SxQ&b~>$)A?;7FXrM8&{;=jK7Cso~149 zl~+wOQC27ggd3eMIYlWqAlmNu9PtSQq~eRxy}5Lf66sg|z(Fiea2MSs1Rvk^zbVM+ zqr;oNH0av=`;{`&uDyfC{U>uWbppzbr;Xk&dZ4jA920MHFMPP9wIgI9BeFU8Mk8{8 zj^x3sS6tV!dZlm$IZz~^tkk@>*)0p#uyVA8Gb!5SbrPDf=T#8JI~+THP!Y;gfk)4K zrv}(tGm63Qf*v|_$imYzJI{|`00g0cWRXlc1D<$q0A1D$W8Dv`;r>+2g&_!5o$FkR zRf!dIYD6pmz-tu6){os;5#vnk{KS+@#F1HP4}89nm#HDECH!F%ZGW(jo*gY`HT`&nRWIVB#}wtexD>!yGYWc zu%uAoPd^-EB8&H$D7FAS!veu#Df z&2ndhAl-Ipvu#S*kASrI*4%=M!0!KTm-Um_nKOs|nGp{Bu^9yRo%hSnk!WnEBw5Xs ztZpaJCD(YLN5P05)3Zhgg!boOs%DzUCR2g@mLq3)pm_Q6^Pya?!A4-% z_fLm&g6{M~H@6Emx9+Q8HgPdrD2N@ci*!1aGLzuQz`&rzzA1Hi#}`#33wxWZZs90^ zLF4Fz%$XD{7ftkiv+(UqJ$(r)P$R$C?rR@J`aS_V7lzyEO-^y2KWwpF7bz6mBcQtF z1zB^G(`P2U#u<jEIub9V#$n|id|ZA$hn^NH&4w`y6+A^jpN5# z_Zw=e{DHarz9$MXg#E6psUr`3&9L4nqz*sfx)ugnP5&3!S38h1^V^j1gEwfSSf`8|}

NM!MD?ISnxU+_Bfod%msqqFPH&(0tkBjSjE- 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þU$dro?93kul9@Ca??7sV+9lde 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 z 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 literal 0 HcmV?d00001 diff --git a/web/index.html b/web/index.html index 91caa94..f4b30a3 100644 --- a/web/index.html +++ b/web/index.html @@ -10,9 +10,15 @@

-
-

TraderAI

-

Local Ollama chat for UEX marketplace work

+
+ +
+

Lambda Banking Conglomerate

+

TraderAI

+

Institutional marketplace intelligence for UEX operations

+
Ready
diff --git a/web/styles.css b/web/styles.css index 1725c74..2fd3f82 100644 --- a/web/styles.css +++ b/web/styles.css @@ -1,54 +1,132 @@ +@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:wght@600;700;800&display=swap"); + :root { - color-scheme: dark; - --bg: #111316; - --panel: #191d22; - --panel-2: #20262d; - --text: #edf1f5; - --muted: #97a1ad; - --accent: #44c2a5; - --accent-2: #e6b94d; - --border: #303842; - --danger: #e66b6b; + color-scheme: light; + --cream: #f7f1dc; + --ivory: #fffaf0; + --ivory-2: #fbf4df; + --forest: #263a1b; + --forest-2: #345326; + --forest-3: #14210f; + --brown: #2e1c18; + --muted: #6f5b50; + --gold: #d4af37; + --gold-2: #f0d681; + --line: #ddceb0; + --line-strong: #c4aa73; + --danger: #9f3c32; + --shadow: 0 24px 70px rgba(11, 19, 8, 0.34); } * { box-sizing: border-box; } +html, +body { + height: 100%; +} + body { margin: 0; - min-height: 100vh; - background: var(--bg); - color: var(--text); - font-family: Inter, Segoe UI, Arial, sans-serif; + height: 100vh; + overflow: hidden; + background: + radial-gradient(circle at 18% 10%, rgba(240, 214, 129, 0.24), transparent 30%), + radial-gradient(circle at 85% 16%, rgba(255, 250, 240, 0.12), transparent 28%), + linear-gradient(135deg, #14210f 0%, #263a1b 42%, #345326 100%); + color: var(--brown); + font-family: Inter, "Segoe UI", Arial, sans-serif; + text-rendering: geometricPrecision; +} + +body::before { + content: ""; + position: fixed; + inset: 0; + pointer-events: none; + background: linear-gradient(115deg, rgba(255, 255, 255, 0.05), transparent 38%, rgba(0, 0, 0, 0.08)); } .shell { display: grid; - grid-template-columns: minmax(0, 1fr) 360px; - gap: 1px; - min-height: 100vh; - background: var(--border); + grid-template-columns: minmax(0, 1fr) 380px; + gap: 24px; + height: 100vh; + min-height: 0; + overflow: hidden; + padding: 24px; } .workspace, .actions { - background: var(--panel); + position: relative; + overflow: hidden; + border: 1px solid rgba(240, 214, 129, 0.34); + border-radius: 28px; + background: linear-gradient(180deg, var(--ivory) 0%, var(--cream) 100%); + box-shadow: var(--shadow), inset 0 1px 0 rgba(255, 255, 255, 0.76); } .workspace { display: grid; - grid-template-rows: auto 1fr auto; + grid-template-rows: auto auto 1fr auto; min-width: 0; + min-height: 0; +} + +.actions { + padding: 28px; + overflow: auto; + min-height: 0; } .topbar { + display: grid; + grid-template-columns: minmax(0, 1fr) auto; + align-items: center; + gap: 20px; + padding: 26px 28px; + border-bottom: 1px solid rgba(240, 214, 129, 0.28); + background: + linear-gradient(90deg, rgba(20, 33, 15, 0.96), rgba(38, 58, 27, 0.94)), + radial-gradient(circle at 18% 0%, rgba(212, 175, 55, 0.24), transparent 34%); +} + +.brand-block { display: flex; align-items: center; - justify-content: space-between; - gap: 16px; - padding: 18px 22px; - border-bottom: 1px solid var(--border); + gap: 18px; + min-width: 0; +} + +.brand-copy { + display: grid; + align-items: center; + gap: 5px; + min-width: 0; +} + +.logo-wrap { + position: relative; + display: grid; + width: 72px; + height: 72px; + flex: 0 0 72px; + place-items: center; + border: 1px solid rgba(240, 214, 129, 0.46); + border-radius: 22px; + background: + radial-gradient(circle at 35% 25%, rgba(240, 214, 129, 0.34), transparent 44%), + linear-gradient(145deg, rgba(255, 250, 240, 0.12), rgba(0, 0, 0, 0.14)); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.24), 0 14px 32px rgba(0, 0, 0, 0.2); +} + +.logo-wrap img { + width: 56px; + height: 56px; + object-fit: contain; + filter: drop-shadow(0 2px 7px rgba(0, 0, 0, 0.28)); } h1, @@ -57,52 +135,91 @@ p { margin: 0; } +h1, +h2, +.eyebrow, +button, +.status { + font-family: "Playfair Display", Georgia, serif; +} + h1 { - font-size: 22px; - font-weight: 700; + color: var(--ivory); + font-size: 36px; + font-weight: 800; + line-height: 1.02; + text-shadow: 0 2px 22px rgba(0, 0, 0, 0.38); } h2 { - font-size: 16px; margin-bottom: 14px; + color: var(--brown); + font-size: 24px; + font-weight: 800; + line-height: 1.15; +} + +.eyebrow { + color: var(--gold-2); + font-size: 12px; + font-weight: 800; + letter-spacing: 0.16em; + text-transform: uppercase; + white-space: nowrap; +} + +.topbar p { + max-width: 580px; + color: rgba(255, 250, 240, 0.82); + font-size: 14px; + font-weight: 500; } -.topbar p, .muted { color: var(--muted); - font-size: 13px; + font-size: 14px; } .status { - min-width: 76px; - padding: 7px 10px; - border: 1px solid var(--border); - border-radius: 6px; - color: var(--muted); - font-size: 13px; + min-width: 92px; + padding: 10px 14px; + border: 1px solid rgba(240, 214, 129, 0.42); + border-radius: 999px; + background: rgba(255, 250, 240, 0.1); + color: var(--gold-2); + font-size: 14px; + font-weight: 800; text-align: center; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12); } .warning { - padding: 10px 22px; - border-bottom: 1px solid rgba(230, 185, 77, 0.32); - background: rgba(230, 185, 77, 0.11); - color: #f0d28a; - font-size: 13px; + padding: 12px 28px; + border-bottom: 1px solid rgba(196, 170, 115, 0.38); + background: #f2e7bd; + color: #553906; + font-size: 14px; + font-weight: 600; } .messages { overflow: auto; - padding: 22px; + min-height: 0; + padding: 28px; + background: + radial-gradient(circle at 50% 12%, rgba(212, 175, 55, 0.1), transparent 34%), + linear-gradient(180deg, rgba(247, 241, 220, 0.58), rgba(255, 250, 240, 0.64)); } .message { - max-width: 900px; - margin-bottom: 14px; - padding: 13px 14px; - border: 1px solid var(--border); - border-radius: 8px; - line-height: 1.45; + max-width: 920px; + margin-bottom: 16px; + padding: 17px 18px; + border: 1px solid rgba(221, 206, 176, 0.9); + border-radius: 18px; + color: var(--brown); + line-height: 1.55; + box-shadow: 0 16px 38px rgba(38, 58, 27, 0.11); } .message p { @@ -120,52 +237,57 @@ h2 { .message ul, .message ol { - margin: 0 0 10px 20px; + margin: 0 0 10px 22px; padding: 0; } .message li { - margin: 3px 0; + margin: 4px 0; } .message li.nested { margin-left: 20px; - color: #d7dde4; + color: var(--muted); } .message strong { - color: #ffffff; + color: var(--forest); + font-weight: 800; } .message h3 { - margin: 12px 0 8px; - font-size: 15px; - line-height: 1.3; + margin: 14px 0 8px; + color: var(--forest); + font-family: "Playfair Display", Georgia, serif; + font-size: 19px; + line-height: 1.25; } .message h4, .message h5, .message h6 { - margin: 10px 0 7px; - font-size: 14px; + margin: 11px 0 7px; + color: var(--forest); + font-family: "Playfair Display", Georgia, serif; + font-size: 16px; line-height: 1.3; } .message hr { height: 1px; - margin: 12px 0; + margin: 14px 0; border: 0; - background: var(--border); + background: linear-gradient(90deg, transparent, rgba(196, 170, 115, 0.72), transparent); } .message code { - padding: 1px 5px; - border: 1px solid var(--border); - border-radius: 4px; - background: #0e1114; - color: #dfe5eb; + padding: 2px 6px; + border: 1px solid rgba(38, 58, 27, 0.15); + border-radius: 7px; + background: rgba(38, 58, 27, 0.08); + color: var(--forest); font-family: Consolas, Monaco, monospace; - font-size: 0.92em; + font-size: 0.9em; } .message pre { @@ -179,18 +301,21 @@ h2 { padding: 0; border: 0; background: transparent; + color: inherit; } .message blockquote { margin: 0 0 10px; - padding: 8px 10px; - border-left: 3px solid var(--accent); - background: rgba(68, 194, 165, 0.08); - color: #d7dde4; + padding: 11px 13px; + border-left: 4px solid var(--gold); + border-radius: 0 12px 12px 0; + background: rgba(212, 175, 55, 0.13); + color: #4b352c; } .message a { - color: #69d7bd; + color: var(--forest-2); + font-weight: 700; } .table-wrap { @@ -203,63 +328,147 @@ h2 { width: 100%; min-width: 420px; border-collapse: collapse; - font-size: 13px; + font-size: 14px; } .message th, .message td { - padding: 8px 9px; - border: 1px solid var(--border); + padding: 9px 10px; + border: 1px solid var(--line); vertical-align: top; } .message th { - background: #20262d; - color: #ffffff; - font-weight: 700; + background: rgba(38, 58, 27, 0.11); + color: var(--forest); + font-weight: 800; } .message.user { margin-left: auto; - background: var(--panel-2); + border-color: rgba(52, 83, 38, 0.28); + background: linear-gradient(180deg, #edf3df, #e5efd4); } .message.assistant { - background: #15191e; + background: rgba(255, 250, 240, 0.96); } .message.warning-message { - border-color: rgba(230, 185, 77, 0.42); - background: rgba(230, 185, 77, 0.1); + border-color: rgba(212, 175, 55, 0.6); + background: #f5eac4; } .composer-wrap { - border-top: 1px solid var(--border); + border-top: 1px solid var(--line); + background: rgba(255, 250, 240, 0.88); } .message-activity { - display: flex; + display: grid; + grid-template-columns: minmax(90px, 1fr) auto minmax(90px, 1fr); align-items: center; - justify-content: space-between; gap: 12px; - min-height: 20px; - margin-bottom: 6px; - color: rgba(151, 161, 173, 0.82); + min-height: 32px; + margin: -4px 0 9px; + padding: 5px 8px; + border: 1px solid rgba(221, 206, 176, 0.68); + border-radius: 12px; + background: rgba(247, 241, 220, 0.52); + color: var(--muted); font-size: 12px; + font-weight: 600; } .message-phase { display: inline-flex; align-items: center; + justify-content: center; + grid-column: 2; min-width: 0; + line-height: 1; + text-align: center; } .message-metrics { - color: rgba(151, 161, 173, 0.56); + grid-column: 3; + justify-self: end; + color: #8b7769; text-align: right; white-space: nowrap; } +.thinking-log { + margin: 0 0 10px; + color: var(--muted); + font-size: 13px; +} + +.thinking-log summary { + display: inline-flex; + align-items: center; + gap: 7px; + min-height: 28px; + padding: 3px 2px; + color: #7b6b60; + cursor: pointer; + font-weight: 700; + list-style: none; +} + +.thinking-log summary::-webkit-details-marker { + display: none; +} + +.thinking-log summary::before { + content: ""; + width: 7px; + height: 7px; + border-right: 2px solid currentColor; + border-bottom: 2px solid currentColor; + transform: rotate(-45deg); + transition: transform 160ms ease; +} + +.thinking-log[open] summary::before { + transform: rotate(45deg) translateY(-1px); +} + +.thinking-log.thinking-active summary { + color: var(--forest); +} + +.thinking-steps { + max-width: 720px; + margin: 3px 0 2px 16px; + padding: 2px 0 2px 16px; + border-left: 2px solid rgba(111, 91, 80, 0.2); + color: #7b6b60; + list-style: none; +} + +.thinking-steps li { + position: relative; + margin: 6px 0; + line-height: 1.45; +} + +.thinking-raw-step { + white-space: pre-wrap; +} + +.thinking-steps li::before { + content: ""; + position: absolute; + top: 0.72em; + left: -21px; + width: 7px; + height: 7px; + border-radius: 50%; + background: rgba(111, 91, 80, 0.42); + transform: translateY(-50%); +} + .working-dots { display: inline-flex; align-items: center; @@ -269,10 +478,10 @@ h2 { } .working-dots i { - width: 4px; - height: 4px; + width: 5px; + height: 5px; border-radius: 50%; - background: rgba(151, 161, 173, 0.8); + background: var(--gold); animation: pulse-dot 1.2s infinite ease-in-out; } @@ -288,7 +497,7 @@ h2 { 0%, 80%, 100% { - opacity: 0.3; + opacity: 0.35; transform: translateY(0); } 40% { @@ -300,69 +509,100 @@ h2 { .composer { display: grid; grid-template-columns: 1fr auto; - gap: 12px; - padding: 16px; + gap: 14px; + padding: 20px; } textarea { width: 100%; - resize: vertical; - min-height: 48px; + min-height: 58px; max-height: 180px; - padding: 12px; - border: 1px solid var(--border); - border-radius: 8px; + padding: 16px 17px; + resize: vertical; + border: 1px solid var(--line-strong); + border-radius: 18px; outline: none; - background: #101316; - color: var(--text); + background: #fffdf7; + color: var(--brown); font: inherit; + font-size: 15px; + line-height: 1.45; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9), 0 10px 28px rgba(38, 58, 27, 0.08); +} + +textarea::placeholder { + color: #88776c; +} + +textarea:focus { + border-color: var(--gold); + box-shadow: 0 0 0 4px rgba(212, 175, 55, 0.22), 0 10px 28px rgba(38, 58, 27, 0.09); } textarea:disabled { - opacity: 0.62; + opacity: 0.66; } button { - min-width: 92px; + min-width: 104px; border: 0; - border-radius: 8px; - background: var(--accent); - color: #07110f; - font-weight: 700; + border-radius: 18px; + background: linear-gradient(180deg, #345326, #1f3416); + color: var(--ivory); + font-weight: 800; cursor: pointer; + box-shadow: 0 16px 28px rgba(31, 52, 22, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.14); + transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease; +} + +button:hover { + background: linear-gradient(180deg, #3d612c, #263e1b); + box-shadow: 0 18px 34px rgba(31, 52, 22, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.16); + transform: translateY(-1px); +} + +button:active { + transform: translateY(0); } button.secondary { min-width: 0; - padding: 9px 12px; - border: 1px solid var(--border); - background: transparent; - color: var(--text); + padding: 10px 14px; + border: 1px solid var(--line-strong); + background: #fff9e9; + color: var(--forest); + box-shadow: 0 10px 22px rgba(38, 58, 27, 0.08); } .small-button { min-width: 0; - padding: 6px 9px; - font-size: 12px; + padding: 8px 12px; + font-size: 13px; } .danger-button { width: 100%; min-width: 0; - padding: 9px 10px; - margin: 10px 0; - border: 1px solid rgba(230, 107, 107, 0.45); - background: rgba(230, 107, 107, 0.14); - color: #f0b1b1; + padding: 12px 14px; + margin: 14px 0; + border: 1px solid rgba(159, 60, 50, 0.28); + background: linear-gradient(180deg, #fff5e9, #f5e6d4); + color: var(--danger); + box-shadow: 0 12px 25px rgba(88, 43, 33, 0.1); } -.actions { - padding: 18px; - overflow: auto; +.danger-button:hover { + background: linear-gradient(180deg, #fff2e5, #edd8c6); + color: #7f2d25; } .side-section { - margin-bottom: 22px; + margin-bottom: 28px; +} + +.side-section + .side-section { + padding-top: 24px; + border-top: 1px solid var(--line); } .section-title-row { @@ -375,116 +615,190 @@ button.secondary { .memory-controls { display: grid; grid-template-columns: 1fr 1fr; - gap: 6px 10px; + gap: 11px 14px; color: var(--muted); - font-size: 12px; + font-size: 14px; + font-weight: 600; } .memory-controls label { display: flex; align-items: center; - gap: 6px; + gap: 8px; +} + +input[type="checkbox"] { + width: 15px; + height: 15px; + accent-color: var(--forest); } .memory-inspector { - font-size: 12px; + font-size: 13px; + line-height: 1.35; } .memory-counts { - color: var(--text); - margin-bottom: 6px; + margin-bottom: 7px; + color: var(--brown); + font-weight: 800; } .memory-path { + margin-bottom: 12px; overflow-wrap: anywhere; color: var(--muted); - margin-bottom: 10px; } .memory-group { - margin-bottom: 8px; - border: 1px solid var(--border); - border-radius: 8px; - background: #15191e; + margin-bottom: 10px; + border: 1px solid var(--line); + border-radius: 16px; + background: rgba(255, 250, 240, 0.76); } .memory-group summary { + padding: 11px 13px; + color: var(--forest); cursor: pointer; - padding: 9px 10px; - color: var(--text); + font-weight: 800; } .memory-group pre { - margin: 0 10px 10px; + margin: 0 12px 12px; white-space: pre-wrap; } .pending-empty { color: var(--muted); - font-size: 13px; + font-size: 15px; + font-weight: 500; } .pending-card { - padding: 12px; - margin-bottom: 12px; - border: 1px solid var(--border); - border-radius: 8px; - background: #15191e; + padding: 15px; + margin-bottom: 14px; + border: 1px solid var(--line); + border-radius: 18px; + background: rgba(255, 250, 240, 0.82); + box-shadow: 0 14px 32px rgba(38, 58, 27, 0.1); } .pending-card strong { display: block; margin-bottom: 8px; + color: var(--forest); + font-family: "Playfair Display", Georgia, serif; + font-size: 17px; } pre { - overflow: auto; max-height: 240px; - padding: 10px; - border-radius: 6px; - background: #0e1114; - color: #dfe5eb; + padding: 12px; + overflow: auto; + border: 1px solid rgba(38, 58, 27, 0.14); + border-radius: 14px; + background: #efe6ce; + color: #3c2923; font-size: 12px; } .pending-controls { display: grid; grid-template-columns: 1fr 1fr; - gap: 8px; + gap: 10px; } .pending-card button { width: 100%; - padding: 10px; + padding: 11px; } .decline-button { - border: 1px solid var(--border); - background: transparent; + border: 1px solid var(--line-strong); + background: #fff9e9; color: var(--muted); + box-shadow: none; } -@media (max-width: 860px) { +.decline-button:hover { + background: #f5ead4; + color: var(--brown); +} + +@media (max-width: 960px) { .shell { grid-template-columns: 1fr; - } - - .actions { - border-top: 1px solid var(--border); + grid-template-rows: minmax(0, 1fr) minmax(220px, 34vh); } } -@media (max-width: 560px) { +@media (max-width: 620px) { + .shell { + gap: 14px; + padding: 10px; + } + + .workspace, + .actions { + border-radius: 22px; + } + + .topbar { + align-items: flex-start; + grid-template-columns: 1fr; + padding: 22px; + } + + .brand-block { + align-items: flex-start; + } + + .logo-wrap { + width: 58px; + height: 58px; + flex-basis: 58px; + border-radius: 18px; + } + + .logo-wrap img { + width: 45px; + height: 45px; + } + + h1 { + font-size: 31px; + } + + .eyebrow { + font-size: 10px; + letter-spacing: 0.08em; + } + + .messages, + .actions { + padding: 22px; + } + .composer { grid-template-columns: 1fr; + padding: 18px; } .composer button { width: 100%; - min-height: 42px; + min-height: 48px; } .message-metrics { display: none; } + + .message-activity { + grid-template-columns: 1fr; + } + + .message-phase { + grid-column: 1; + } }