Spaces:
Running on Zero
Running on Zero
Download assets/frosted.css from FanLR/GroundingPI: direct link, hf CLI and curl.
- Browser
- Download file 22.1 kB
-
https://huggingface.co/spaces/FanLR/GroundingPI/resolve/main/assets/frosted.css
- Command line
-
hf download hf://spaces/FanLR/GroundingPI/assets/frosted.css
-
curl -L -o frosted.css https://huggingface.co/spaces/FanLR/GroundingPI/resolve/main/assets/frosted.css
22.1 kB
| /* Screenshot-led console: settings left, image right, examples/results below. | |
| paper.css supplies shared evidence geometry and interaction primitives. */ | |
| :root{ | |
| --purple:#7954ae;--purple-deep:#60418c;--lime:#257a4d; | |
| --ink:#202127;--muted:#636570;--line:rgba(47,47,65,.1); | |
| --paper:#f5f6f9;--lavender:#efebf6;--canvas:#f0eff5; | |
| --surface:#fdfdfe;--selection:#f1ecf8;--action-hover:#1d653e; | |
| --glass:rgba(250,252,255,.58);--glass-strong:rgba(255,255,255,.8); | |
| --ease:cubic-bezier(.22,1,.36,1); | |
| --ui:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",Manrope,"PingFang SC","Microsoft YaHei",sans-serif; | |
| } | |
| .gradio-container{padding-top:28px} | |
| .studio-header{padding:4px 2px 26px;align-items:center} | |
| .studio-header h1{font-family:var(--ui);font-size:30px;font-weight:650;line-height:1.25;letter-spacing:-.025em;color:var(--ink);margin:0} | |
| .studio-header p{font-family:var(--ui);font-size:14px;color:var(--muted);margin:8px 0 0} | |
| .header-note{display:flex;gap:8px;font-family:var(--ui)} | |
| .header-note>span{background:rgba(255,255,255,.8);border:0;border-radius:20px;color:var(--muted);font-size:12px;font-weight:400;padding:8px 13px} | |
| #console{display:flex;flex-direction:column;gap:20px;border:0;border-radius:0;overflow:visible;background:transparent;box-shadow:none} | |
| #workspace-top{display:flex;flex-wrap:nowrap;gap:0;align-items:stretch;border-radius:24px;background:linear-gradient(125deg,#ece6f5 0%,#f1f3f7 44%,#eaf0e8 100%);box-shadow:0 18px 48px rgba(42,46,73,.07),inset 0 1px 0 #fff;overflow:visible} | |
| #controls{position:relative;top:auto;z-index:12;flex:0 0 28.5%;min-width:290px;gap:20px;margin:0;padding:36px;border-radius:24px 0 0 24px;background:rgba(255,255,255,.67);backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);box-shadow:inset 1px 1px 0 rgba(255,255,255,.94)} | |
| #controls>*{flex-grow:0}.control-brand{padding-bottom:12px} | |
| .xpeng-logo{width:174px;height:auto;margin:0 0 26px;border-radius:5px} | |
| .control-brand h2{font-family:var(--ui);font-size:34px;font-weight:650;line-height:1.18;letter-spacing:-.035em;color:var(--ink);margin:0 0 13px} | |
| .control-brand p{font-family:var(--ui);font-size:14px;font-weight:400;line-height:1.8;color:var(--muted);max-width:22ch;margin:0} | |
| #control-fields{flex-wrap:nowrap;gap:14px;align-items:stretch} | |
| #media-type{flex:0 0 86px;min-width:86px} | |
| .media-field>span{display:block;font-family:var(--ui);font-size:12px;color:var(--muted);margin-bottom:8px} | |
| .media-field>div{display:flex;align-items:center;justify-content:center;gap:7px;background:#e8efea;min-height:46px;border-radius:12px;font-family:var(--ui);font-size:13px;font-weight:600;color:#275c3e} | |
| .media-field svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.5} | |
| #route-select,#case-select{min-width:0;background:transparent;border:0;padding:0;overflow:visible} | |
| #route-select{flex:1 1 0} | |
| #route-select label,#case-select label{display:block;min-height:0;padding:0;margin:0;font-family:var(--ui);font-size:12px;font-weight:400;color:var(--muted);background:transparent;box-shadow:none;border:0;border-radius:0} | |
| #route-select label>span,#case-select label>span{display:block;margin-bottom:8px;font-size:12px;color:var(--muted)} | |
| #route-select .wrap,#case-select .wrap{display:flex;position:relative;flex-wrap:nowrap;gap:4px;min-height:46px;border:1px solid rgba(87,83,105,.15);border-radius:12px;padding:10px 12px;background:rgba(255,255,255,.74);box-shadow:inset 0 1px 0 #fff;overflow:visible;isolation:auto} | |
| #route-select input,#case-select input{position:static;flex:1 1 0;min-width:0;width:100%;height:auto;opacity:1;margin:0;padding:0;color:var(--ink);font-family:var(--ui);font-size:14px;font-weight:500} | |
| #route-select .icon-wrap,#case-select .icon-wrap{flex:0 0 18px;width:18px;height:18px} | |
| #route-select svg,#case-select svg,#advanced-options>.label-wrap svg{width:16px;height:16px} | |
| /* Never resurrect Gradio's hidden progress layers with a material selector. */ | |
| #console .wrap.hide{display:none} | |
| #route-select .wrap:focus-within,#case-select .wrap:focus-within{border-color:var(--purple)} | |
| #route-select ul,#case-select ul{z-index:60;background:#fdfdfe;color:var(--ink);box-shadow:0 12px 28px rgba(35,29,51,.14);border-radius:12px} | |
| #route-select li,#case-select li{font-size:14px} | |
| #upload-button{width:100%;flex:0 0 auto;min-width:0;min-height:46px;border:0;border-radius:12px;padding:12px 16px;background:var(--glass);color:var(--purple-deep);font-family:var(--ui);font-size:14px;font-weight:500;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:inset 0 1px 0 #fff,0 3px 10px rgba(48,42,71,.055)} | |
| #upload-button:hover{background:rgba(255,255,255,.9)} | |
| #advanced-options{border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:6px 0} | |
| #advanced-options>.label-wrap{font-family:var(--ui);font-size:13px;font-weight:400;min-height:40px;color:var(--muted)} | |
| .runtime-options{display:grid;grid-template-columns:auto 1fr;gap:10px;font-family:var(--ui);font-size:12px;line-height:1.6;color:var(--muted);padding:10px 0} | |
| .runtime-options b{text-align:right;overflow-wrap:anywhere;color:var(--ink);font-weight:500}.runtime-options small{grid-column:1/-1;font-size:12px;line-height:1.7} | |
| #service-panel{padding-top:12px;border-top:1px solid var(--line);gap:7px} | |
| .api-status,.api-status span{font-family:var(--ui);font-weight:400;font-size:12px;line-height:1.65;color:var(--muted)} | |
| .api-status.online{color:#306443}.api-status.offline{color:#a63b42} | |
| #health-button{font-family:var(--ui);font-size:12px;font-weight:400;min-height:36px} | |
| #run-button{margin-top:auto;flex:0 0 auto;width:100%;min-width:0;min-height:50px;border-radius:25px;background:var(--lime);color:#fff;font-family:var(--ui);font-size:15px;font-weight:600;box-shadow:inset 0 1px 0 rgba(255,255,255,.24),0 7px 18px rgba(37,122,77,.15)} | |
| #run-button:hover:not(:disabled){background:var(--action-hover)}#run-button:disabled{background:var(--lavender);color:var(--purple-deep);box-shadow:none}#run-button.is-waiting{color:transparent} | |
| #visual-stage{position:relative;isolation:isolate;flex:1 1 0;min-width:0;gap:0;padding:0;overflow:hidden;border-radius:0 24px 24px 0;background:var(--canvas)} | |
| .scene-atmosphere{position:absolute;inset:-40px;width:auto;z-index:-1;pointer-events:none;background-position:center;background-size:cover;filter:blur(34px) saturate(.85);opacity:.2} | |
| #stage-toolbar{position:relative;top:auto;left:auto;width:100%;z-index:8;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:16px;min-height:76px;padding:20px 28px 12px;background:transparent;pointer-events:auto} | |
| #view-toggle{flex:0 0 auto;width:fit-content;min-width:0;pointer-events:auto} | |
| #view-toggle .wrap{padding:5px;gap:3px;background:var(--glass);border-radius:23px;backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);box-shadow:inset 0 1.5px 1px rgba(255,255,255,.98),inset 0 -1px 1px rgba(255,255,255,.55),0 5px 16px rgba(39,43,64,.085)} | |
| #view-toggle label{border-radius:20px;min-height:34px;padding:8px 13px;font-family:var(--ui);font-size:12px;font-weight:500;color:#24242b} | |
| #view-toggle label:hover{background:rgba(255,255,255,.38)} | |
| #view-toggle label:has(input:checked){color:var(--purple-deep);font-weight:600} | |
| #view-toggle .active-tab-indicator{border-radius:20px;background:rgba(255,255,255,.83);box-shadow:0 2px 6px rgba(39,43,64,.07),inset 0 1px 0 #fff;transition-duration:300ms} | |
| #stage-status{flex:1 1 0;width:auto;min-width:0;min-height:0;max-width:47%;padding:0} | |
| .stage-status{display:flex;gap:7px;padding:8px 11px;border-radius:14px;background:rgba(255,255,255,.7);font-family:var(--ui);font-size:12px;font-weight:400;line-height:1.6;color:#326144;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)} | |
| .stage-status span{color:inherit}.stage-status i{margin-top:6px} | |
| .stage-status.reference,.stage-status.busy{color:var(--purple-deep)}.stage-status.error{color:#a63b42}.wait-clock{font-family:var(--ui);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums} | |
| #canvas-viewport{padding:12px 40px 54px;background:transparent;isolation:auto} | |
| #stage-image{height:440px;transition-duration:380ms} | |
| #stage-image img{border-radius:9px;box-shadow:0 10px 24px rgba(35,35,47,.09)}#stage-image .buttons{top:8px} | |
| .canvas-tools{min-height:54px;padding:8px 28px;font-family:var(--ui);font-size:12px;font-weight:400;color:#282830} | |
| .image-dimensions{padding:6px 10px;background:rgba(255,255,255,.64);border-radius:16px} | |
| .zoom-tools{padding:4px 8px;border-radius:23px;background:var(--glass);backdrop-filter:blur(24px) saturate(1.4);-webkit-backdrop-filter:blur(24px) saturate(1.4);box-shadow:inset 0 1.5px 1px #fff,inset 0 -1px 1px rgba(255,255,255,.55),0 5px 16px rgba(39,43,64,.085)} | |
| .zoom-tools button{width:32px;height:32px;border-radius:50%;color:#24242b}.zoom-tools button:hover{background:rgba(255,255,255,.6)} | |
| .zoom-value{font-family:var(--ui);font-size:12px;font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}.tool-divider{background:var(--line)} | |
| #query-row{position:relative;z-index:2;display:block;padding:14px 40px 28px;background:transparent;border:0} | |
| #query-dock{max-width:760px;margin:0 auto;padding:14px 18px;border:0;border-radius:15px;background:rgba(255,255,255,.75);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:inset 0 1px 1px #fff,0 6px 22px rgba(39,43,64,.075)} | |
| #query-dock label>span{font-family:var(--ui);font-size:12px;font-weight:500;color:var(--purple-deep);margin-bottom:6px} | |
| #query-dock textarea{font-family:var(--ui);font-size:14px;line-height:1.65;font-weight:400;color:var(--ink)} | |
| #query-dock:focus-within{outline:2px solid rgba(121,84,174,.5);outline-offset:2px} | |
| #review-row{display:flex;flex-wrap:nowrap;gap:20px;align-items:stretch} | |
| #sandbox-panel{flex:0 0 38%;min-width:0;padding:24px;gap:17px;background:rgba(255,255,255,.86);border-radius:20px;box-shadow:0 8px 24px rgba(42,46,73,.045)} | |
| .film-heading{align-items:center;font-family:var(--ui);font-size:14px;font-weight:500;color:var(--ink)}.film-heading h2{font-family:var(--ui);font-size:16px;font-weight:600;margin:0}.film-heading small{font-family:var(--ui);font-size:12px;font-weight:400;color:var(--muted)} | |
| #case-gallery{height:170px} | |
| #case-gallery .grid-container{gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))} | |
| #case-gallery .thumbnail-item{min-width:0} | |
| #case-gallery .thumbnail-item{height:154px;flex-direction:column;align-items:stretch;gap:6px;border-radius:12px;background:#fff;border-color:rgba(70,64,88,.12);padding:5px} | |
| #case-gallery .thumbnail-item img{width:100%;height:112px;flex:1 1 0;min-height:0;border-radius:8px} | |
| #case-gallery .caption-label{max-width:100%;text-align:center;font-family:var(--ui);font-size:12px;line-height:1.5;font-weight:500;color:#52525f;padding:3px} | |
| #case-gallery .thumbnail-item:hover{border-color:#a797bc;background:#faf8fd} | |
| #case-gallery .thumbnail-item.selected{background:var(--selection);border:2px solid var(--purple);padding:4px} | |
| #source-details{margin-top:auto;border:0;border-top:1px solid var(--line);padding:10px 0 0} | |
| #source-details .label-wrap{font-family:var(--ui);font-size:12px;font-weight:400;min-height:36px} | |
| .source-meta{font-family:var(--ui);font-size:12px;font-weight:400;line-height:1.7}.source-meta>span,.source-meta small{font-size:12px} | |
| #review-summary{flex:1 1 0;min-width:0;padding:0;background:var(--surface);border-radius:20px;box-shadow:0 8px 24px rgba(42,46,73,.045)} | |
| #result-columns{display:flex;flex-wrap:nowrap;gap:0;align-items:stretch} | |
| #metrics-panel{flex:0 0 41%;min-width:0;padding:24px;border:0;gap:20px} | |
| .inspector-subheading{font-family:var(--ui);font-size:16px;font-weight:600;color:var(--ink);line-height:1.4} | |
| .metrics-list{font-family:var(--ui);font-size:12px;font-weight:400}.metrics-list>div{padding:8px 0;gap:14px}.metrics-list dd{font-family:var(--ui);font-size:12px;font-weight:500;line-height:1.6;color:#41424c} | |
| #sidebar{flex:1 1 0;min-width:0;width:auto;padding:24px;border:0;border-left:1px solid var(--line);background:transparent;gap:20px} | |
| .inspector-heading h2{font-family:var(--ui);font-size:16px;font-weight:600;color:var(--ink)} | |
| .inspector-heading{align-items:baseline;flex-wrap:wrap;gap:7px}.live-mark{font-family:var(--ui);font-size:12px;font-weight:400;line-height:1.6;color:var(--muted)} | |
| #targets-panel{flex:1 1 auto} | |
| .empty-targets{min-height:174px}.empty-targets svg{width:32px;height:32px;color:#8a7f9c}.empty-targets>b{font-family:var(--ui);font-size:14px;font-weight:500;color:#4a4655}.empty-targets>small{font-family:var(--ui);font-size:12px;font-weight:400;line-height:1.8} | |
| .targets-summary{font-family:var(--ui);font-size:12px;font-weight:400}.targets-summary b{font-family:var(--ui);font-size:19px;font-weight:600}.targets-summary>span{font-size:11px} | |
| .target-chips{max-height:240px;display:flex;flex-direction:column} | |
| .target-chip{min-height:36px;padding:8px 10px;border-radius:8px;font-family:var(--ui);font-size:13px;font-weight:400;color:#53535d} | |
| .target-chip:hover{background:#f5f2fa}.target-chip[aria-pressed=true]{background:var(--selection);color:var(--purple-deep)}.target-chip b{font-family:var(--ui);font-size:12px;font-weight:500} | |
| .focus-help,.targets-caption{font-family:var(--ui);font-size:12px;font-weight:400;line-height:1.7}.clear-focus{font-family:var(--ui);font-size:12px;font-weight:500} | |
| .detail-heading{font-family:var(--ui);font-size:13px;font-weight:500}.detail-heading small{font-family:var(--ui);font-size:12px;font-weight:400}.detail-image{height:150px;border-radius:9px}.detail-coordinates{font-size:12px;line-height:1.6} | |
| .focus-dimmer{fill:#1c1c28;opacity:.42;animation-duration:260ms}.focus-outline{animation-duration:360ms}.evidence-detail{animation-duration:300ms} | |
| .focus-caption{top:auto;bottom:12px;left:12px;max-width:calc(100% - 24px);padding:5px 6px 5px 13px;border-radius:12px;background:var(--glass-strong);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 4px 14px rgba(20,20,32,.1),inset 0 1px 0 #fff;color:var(--ink);font-family:var(--ui);font-size:13px;font-weight:500} | |
| .focus-caption button{background:rgba(220,220,230,.55);color:#55555e;border-radius:7px} | |
| .glass-control{position:relative;--glint-x:35%} | |
| .glass-control::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(ellipse at var(--glint-x) 0%,rgba(255,255,255,.66),transparent 65%);transition:opacity 200ms var(--ease)} | |
| .glass-control:hover::after{opacity:.8}.glass-control:active::after{opacity:1} | |
| #prompt-console,#output-console{margin-top:6px;border-bottom-color:var(--line);padding:5px 3px} | |
| #prompt-console>.label-wrap,#output-console>.label-wrap{font-family:var(--ui);font-size:13px;font-weight:400;min-height:40px;color:var(--muted)} | |
| .console-note,.studio-footer{font-family:var(--ui);font-size:12px;font-weight:400;line-height:1.7;color:var(--muted)}.studio-footer{padding:12px 2px} | |
| @keyframes focus-dim{from{opacity:0}to{opacity:.42}} | |
| @media(min-width:1500px){#controls{padding:42px}#stage-image{height:500px}#canvas-viewport{padding:14px 54px 56px}#query-row{padding:16px 54px 32px}#sidebar{flex:1 1 0;min-width:0;padding:28px}#metrics-panel{padding:28px}} | |
| @media(max-width:1100px){#controls{flex-basis:30%;min-width:260px;padding:26px}.control-brand h2{font-size:30px}.xpeng-logo{width:150px}.control-brand p{font-size:13px}#control-fields{gap:10px}#media-type{flex-basis:74px;min-width:74px}#stage-toolbar{padding:16px 18px 10px;gap:10px;flex-wrap:wrap}#stage-status{max-width:100%;flex-basis:100%}.stage-status{width:fit-content;padding:5px 10px}#canvas-viewport{padding:12px 24px 54px}#stage-image{height:390px}#query-row{padding:12px 24px 24px}#sandbox-panel{padding:20px}#metrics-panel{flex-basis:42%;padding:20px}#sidebar{flex:1 1 0;min-width:0;padding:20px}#case-gallery .thumbnail-item{height:144px}} | |
| @media(max-width:760px){ | |
| .studio-header{padding:4px 2px 18px}.studio-header h1{font-size:25px}.studio-header p{font-size:13px;margin-top:6px}.header-note{display:none} | |
| #console{gap:16px}#workspace-top{flex-direction:column;border-radius:20px} | |
| #controls{flex:0 0 auto;min-width:0;padding:24px;border-radius:20px 20px 0 0;gap:16px} | |
| .control-brand{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding-bottom:4px}.xpeng-logo{width:108px;margin:0}.control-brand h2{font-size:25px;margin:0}.control-brand p{display:none} | |
| #control-fields{gap:14px}#media-type{flex-basis:92px;min-width:92px} | |
| #run-button{min-height:48px;height:auto;margin-top:0;font-size:14px;min-width:0;flex:0 0 auto} | |
| #visual-stage{flex:0 0 auto;border-radius:0 0 20px 20px}#stage-toolbar{padding:16px 16px 8px;gap:10px;min-height:0} | |
| #stage-status{max-width:none;flex-basis:100%}.stage-status{font-size:12px} | |
| #view-toggle label{padding:8px 12px;font-size:12px;min-height:36px} | |
| #canvas-viewport{padding:10px 16px 58px}#stage-image{height:300px} | |
| .canvas-tools{padding:9px 16px;min-height:58px;font-size:12px}.zoom-tools button{width:34px;height:34px} | |
| #query-row{padding:10px 16px 22px}#query-dock{padding:13px 15px} | |
| #review-row{flex-direction:column;gap:16px}#sandbox-panel{flex:0 0 auto;width:100%;padding:22px 18px} | |
| #case-gallery{height:150px}#case-gallery .thumbnail-item{height:136px}.film-heading small{font-size:12px;max-width:none} | |
| #review-summary{width:100%}#result-columns{flex-direction:column} | |
| #metrics-panel{flex:0 0 auto;width:100%;padding:24px;gap:14px}.metrics-list{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px}.metrics-list>div{gap:4px;padding:4px 0} | |
| #sidebar{flex:0 0 auto;width:100%;padding:24px;border-left:0;border-top:1px solid var(--line);gap:16px} | |
| .target-chips{display:grid;grid-template-columns:1fr 1fr;max-height:250px}.target-chip{min-height:42px} | |
| .empty-targets{min-height:174px}.detail-image{height:170px}.evidence-detail{max-width:none} | |
| #source-details .label-wrap{min-height:40px}.studio-footer{gap:5px;padding:12px 2px;line-height:1.7} | |
| } | |
| @media(max-width:430px){#stage-image{height:262px}.canvas-tools .image-dimensions{font-size:12px}.control-brand{gap:12px}.control-brand h2{font-size:24px}.xpeng-logo{width:102px}.film-heading h2{font-size:15px}} | |
| @media(prefers-reduced-transparency:reduce){#controls,#view-toggle .wrap,#upload-button,#query-dock,.zoom-tools,.focus-caption,.stage-status{backdrop-filter:none;-webkit-backdrop-filter:none;background:#fafafc}.scene-atmosphere{opacity:0}.glass-control::after{display:none}} | |
| @media(prefers-contrast:more){#controls,#view-toggle .wrap,#upload-button,#query-dock,.zoom-tools,.focus-caption,.stage-status{background:#fff;outline:1px solid #53535e}.scene-atmosphere{opacity:.1}} | |
| @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none;transition-duration:0ms}} | |