Download assets/style.css from build-small-hackathon/site-intelligence-studio: direct link, hf CLI and curl.
- Browser
- Download file 32.4 kB
-
https://huggingface.co/spaces/build-small-hackathon/site-intelligence-studio/resolve/main/assets/style.css
- Command line
-
hf download hf://spaces/build-small-hackathon/site-intelligence-studio/assets/style.css
-
curl -L -o style.css https://huggingface.co/spaces/build-small-hackathon/site-intelligence-studio/resolve/main/assets/style.css
32.4 kB
| :root { | |
| color-scheme: light; | |
| --ink: #111614; | |
| --ink-soft: #26312e; | |
| --muted: #64706c; | |
| --faint: #8a9691; | |
| --canvas: #e9eef0; | |
| --paper: #fbfbf6; | |
| --paper-2: #f1f3ee; | |
| --panel: #ffffff; | |
| --panel-ink: #141918; | |
| --line: #b7c1bd; | |
| --line-strong: #71807b; | |
| --rule: #1f2a27; | |
| --cad-blue: #1f5f7d; | |
| --cad-blue-dark: #123b51; | |
| --survey-green: #0f766e; | |
| --survey-green-dark: #09443f; | |
| --amber: #c88920; | |
| --clay: #a94d34; | |
| --danger: #8f2f24; | |
| --positive: #11624f; | |
| --shadow-flat: 0 1px 0 rgba(17, 22, 20, 0.18); | |
| --shadow-strong: 0 24px 70px rgba(24, 31, 28, 0.16); | |
| --radius: 6px; | |
| --font-display: "Bahnschrift", "Aptos Display", "Segoe UI Variable Display", "Segoe UI", sans-serif; | |
| --font-body: "Aptos", "Segoe UI Variable Text", "Segoe UI", Tahoma, sans-serif; | |
| --font-mono: "Cascadia Code", "IBM Plex Mono", Consolas, monospace; | |
| } | |
| html, | |
| body, | |
| .gradio-container { | |
| min-height: 100%; | |
| background: | |
| linear-gradient(135deg, rgba(31, 95, 125, 0.16), transparent 32%), | |
| radial-gradient(circle at 88% 9%, rgba(200, 137, 32, 0.18), transparent 25%), | |
| linear-gradient(90deg, rgba(17, 22, 20, 0.055) 1px, transparent 1px), | |
| linear-gradient(rgba(17, 22, 20, 0.045) 1px, transparent 1px), | |
| var(--canvas) ; | |
| background-size: auto, auto, 38px 38px, 38px 38px, auto ; | |
| color: var(--ink) ; | |
| font-family: var(--font-body) ; | |
| letter-spacing: 0 ; | |
| } | |
| html, | |
| body { | |
| overflow-x: hidden ; | |
| } | |
| .gradio-container { | |
| width: 100% ; | |
| max-width: 1840px ; | |
| margin: 0 auto ; | |
| padding: 24px 28px 40px ; | |
| } | |
| .gradio-container * { | |
| box-sizing: border-box; | |
| } | |
| .gradio-container > .main, | |
| .gradio-container .contain { | |
| max-width: none ; | |
| } | |
| #app-header { | |
| position: relative; | |
| overflow: hidden; | |
| border: 1px solid rgba(17, 22, 20, 0.78); | |
| background: | |
| linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px), | |
| linear-gradient(rgba(255, 255, 255, 0.05) 1px, transparent 1px), | |
| linear-gradient(126deg, #111614 0%, #17211e 58%, #20312c 100%); | |
| background-size: 34px 34px, 34px 34px, auto; | |
| border-radius: var(--radius); | |
| padding: 28px 30px 26px; | |
| margin: 0 0 14px; | |
| box-shadow: var(--shadow-strong); | |
| } | |
| #app-header::before { | |
| content: ""; | |
| position: absolute; | |
| left: 0; | |
| top: 0; | |
| bottom: 0; | |
| width: 8px; | |
| background: linear-gradient(180deg, var(--cad-blue), var(--survey-green), var(--amber)); | |
| } | |
| #app-header::after { | |
| content: "WGS84 / OSM / OPEN-METEO / FIELD VERIFY"; | |
| position: absolute; | |
| right: 18px; | |
| bottom: 12px; | |
| color: rgba(255, 255, 255, 0.22); | |
| font-family: var(--font-mono); | |
| font-size: 11px; | |
| letter-spacing: 0.08em; | |
| } | |
| .app-kicker { | |
| position: relative; | |
| z-index: 1; | |
| margin: 0 0 12px 12px; | |
| color: #87d7ce; | |
| font-family: var(--font-mono); | |
| font-size: 12px; | |
| font-weight: 800; | |
| letter-spacing: 0.14em; | |
| text-transform: uppercase; | |
| } | |
| .header-grid { | |
| position: relative; | |
| z-index: 1; | |
| display: grid; | |
| grid-template-columns: minmax(0, 1fr) minmax(360px, 540px); | |
| gap: 32px; | |
| align-items: end; | |
| padding-left: 12px; | |
| } | |
| #app-header h1 { | |
| margin: 0; | |
| color: #ffffff ; | |
| font-family: var(--font-display) ; | |
| font-size: clamp(44px, 5.8vw, 86px); | |
| font-weight: 900; | |
| line-height: 0.88; | |
| letter-spacing: 0 ; | |
| max-width: 940px; | |
| overflow-wrap: anywhere; | |
| } | |
| .app-subtitle { | |
| margin: 18px 0 0; | |
| max-width: 980px; | |
| color: #dbe6e2 ; | |
| font-size: 17px; | |
| line-height: 1.56; | |
| } | |
| .status-stack { | |
| display: grid; | |
| gap: 9px; | |
| } | |
| .status-stack div { | |
| display: grid; | |
| grid-template-columns: 128px 1fr; | |
| gap: 14px; | |
| align-items: baseline; | |
| min-height: 58px; | |
| border: 1px solid rgba(255, 255, 255, 0.18); | |
| background: rgba(255, 255, 255, 0.065); | |
| border-radius: var(--radius); | |
| padding: 12px 14px; | |
| backdrop-filter: blur(10px); | |
| min-width: 0; | |
| } | |
| .status-stack b { | |
| color: #ffffff; | |
| font-family: var(--font-display); | |
| font-size: 14px; | |
| font-weight: 850; | |
| line-height: 1.2; | |
| } | |
| .status-stack span { | |
| color: #c4d1cc ; | |
| font-size: 13px; | |
| line-height: 1.35; | |
| overflow-wrap: anywhere; | |
| } | |
| .workflow-strip { | |
| display: grid; | |
| grid-template-columns: repeat(4, minmax(0, 1fr)); | |
| gap: 0; | |
| border: 1px solid var(--rule); | |
| background: var(--paper); | |
| border-radius: var(--radius); | |
| overflow: hidden; | |
| margin: 0 0 18px; | |
| box-shadow: var(--shadow-flat); | |
| } | |
| .workflow-strip div { | |
| position: relative; | |
| min-height: 74px; | |
| padding: 15px 18px 14px 64px; | |
| border-right: 1px solid var(--line); | |
| background: | |
| linear-gradient(180deg, rgba(31, 95, 125, 0.07), transparent 58%), | |
| var(--paper); | |
| } | |
| .workflow-strip div:last-child { | |
| border-right: 0; | |
| } | |
| .workflow-strip b { | |
| position: absolute; | |
| left: 16px; | |
| top: 16px; | |
| display: grid; | |
| width: 34px; | |
| height: 34px; | |
| place-items: center; | |
| border: 1px solid var(--rule); | |
| background: var(--ink); | |
| color: #ffffff; | |
| font-family: var(--font-mono); | |
| font-size: 12px; | |
| line-height: 1; | |
| } | |
| .workflow-strip span { | |
| display: block; | |
| color: var(--ink); | |
| font-family: var(--font-display); | |
| font-size: 16px; | |
| font-weight: 850; | |
| } | |
| .workflow-strip small { | |
| display: block; | |
| margin-top: 5px; | |
| color: var(--muted); | |
| font-size: 12px; | |
| line-height: 1.35; | |
| } | |
| .main-workspace { | |
| gap: 18px ; | |
| align-items: stretch ; | |
| } | |
| .studio-shell { | |
| border: 1px solid var(--rule); | |
| border-radius: var(--radius); | |
| overflow: hidden; | |
| background: #101716; | |
| box-shadow: var(--shadow-strong); | |
| margin-bottom: 16px; | |
| } | |
| .studio-topbar { | |
| display: flex; | |
| justify-content: space-between; | |
| gap: 24px; | |
| align-items: center; | |
| min-height: 118px; | |
| padding: 24px 28px; | |
| background: | |
| linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px), | |
| linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px), | |
| linear-gradient(120deg, #0e1614 0%, #13211f 58%, #1d2e2a 100%); | |
| background-size: 34px 34px, 34px 34px, auto; | |
| } | |
| .studio-kicker { | |
| display: block; | |
| color: #8ce6dc ; | |
| font-family: var(--font-mono); | |
| font-size: 12px; | |
| font-weight: 850; | |
| letter-spacing: 0.12em; | |
| text-transform: uppercase; | |
| } | |
| .gradio-container .studio-shell .studio-topbar h1, | |
| .gradio-container .studio-shell .studio-topbar .prose h1, | |
| .gradio-container .studio-shell .studio-topbar .markdown h1 { | |
| margin: 10px 0 0; | |
| color: #ffffff ; | |
| -webkit-text-fill-color: #ffffff ; | |
| font-family: var(--font-display) ; | |
| font-size: clamp(34px, 4.4vw, 64px); | |
| font-weight: 900; | |
| line-height: 0.92; | |
| text-shadow: 0 2px 18px rgba(0, 0, 0, 0.42); | |
| } | |
| .studio-meta { | |
| display: flex; | |
| flex-wrap: wrap; | |
| justify-content: flex-end; | |
| gap: 8px; | |
| } | |
| .studio-meta span { | |
| display: inline-flex; | |
| min-height: 36px; | |
| align-items: center; | |
| border: 1px solid rgba(255, 255, 255, 0.26); | |
| background: rgba(255, 255, 255, 0.08); | |
| color: #ffffff ; | |
| border-radius: 4px; | |
| padding: 8px 11px; | |
| font-family: var(--font-display); | |
| font-size: 12px; | |
| font-weight: 850; | |
| text-transform: uppercase; | |
| } | |
| .studio-briefing { | |
| display: grid; | |
| grid-template-columns: repeat(3, minmax(0, 1fr)); | |
| border-top: 1px solid rgba(255, 255, 255, 0.14); | |
| background: #ffffff; | |
| } | |
| .studio-briefing div { | |
| min-height: 98px; | |
| border-right: 1px solid var(--line); | |
| padding: 16px 18px; | |
| } | |
| .studio-briefing div:last-child { | |
| border-right: 0; | |
| } | |
| .studio-briefing b { | |
| display: block; | |
| color: var(--ink); | |
| font-family: var(--font-display); | |
| font-size: 16px; | |
| font-weight: 900; | |
| } | |
| .studio-briefing span { | |
| display: block; | |
| margin-top: 6px; | |
| color: var(--ink-soft) ; | |
| font-size: 13px; | |
| line-height: 1.42; | |
| } | |
| .studio-proof-row { | |
| display: grid; | |
| grid-template-columns: repeat(4, minmax(0, 1fr)); | |
| border-top: 1px solid var(--rule); | |
| background: #f3f8f6; | |
| } | |
| .studio-proof-row div { | |
| min-height: 68px; | |
| padding: 13px 18px; | |
| border-right: 1px solid var(--line); | |
| } | |
| .studio-proof-row div:last-child { | |
| border-right: 0; | |
| } | |
| .studio-proof-row b { | |
| display: block; | |
| color: var(--survey-green-dark); | |
| font-family: var(--font-display); | |
| font-size: 13px; | |
| font-weight: 900; | |
| text-transform: uppercase; | |
| } | |
| .studio-proof-row span { | |
| display: block; | |
| margin-top: 4px; | |
| color: var(--ink-soft) ; | |
| font-size: 13px; | |
| } | |
| .studio-workbench { | |
| display: grid ; | |
| grid-template-columns: minmax(230px, 0.68fr) minmax(660px, 1.9fr) minmax(270px, 0.78fr); | |
| gap: 16px ; | |
| align-items: start ; | |
| margin-top: 16px; | |
| } | |
| .studio-workbench > div { | |
| min-width: 0 ; | |
| width: 100% ; | |
| } | |
| .brief-pane, | |
| .source-pane, | |
| .canvas-pane { | |
| min-width: 0 ; | |
| } | |
| .brief-pane, | |
| .source-pane { | |
| border: 1px solid var(--rule) ; | |
| border-radius: var(--radius) ; | |
| background: | |
| linear-gradient(90deg, rgba(17, 22, 20, 0.035) 1px, transparent 1px), | |
| linear-gradient(rgba(17, 22, 20, 0.026) 1px, transparent 1px), | |
| #ffffff ; | |
| background-size: 26px 26px, 26px 26px, auto ; | |
| padding: 14px ; | |
| box-shadow: var(--shadow-strong); | |
| } | |
| .canvas-pane { | |
| padding: 0 ; | |
| } | |
| .pane-heading, | |
| .review-header { | |
| display: grid; | |
| grid-template-columns: 42px minmax(0, 1fr); | |
| gap: 12px; | |
| align-items: center; | |
| margin-bottom: 12px; | |
| } | |
| .pane-heading > span, | |
| .review-header > span { | |
| display: grid; | |
| width: 38px; | |
| height: 38px; | |
| place-items: center; | |
| border: 1px solid var(--rule); | |
| background: var(--ink); | |
| color: #ffffff ; | |
| font-family: var(--font-mono); | |
| font-size: 12px; | |
| font-weight: 850; | |
| } | |
| .pane-heading b, | |
| .review-header b { | |
| display: block; | |
| color: var(--ink); | |
| font-family: var(--font-display); | |
| font-size: 20px; | |
| font-weight: 900; | |
| line-height: 1.05; | |
| } | |
| .pane-heading small, | |
| .review-header small { | |
| display: block; | |
| margin-top: 4px; | |
| color: var(--muted); | |
| font-size: 12px; | |
| line-height: 1.35; | |
| } | |
| .canvas-heading { | |
| margin: 0 0 10px; | |
| } | |
| .source-pane .upload-panel { | |
| margin: 12px 0 ; | |
| padding: 0 ; | |
| border: 1px solid var(--line-strong) ; | |
| background: #ffffff ; | |
| box-shadow: none ; | |
| } | |
| .source-pane .upload-panel > div { | |
| background: transparent ; | |
| } | |
| .minimum-card, | |
| .source-card { | |
| border: 1px solid var(--rule); | |
| border-left: 7px solid var(--survey-green); | |
| border-radius: var(--radius); | |
| padding: 13px 14px; | |
| margin: 12px 0; | |
| background: #eef8f6; | |
| color: var(--ink); | |
| box-shadow: 3px 3px 0 rgba(17, 22, 20, 0.08); | |
| } | |
| .source-card { | |
| border-left-color: var(--cad-blue); | |
| background: #eef5f8; | |
| } | |
| .minimum-card b, | |
| .source-card b { | |
| display: block; | |
| color: var(--ink); | |
| font-family: var(--font-display); | |
| font-size: 16px; | |
| font-weight: 900; | |
| } | |
| .minimum-card span, | |
| .source-card span { | |
| display: block; | |
| margin-top: 6px; | |
| color: var(--ink-soft) ; | |
| font-size: 13px; | |
| line-height: 1.42; | |
| } | |
| .brief-accordion, | |
| .upload-panel { | |
| border-radius: var(--radius) ; | |
| overflow: hidden ; | |
| } | |
| .brief-accordion > div:first-child, | |
| .upload-panel > div:first-child { | |
| min-height: 44px ; | |
| border-bottom: 1px solid var(--line) ; | |
| background: #ffffff ; | |
| color: var(--ink) ; | |
| font-family: var(--font-display) ; | |
| font-weight: 900 ; | |
| } | |
| .brief-accordion label, | |
| .upload-panel label { | |
| color: var(--ink) ; | |
| font-family: var(--font-display) ; | |
| font-weight: 850 ; | |
| } | |
| .run-card { | |
| border: 1px solid var(--rule); | |
| border-left: 6px solid var(--amber); | |
| border-radius: var(--radius); | |
| padding: 13px 14px; | |
| margin: 12px 0; | |
| background: #fff8e9; | |
| } | |
| .run-card b { | |
| display: block; | |
| color: var(--ink); | |
| font-family: var(--font-display); | |
| font-weight: 900; | |
| } | |
| .run-card span { | |
| display: block; | |
| margin-top: 6px; | |
| color: #47361c ; | |
| font-size: 13px; | |
| line-height: 1.4; | |
| } | |
| .deliverables-strip { | |
| display: grid; | |
| grid-template-columns: repeat(4, minmax(0, 1fr)); | |
| gap: 0; | |
| margin: 12px 0; | |
| border: 1px solid var(--rule); | |
| border-radius: var(--radius); | |
| overflow: hidden; | |
| background: #ffffff; | |
| box-shadow: var(--shadow-flat); | |
| } | |
| .deliverables-strip div { | |
| min-height: 72px; | |
| padding: 13px 14px; | |
| border-right: 1px solid var(--line); | |
| background: | |
| linear-gradient(180deg, rgba(15, 118, 110, 0.07), transparent 65%), | |
| #ffffff; | |
| } | |
| .deliverables-strip div:last-child { | |
| border-right: 0; | |
| } | |
| .deliverables-strip b { | |
| display: block; | |
| color: var(--ink); | |
| font-family: var(--font-display); | |
| font-size: 15px; | |
| font-weight: 900; | |
| } | |
| .deliverables-strip span { | |
| display: block; | |
| margin-top: 5px; | |
| color: var(--ink-soft) ; | |
| font-size: 12px; | |
| line-height: 1.35; | |
| } | |
| .review-header { | |
| margin: 22px 0 12px; | |
| border: 1px solid var(--rule); | |
| border-left: 8px solid var(--survey-green); | |
| border-radius: var(--radius); | |
| padding: 14px 16px; | |
| background: #ffffff; | |
| box-shadow: var(--shadow-flat); | |
| } | |
| .review-tabs { | |
| border: 1px solid var(--rule) ; | |
| border-radius: var(--radius) ; | |
| background: #ffffff ; | |
| box-shadow: var(--shadow-strong); | |
| overflow: hidden; | |
| } | |
| .map-workspace, | |
| .control-panel { | |
| min-width: 0 ; | |
| } | |
| #sis-map-shell { | |
| border: 1px solid var(--rule); | |
| border-radius: var(--radius); | |
| overflow: hidden; | |
| background: var(--panel); | |
| box-shadow: var(--shadow-strong); | |
| } | |
| .map-topbar { | |
| display: flex; | |
| justify-content: space-between; | |
| gap: 16px; | |
| align-items: center; | |
| padding: 14px 16px; | |
| border-bottom: 1px solid var(--rule); | |
| background: | |
| linear-gradient(90deg, rgba(15, 118, 110, 0.22), transparent 44%), | |
| #111614; | |
| } | |
| .map-topbar strong { | |
| display: block; | |
| color: #ffffff; | |
| font-family: var(--font-display); | |
| font-size: 19px; | |
| font-weight: 900; | |
| line-height: 1.1; | |
| overflow-wrap: anywhere; | |
| } | |
| .map-topbar span { | |
| display: block; | |
| margin-top: 4px; | |
| color: #ccd9d5 ; | |
| font-size: 13px; | |
| line-height: 1.35; | |
| overflow-wrap: anywhere; | |
| } | |
| .map-confidence { | |
| border: 1px solid rgba(255, 255, 255, 0.32); | |
| background: #ffffff; | |
| color: var(--ink); | |
| border-radius: 4px; | |
| padding: 8px 10px; | |
| font-family: var(--font-mono); | |
| font-size: 11px; | |
| font-weight: 850; | |
| letter-spacing: 0.03em; | |
| text-transform: uppercase; | |
| white-space: nowrap; | |
| } | |
| .map-controls { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 8px; | |
| align-items: center; | |
| padding: 10px; | |
| border-bottom: 1px solid var(--line-strong); | |
| background: | |
| linear-gradient(90deg, rgba(17, 22, 20, 0.065) 1px, transparent 1px), | |
| linear-gradient(rgba(17, 22, 20, 0.05) 1px, transparent 1px), | |
| #f6f7f3; | |
| background-size: 22px 22px, 22px 22px, auto; | |
| } | |
| .map-controls button, | |
| .map-controls select { | |
| min-height: 42px; | |
| border: 1px solid var(--rule); | |
| background: #ffffff; | |
| color: var(--ink); | |
| border-radius: 4px; | |
| padding: 8px 12px; | |
| font-family: var(--font-display); | |
| font-size: 14px; | |
| font-weight: 800; | |
| cursor: pointer; | |
| box-shadow: 2px 2px 0 rgba(17, 22, 20, 0.16); | |
| transition: transform 120ms ease, box-shadow 120ms ease, background 120ms ease; | |
| } | |
| .map-controls button:hover, | |
| .map-controls select:hover { | |
| background: #f1fbf9; | |
| transform: translate(-1px, -1px); | |
| box-shadow: 3px 3px 0 rgba(17, 22, 20, 0.22); | |
| } | |
| .map-controls button.active { | |
| background: var(--survey-green); | |
| color: #ffffff; | |
| border-color: var(--survey-green-dark); | |
| } | |
| .map-controls label { | |
| display: inline-flex; | |
| gap: 8px; | |
| align-items: center; | |
| color: var(--ink) ; | |
| font-family: var(--font-display); | |
| font-size: 13px; | |
| font-weight: 850; | |
| } | |
| #site-map { | |
| width: 100%; | |
| height: 650px; | |
| min-height: 520px; | |
| background: #cfd9d6; | |
| } | |
| .leaflet-container { | |
| font-family: var(--font-body) ; | |
| } | |
| .leaflet-control-attribution, | |
| .leaflet-control-scale-line { | |
| color: #16211e ; | |
| font-family: var(--font-mono) ; | |
| font-size: 10px ; | |
| } | |
| .leaflet-popup-content-wrapper, | |
| .leaflet-popup-tip { | |
| border-radius: 4px ; | |
| } | |
| #map-status { | |
| min-height: 44px; | |
| padding: 11px 14px; | |
| border-top: 1px solid var(--line-strong); | |
| font-family: var(--font-mono); | |
| font-size: 12px; | |
| color: var(--ink-soft); | |
| background: #ffffff; | |
| } | |
| #map_state { | |
| position: absolute ; | |
| left: -10000px ; | |
| top: auto ; | |
| width: 1px ; | |
| height: 1px ; | |
| overflow: hidden ; | |
| } | |
| .warning-note { | |
| margin: 14px 0 0; | |
| border: 1px solid #8a6121; | |
| border-left: 8px solid var(--amber); | |
| padding: 13px 15px; | |
| background: #fff8e9; | |
| color: #332717 ; | |
| border-radius: var(--radius); | |
| line-height: 1.48; | |
| } | |
| .control-panel, | |
| .upload-panel { | |
| border: 1px solid var(--rule) ; | |
| background: | |
| linear-gradient(90deg, rgba(17, 22, 20, 0.035) 1px, transparent 1px), | |
| linear-gradient(rgba(17, 22, 20, 0.026) 1px, transparent 1px), | |
| var(--panel) ; | |
| background-size: 28px 28px, 28px 28px, auto ; | |
| border-radius: var(--radius) ; | |
| padding: 18px ; | |
| box-shadow: var(--shadow-strong); | |
| } | |
| .control-panel { | |
| position: relative; | |
| } | |
| .control-panel::before { | |
| content: "INPUTS"; | |
| position: absolute; | |
| top: 12px; | |
| right: 14px; | |
| color: rgba(17, 22, 20, 0.34); | |
| font-family: var(--font-mono); | |
| font-size: 11px; | |
| letter-spacing: 0.12em; | |
| } | |
| .control-panel h3 { | |
| margin: 0 0 12px ; | |
| color: var(--ink) ; | |
| font-family: var(--font-display) ; | |
| font-size: 22px ; | |
| font-weight: 900 ; | |
| } | |
| .control-panel label, | |
| .upload-panel label, | |
| .gradio-container label, | |
| .gradio-container span, | |
| .gradio-container p, | |
| .gradio-container li { | |
| color: var(--ink-soft) ; | |
| } | |
| .gradio-container label { | |
| font-weight: 780 ; | |
| } | |
| .gradio-container textarea, | |
| .gradio-container input, | |
| .gradio-container select { | |
| color: var(--ink) ; | |
| background: #ffffff ; | |
| border: 1px solid var(--line-strong) ; | |
| border-radius: 4px ; | |
| font-family: var(--font-body) ; | |
| font-size: 15px ; | |
| box-shadow: none ; | |
| } | |
| .gradio-container textarea::placeholder, | |
| .gradio-container input::placeholder { | |
| color: #737f7b ; | |
| opacity: 1 ; | |
| } | |
| .gradio-container textarea:focus, | |
| .gradio-container input:focus, | |
| .gradio-container select:focus { | |
| outline: 3px solid rgba(31, 95, 125, 0.24) ; | |
| border-color: var(--cad-blue) ; | |
| } | |
| .gradio-container .form, | |
| .gradio-container .block, | |
| .gradio-container .block-background, | |
| .gradio-container .input-container, | |
| .gradio-container .wrap, | |
| .gradio-container .output-markdown, | |
| .gradio-container .markdown, | |
| .gradio-container .image-container { | |
| border-color: var(--line) ; | |
| background: #ffffff ; | |
| color: var(--ink) ; | |
| } | |
| .coverage-card { | |
| margin-top: 14px; | |
| border: 1px solid var(--line-strong); | |
| border-top: 5px solid var(--cad-blue); | |
| background: rgba(255, 255, 255, 0.82); | |
| color: var(--ink); | |
| border-radius: var(--radius); | |
| padding: 15px 16px; | |
| } | |
| .coverage-card strong { | |
| display: block; | |
| margin-bottom: 10px; | |
| color: var(--cad-blue-dark); | |
| font-family: var(--font-display); | |
| font-weight: 900; | |
| } | |
| .coverage-card ul { | |
| margin: 0; | |
| padding-left: 18px; | |
| } | |
| .coverage-card li { | |
| margin: 7px 0; | |
| line-height: 1.4; | |
| } | |
| .control-panel button.secondary, | |
| .control-panel button[variant="secondary"], | |
| .upload-panel button.secondary, | |
| .upload-panel button[variant="secondary"] { | |
| min-height: 44px ; | |
| border: 1px solid var(--rule) ; | |
| background: #ffffff ; | |
| color: var(--cad-blue-dark) ; | |
| border-radius: 4px ; | |
| font-family: var(--font-display) ; | |
| font-weight: 850 ; | |
| box-shadow: 2px 2px 0 rgba(17, 22, 20, 0.14) ; | |
| } | |
| .control-panel button.secondary:hover, | |
| .control-panel button[variant="secondary"]:hover, | |
| .upload-panel button.secondary:hover, | |
| .upload-panel button[variant="secondary"]:hover { | |
| background: #eef8f6 ; | |
| } | |
| .upload-panel { | |
| margin-top: 18px ; | |
| } | |
| .upload-panel > div:first-child { | |
| color: var(--ink) ; | |
| font-family: var(--font-display) ; | |
| font-weight: 900 ; | |
| } | |
| .generate-button button, | |
| .map-generate-button button, | |
| button.primary { | |
| min-height: 54px ; | |
| background: linear-gradient(90deg, var(--survey-green), #0b5f57) ; | |
| color: #ffffff ; | |
| border: 1px solid var(--survey-green-dark) ; | |
| border-radius: 4px ; | |
| font-family: var(--font-display) ; | |
| font-size: 16px ; | |
| font-weight: 900 ; | |
| letter-spacing: 0 ; | |
| box-shadow: 4px 4px 0 rgba(17, 22, 20, 0.24) ; | |
| } | |
| .generate-button button:hover, | |
| .map-generate-button button:hover, | |
| button.primary:hover { | |
| background: linear-gradient(90deg, var(--cad-blue), var(--survey-green-dark)) ; | |
| transform: translate(-1px, -1px); | |
| } | |
| .map-generate-button button { | |
| width: 100% ; | |
| min-height: 58px ; | |
| font-size: 17px ; | |
| } | |
| .tabs { | |
| margin-top: 20px ; | |
| } | |
| .tab-nav { | |
| border-bottom: 1px solid var(--rule) ; | |
| } | |
| .tab-nav button { | |
| color: var(--ink-soft) ; | |
| font-family: var(--font-display) ; | |
| font-weight: 850 ; | |
| } | |
| .tab-nav button[aria-selected="true"] { | |
| color: var(--ink) ; | |
| border-bottom-color: var(--amber) ; | |
| background: #ffffff ; | |
| } | |
| .output-intro { | |
| display: flex; | |
| justify-content: space-between; | |
| gap: 14px; | |
| align-items: center; | |
| margin: 0 0 14px; | |
| padding: 13px 15px; | |
| border: 1px solid var(--rule); | |
| border-left: 8px solid var(--cad-blue); | |
| border-radius: var(--radius); | |
| background: #ffffff; | |
| box-shadow: var(--shadow-flat); | |
| } | |
| .output-intro strong { | |
| color: var(--ink); | |
| font-family: var(--font-display); | |
| font-weight: 900; | |
| } | |
| .output-intro span { | |
| color: var(--ink-soft) ; | |
| overflow-wrap: anywhere; | |
| } | |
| .board-preview-frame, | |
| .board-preview-empty { | |
| border: 1px solid var(--rule); | |
| border-radius: var(--radius); | |
| background: #ffffff; | |
| color: var(--ink-soft); | |
| overflow: hidden; | |
| box-shadow: var(--shadow-strong); | |
| } | |
| .board-preview-empty { | |
| min-height: 320px; | |
| display: grid; | |
| place-items: center; | |
| color: var(--muted); | |
| background: | |
| linear-gradient(90deg, rgba(17, 22, 20, 0.05) 1px, transparent 1px), | |
| linear-gradient(rgba(17, 22, 20, 0.05) 1px, transparent 1px), | |
| #ffffff; | |
| background-size: 32px 32px, 32px 32px, auto; | |
| } | |
| .board-preview-waiting { | |
| min-height: 560px; | |
| padding: 28px; | |
| place-items: stretch; | |
| } | |
| .empty-board-grid { | |
| display: grid; | |
| height: 100%; | |
| min-height: 500px; | |
| grid-template-columns: 1.55fr repeat(2, minmax(0, 1fr)); | |
| grid-auto-rows: minmax(130px, auto); | |
| gap: 14px; | |
| } | |
| .empty-board-title { | |
| grid-row: span 2; | |
| display: flex; | |
| flex-direction: column; | |
| justify-content: flex-end; | |
| border: 1px solid var(--rule); | |
| border-radius: var(--radius); | |
| padding: 24px; | |
| background: | |
| linear-gradient(90deg, rgba(255, 255, 255, 0.06) 1px, transparent 1px), | |
| linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px), | |
| #101716; | |
| background-size: 32px 32px, 32px 32px, auto; | |
| color: #ffffff; | |
| } | |
| .empty-board-title span { | |
| color: #8ce6dc ; | |
| font-family: var(--font-mono); | |
| font-size: 12px; | |
| font-weight: 850; | |
| letter-spacing: 0.08em; | |
| text-transform: uppercase; | |
| } | |
| .empty-board-title b { | |
| display: block; | |
| max-width: 540px; | |
| margin-top: 12px; | |
| color: #ffffff; | |
| font-family: var(--font-display); | |
| font-size: clamp(31px, 3vw, 54px); | |
| font-weight: 900; | |
| line-height: 0.98; | |
| } | |
| .empty-board-title small { | |
| display: block; | |
| max-width: 560px; | |
| margin-top: 14px; | |
| color: #d5e0dd ; | |
| font-size: 15px; | |
| line-height: 1.45; | |
| } | |
| .empty-board-card { | |
| border: 1px solid var(--line-strong); | |
| border-radius: var(--radius); | |
| padding: 18px; | |
| background: #ffffff; | |
| color: var(--ink); | |
| box-shadow: 4px 4px 0 rgba(17, 22, 20, 0.08); | |
| } | |
| .empty-board-card b { | |
| display: grid; | |
| width: 36px; | |
| height: 36px; | |
| place-items: center; | |
| margin-bottom: 20px; | |
| background: var(--ink); | |
| color: #ffffff; | |
| font-family: var(--font-mono); | |
| font-size: 12px; | |
| } | |
| .empty-board-card span { | |
| display: block; | |
| color: var(--ink); | |
| font-family: var(--font-display); | |
| font-size: 19px; | |
| font-weight: 900; | |
| line-height: 1.12; | |
| } | |
| .board-preview-frame img { | |
| display: block; | |
| width: 100%; | |
| height: auto; | |
| } | |
| .prose, | |
| .markdown, | |
| .output-markdown { | |
| color: var(--ink) ; | |
| font-size: 15px ; | |
| line-height: 1.58 ; | |
| } | |
| .prose h1, | |
| .prose h2, | |
| .prose h3, | |
| .markdown h1, | |
| .markdown h2, | |
| .markdown h3 { | |
| color: var(--ink) ; | |
| font-family: var(--font-display) ; | |
| letter-spacing: 0 ; | |
| } | |
| .prose h1, | |
| .markdown h1 { | |
| font-size: 31px ; | |
| } | |
| .prose h2, | |
| .markdown h2 { | |
| margin-top: 26px ; | |
| font-size: 22px ; | |
| border-bottom: 1px solid var(--line); | |
| padding-bottom: 6px; | |
| } | |
| .prose h3, | |
| .markdown h3 { | |
| font-size: 17px ; | |
| } | |
| .prose code, | |
| .markdown code { | |
| background: #e7f0ee ; | |
| color: #092b28 ; | |
| border: 1px solid #c8d8d4; | |
| border-radius: 3px; | |
| padding: 1px 5px; | |
| } | |
| .prose table, | |
| .markdown table { | |
| width: 100%; | |
| background: #ffffff ; | |
| color: var(--ink) ; | |
| border-collapse: collapse; | |
| font-size: 13px ; | |
| } | |
| .prose th, | |
| .markdown th { | |
| background: #14201d ; | |
| color: #ffffff ; | |
| } | |
| .prose td, | |
| .prose th, | |
| .markdown td, | |
| .markdown th { | |
| border: 1px solid var(--line) ; | |
| padding: 9px ; | |
| } | |
| .evidence-shell { | |
| background: #ffffff; | |
| border: 1px solid var(--rule); | |
| border-radius: var(--radius); | |
| color: var(--ink); | |
| overflow: hidden; | |
| box-shadow: var(--shadow-strong); | |
| } | |
| .evidence-header { | |
| display: flex; | |
| justify-content: space-between; | |
| gap: 18px; | |
| align-items: center; | |
| padding: 16px 18px; | |
| background: | |
| linear-gradient(90deg, rgba(31, 95, 125, 0.28), transparent 60%), | |
| #111614; | |
| color: #ffffff; | |
| } | |
| .evidence-header span { | |
| display: block; | |
| color: #89d7ce ; | |
| font-family: var(--font-mono); | |
| font-size: 11px; | |
| font-weight: 850; | |
| letter-spacing: 0.10em; | |
| text-transform: uppercase; | |
| } | |
| .evidence-header strong { | |
| display: block; | |
| margin-top: 4px; | |
| color: #ffffff; | |
| font-family: var(--font-display); | |
| font-size: 20px; | |
| font-weight: 900; | |
| } | |
| .evidence-header b { | |
| color: #ffffff; | |
| font-family: var(--font-mono); | |
| white-space: nowrap; | |
| } | |
| .evidence-scroll { | |
| overflow-x: auto; | |
| background: #ffffff; | |
| } | |
| .evidence-html-table { | |
| width: 100%; | |
| min-width: 1320px; | |
| border-collapse: collapse; | |
| table-layout: fixed; | |
| background: #ffffff; | |
| color: var(--ink); | |
| } | |
| .evidence-html-table th { | |
| position: sticky; | |
| top: 0; | |
| z-index: 1; | |
| background: #17211e; | |
| color: #ffffff; | |
| border-bottom: 2px solid var(--line-strong); | |
| font-family: var(--font-display); | |
| font-size: 12px; | |
| line-height: 1.25; | |
| text-align: left; | |
| text-transform: uppercase; | |
| letter-spacing: 0.04em; | |
| padding: 12px 10px; | |
| } | |
| .evidence-html-table td { | |
| vertical-align: top; | |
| border-bottom: 1px solid var(--line); | |
| color: var(--ink); | |
| font-size: 13px; | |
| line-height: 1.44; | |
| padding: 12px 10px; | |
| overflow-wrap: anywhere; | |
| } | |
| .evidence-html-table tr:nth-child(even) td { | |
| background: #f5f8f6; | |
| } | |
| .evidence-id { | |
| font-family: var(--font-mono); | |
| color: var(--cad-blue-dark) ; | |
| font-weight: 850; | |
| } | |
| .evidence-html-table small { | |
| display: block; | |
| margin-top: 5px; | |
| color: var(--muted); | |
| } | |
| .confidence { | |
| display: inline-block; | |
| border-radius: 3px; | |
| padding: 4px 7px; | |
| font-family: var(--font-mono); | |
| font-size: 11px; | |
| font-weight: 850; | |
| text-transform: uppercase; | |
| } | |
| .confidence-high { | |
| background: #d7eee9; | |
| color: #083e36; | |
| } | |
| .confidence-medium { | |
| background: #fff1cf; | |
| color: #60410f; | |
| } | |
| .confidence-low { | |
| background: #f8dcd4; | |
| color: #722719; | |
| } | |
| .gradio-container a { | |
| color: var(--cad-blue) ; | |
| } | |
| .gradio-container a:visited { | |
| color: #5b456c ; | |
| } | |
| footer { | |
| color: var(--muted) ; | |
| } | |
| #app-header, | |
| .workflow-strip, | |
| #sis-map-shell, | |
| .control-panel, | |
| .upload-panel, | |
| .tabs { | |
| opacity: 1 ; | |
| transform: none ; | |
| animation: none ; | |
| filter: none ; | |
| } | |
| @media (max-width: 1120px) { | |
| .studio-workbench { | |
| grid-template-columns: 1fr 1fr ; | |
| } | |
| .canvas-pane { | |
| grid-column: 1 / -1; | |
| order: -1; | |
| } | |
| .header-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| .status-stack { | |
| grid-template-columns: repeat(3, minmax(0, 1fr)); | |
| } | |
| .status-stack div { | |
| grid-template-columns: 1fr; | |
| } | |
| } | |
| @media (max-width: 920px) { | |
| html, | |
| body { | |
| width: 100% ; | |
| max-width: 100vw ; | |
| margin: 0 ; | |
| padding: 0 ; | |
| background: var(--canvas) ; | |
| } | |
| gradio-app, | |
| #root, | |
| .app, | |
| .main, | |
| .contain, | |
| .gradio-container > .main, | |
| .gradio-container .contain { | |
| width: 100vw ; | |
| max-width: 100vw ; | |
| min-width: 0 ; | |
| margin: 0 ; | |
| padding-left: 0 ; | |
| padding-right: 0 ; | |
| overflow-x: hidden ; | |
| } | |
| .gradio-container { | |
| padding: 10px ; | |
| overflow-x: hidden ; | |
| margin: 0 ; | |
| width: 100vw ; | |
| max-width: 100vw ; | |
| min-width: 0 ; | |
| } | |
| #app-header { | |
| padding: 20px 16px 34px; | |
| width: 100%; | |
| max-width: calc(100vw - 20px) ; | |
| } | |
| #app-header h1 { | |
| font-size: clamp(31px, 10vw, 39px); | |
| line-height: 0.96; | |
| } | |
| #app-header::after { | |
| left: 18px; | |
| right: auto; | |
| bottom: 10px; | |
| } | |
| .workflow-strip, | |
| .status-stack { | |
| grid-template-columns: 1fr; | |
| } | |
| .studio-topbar { | |
| align-items: flex-start; | |
| flex-direction: column; | |
| padding: 20px 18px; | |
| } | |
| .gradio-container .studio-shell .studio-topbar h1, | |
| .gradio-container .studio-shell .studio-topbar .prose h1, | |
| .gradio-container .studio-shell .studio-topbar .markdown h1 { | |
| font-size: clamp(31px, 9.5vw, 40px) ; | |
| line-height: 0.96 ; | |
| } | |
| .studio-meta { | |
| justify-content: flex-start; | |
| } | |
| .studio-briefing, | |
| .studio-proof-row, | |
| .studio-workbench { | |
| grid-template-columns: 1fr ; | |
| } | |
| .studio-shell > .deliverables-strip, | |
| .studio-proof-row { | |
| display: none; | |
| } | |
| .studio-briefing div:nth-child(n + 2) { | |
| display: none; | |
| } | |
| .studio-briefing div, | |
| .studio-proof-row div { | |
| border-right: 0; | |
| border-bottom: 1px solid var(--line); | |
| } | |
| .studio-briefing div:last-child, | |
| .studio-proof-row div:last-child { | |
| border-bottom: 0; | |
| } | |
| .canvas-pane { | |
| order: -1; | |
| } | |
| .workflow-strip, | |
| #sis-map-shell, | |
| .warning-note, | |
| .control-panel, | |
| .upload-panel, | |
| .tabs, | |
| .studio-shell, | |
| .brief-pane, | |
| .source-pane, | |
| .canvas-pane, | |
| .review-header, | |
| .review-tabs { | |
| width: 100% ; | |
| max-width: calc(100vw - 20px) ; | |
| } | |
| .workflow-strip div { | |
| border-right: 0; | |
| border-bottom: 1px solid var(--line); | |
| } | |
| .workflow-strip div:last-child { | |
| border-bottom: 0; | |
| } | |
| .main-workspace, | |
| .main-workspace > div, | |
| .main-workspace .map-workspace, | |
| .main-workspace .control-panel { | |
| display: flex ; | |
| flex-direction: column ; | |
| width: 100% ; | |
| max-width: 100% ; | |
| min-width: 0 ; | |
| flex: 1 1 100% ; | |
| } | |
| .map-topbar { | |
| align-items: flex-start; | |
| flex-direction: column; | |
| } | |
| .map-confidence { | |
| white-space: normal; | |
| } | |
| #site-map { | |
| height: 500px; | |
| min-height: 420px; | |
| } | |
| .map-controls button, | |
| .map-controls select { | |
| flex: 1 1 calc(50% - 8px); | |
| min-width: 0; | |
| } | |
| .map-controls button { | |
| min-height: 42px; | |
| padding: 9px 10px; | |
| } | |
| .map-controls label { | |
| width: 100%; | |
| } | |
| .map-controls label select { | |
| max-width: 128px; | |
| } | |
| .deliverables-strip { | |
| grid-template-columns: repeat(2, minmax(0, 1fr)); | |
| } | |
| .deliverables-strip div:nth-child(2n) { | |
| border-right: 0; | |
| } | |
| .deliverables-strip div { | |
| border-bottom: 1px solid var(--line); | |
| } | |
| .deliverables-strip div:nth-last-child(-n + 2) { | |
| border-bottom: 0; | |
| } | |
| .empty-board-grid { | |
| grid-template-columns: 1fr; | |
| min-height: auto; | |
| } | |
| .empty-board-title { | |
| grid-row: auto; | |
| min-height: 260px; | |
| } | |
| .board-preview-waiting { | |
| min-height: auto; | |
| padding: 14px; | |
| } | |
| .control-panel { | |
| margin-top: 16px ; | |
| } | |
| .output-intro { | |
| align-items: flex-start; | |
| flex-direction: column; | |
| } | |
| } | |