Download css/custom.css from Mindykkyan/Aesthetic_Dissection_Panel: direct link, hf CLI and curl.
- Browser
- Download file 12.3 kB
-
https://huggingface.co/spaces/Mindykkyan/Aesthetic_Dissection_Panel/resolve/main/css/custom.css
- Command line
-
hf download hf://spaces/Mindykkyan/Aesthetic_Dissection_Panel/css/custom.css
-
curl -L -o custom.css https://huggingface.co/spaces/Mindykkyan/Aesthetic_Dissection_Panel/resolve/main/css/custom.css
12.3 kB
| /* ── Apple-inspired minimal aesthetic ─────────────────────────── */ | |
| :root { | |
| --bg: #f5f5f7; | |
| --surface: #ffffff; | |
| --text: #1d1d1f; | |
| --text-secondary: #6e6e73; | |
| --text-tertiary: #86868b; | |
| --border: rgba(0, 0, 0, 0.06); | |
| --shadow: 0 2px 16px rgba(0, 0, 0, 0.06); | |
| --radius: 18px; | |
| --radius-sm: 12px; | |
| --accent: #007aff; | |
| } | |
| /* page */ | |
| .gradio-container { | |
| max-width: 1080px ; | |
| margin: 0 auto ; | |
| background: var(--bg) ; | |
| font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", "Helvetica Neue", sans-serif ; | |
| color: var(--text) ; | |
| padding: 32px 24px 48px ; | |
| } | |
| /* header */ | |
| .page-top { | |
| position: relative; | |
| margin-bottom: 28px; | |
| } | |
| .page-top .block.lang-select { | |
| position: absolute ; | |
| top: 0; | |
| right: 0; | |
| width: auto ; | |
| min-width: 148px ; | |
| max-width: 168px ; | |
| margin: 0 ; | |
| padding: 0 ; | |
| z-index: 3; | |
| background: transparent ; | |
| border: none ; | |
| box-shadow: none ; | |
| } | |
| .page-top .lang-select label { | |
| display: none ; | |
| } | |
| .page-top .lang-select .wrap, | |
| .page-top .lang-select select, | |
| .page-top .lang-select input { | |
| min-height: 32px ; | |
| font-size: 13px ; | |
| } | |
| .app-header { | |
| text-align: center; | |
| margin-bottom: 0; | |
| } | |
| .app-header .eyebrow { | |
| font-size: 12px; | |
| font-weight: 600; | |
| letter-spacing: 0.06em; | |
| text-transform: uppercase; | |
| color: var(--text-tertiary); | |
| margin: 0 0 8px; | |
| } | |
| .app-header h1 { | |
| font-size: 40px; | |
| font-weight: 700; | |
| letter-spacing: -0.03em; | |
| margin: 0 0 10px; | |
| color: var(--text); | |
| } | |
| .app-header .subtitle { | |
| font-size: 17px; | |
| line-height: 1.5; | |
| color: var(--text-secondary); | |
| max-width: 560px; | |
| margin: 0 auto; | |
| } | |
| /* cards / panels */ | |
| .gr-box, .gr-panel, .block, .wrap { | |
| background: transparent ; | |
| border: none ; | |
| box-shadow: none ; | |
| } | |
| .gr-row { | |
| gap: 24px ; | |
| } | |
| .main-row--empty { | |
| flex-direction: column ; | |
| align-items: center ; | |
| justify-content: center ; | |
| gap: 0 ; | |
| } | |
| .main-row--empty > .gr-column, | |
| .main-row--empty > .block { | |
| width: 100% ; | |
| max-width: 520px ; | |
| flex: 0 0 auto ; | |
| } | |
| .main-row--empty .left-col, | |
| .main-row--empty .right-col { | |
| max-width: 520px; | |
| } | |
| .main-row--empty .dim-empty { | |
| padding: 28px 20px; | |
| } | |
| .main-row--empty .upload-hint { | |
| text-align: center; | |
| margin: -4px 0 8px ; | |
| } | |
| .main-row--ready .upload-hint { | |
| margin-top: 0 ; | |
| } | |
| .main-row--ready { | |
| flex-direction: row ; | |
| align-items: flex-start ; | |
| } | |
| .main-row--ready > .gr-column { | |
| max-width: none ; | |
| } | |
| .intro-card { | |
| background: var(--surface); | |
| border: 1px solid var(--border); | |
| border-radius: var(--radius); | |
| box-shadow: var(--shadow); | |
| padding: 22px 24px; | |
| margin: 0 0 24px; | |
| } | |
| .intro-head h2 { | |
| font-size: 18px; | |
| font-weight: 650; | |
| color: var(--text); | |
| margin: 0 0 8px; | |
| } | |
| .intro-body { | |
| font-size: 15px; | |
| line-height: 1.6; | |
| color: var(--text-secondary); | |
| margin: 0 0 12px; | |
| } | |
| .intro-list { | |
| margin: 0; | |
| padding-left: 20px; | |
| color: var(--text-secondary); | |
| } | |
| .intro-list li { | |
| margin: 6px 0; | |
| line-height: 1.5; | |
| } | |
| /* image upload — clean white card */ | |
| .gr-image { | |
| background: var(--surface) ; | |
| border: 1px solid var(--border) ; | |
| border-radius: var(--radius) ; | |
| box-shadow: var(--shadow) ; | |
| overflow: hidden ; | |
| } | |
| .gr-image .image-container, | |
| .gr-image .upload-container { | |
| background: var(--surface) ; | |
| border: none ; | |
| min-height: 420px ; | |
| } | |
| .gr-image .upload-container { | |
| border: 2px dashed rgba(0, 0, 0, 0.08) ; | |
| border-radius: var(--radius-sm) ; | |
| } | |
| .upload-hint, .upload-hint-md p { | |
| text-align: center; | |
| font-size: 13px ; | |
| color: var(--text-tertiary) ; | |
| margin-top: 8px ; | |
| } | |
| /* LAION score card */ | |
| .score-card { | |
| background: var(--surface); | |
| border: 1px solid var(--border); | |
| border-radius: var(--radius); | |
| box-shadow: var(--shadow); | |
| padding: 28px 32px; | |
| margin-bottom: 20px; | |
| } | |
| .score-card.sidebar { | |
| padding: 20px 22px; | |
| margin-top: 4px; | |
| margin-bottom: 12px; | |
| } | |
| .score-card.sidebar .score-value { | |
| font-size: 44px; | |
| } | |
| .score-card.sidebar.hue-card { | |
| padding: 16px 18px 18px; | |
| margin-bottom: 8px; | |
| } | |
| .score-card.sidebar.hue-card.empty .score-hint { | |
| padding: 16px 0 8px; | |
| } | |
| .hue-figure { | |
| margin: 8px 0 0; | |
| } | |
| .hue-figure img { | |
| display: block; | |
| width: 100%; | |
| height: auto; | |
| border-radius: var(--radius-sm); | |
| background: #fafafa; | |
| } | |
| .hue-caption { | |
| font-size: 12px; | |
| line-height: 1.4; | |
| color: var(--text-tertiary); | |
| margin: 10px 0 0; | |
| } | |
| .score-card.empty .score-hint { | |
| font-size: 15px; | |
| color: var(--text-tertiary); | |
| padding: 24px 0; | |
| } | |
| .score-label { | |
| font-size: 13px; | |
| font-weight: 600; | |
| letter-spacing: 0.04em; | |
| text-transform: uppercase; | |
| color: var(--text-tertiary); | |
| margin-bottom: 8px; | |
| } | |
| .score-value { | |
| font-size: 56px; | |
| font-weight: 700; | |
| letter-spacing: -0.04em; | |
| line-height: 1; | |
| margin-bottom: 6px; | |
| } | |
| .score-sub { | |
| font-size: 13px; | |
| color: var(--text-tertiary); | |
| margin-bottom: 16px; | |
| } | |
| .score-bar-track { | |
| height: 6px; | |
| background: #e8e8ed; | |
| border-radius: 3px; | |
| overflow: hidden; | |
| } | |
| .score-bar-fill { | |
| height: 100%; | |
| border-radius: 3px; | |
| transition: width 0.4s ease; | |
| } | |
| /* dimension panel */ | |
| .dim-panel { | |
| background: var(--surface); | |
| border: 1px solid var(--border); | |
| border-radius: var(--radius); | |
| box-shadow: var(--shadow); | |
| padding: 24px 28px; | |
| } | |
| .dim-panel-head { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: baseline; | |
| font-size: 13px; | |
| font-weight: 600; | |
| letter-spacing: 0.04em; | |
| text-transform: uppercase; | |
| color: var(--text-tertiary); | |
| margin-bottom: 12px; | |
| padding-bottom: 12px; | |
| border-bottom: 1px solid var(--border); | |
| } | |
| .dim-disclaimer { | |
| font-size: 13px; | |
| line-height: 1.45; | |
| color: var(--text-tertiary); | |
| margin: 0 0 18px; | |
| } | |
| .dim-disclaimer em { | |
| font-style: italic; | |
| } | |
| .dim-level { | |
| font-size: 11px; | |
| font-weight: 600; | |
| text-transform: uppercase; | |
| letter-spacing: 0.04em; | |
| margin-left: 6px; | |
| } | |
| .dim-source { | |
| font-weight: 500; | |
| text-transform: none; | |
| letter-spacing: 0; | |
| font-size: 12px; | |
| } | |
| .dim-row { | |
| margin-bottom: 22px; | |
| } | |
| .dim-row:last-child { | |
| margin-bottom: 0; | |
| } | |
| .dim-head { | |
| display: flex; | |
| justify-content: space-between; | |
| margin-bottom: 8px; | |
| } | |
| .dim-name { | |
| font-size: 15px; | |
| font-weight: 600; | |
| color: var(--text); | |
| } | |
| .dim-pct { | |
| font-size: 14px; | |
| font-weight: 500; | |
| color: var(--text-secondary); | |
| font-variant-numeric: tabular-nums; | |
| } | |
| .dim-bar-track { | |
| height: 8px; | |
| background: #e8e8ed; | |
| border-radius: 4px; | |
| overflow: hidden; | |
| margin-bottom: 8px; | |
| } | |
| .dim-bar-fill { | |
| height: 100%; | |
| border-radius: 4px; | |
| transition: width 0.45s cubic-bezier(0.25, 0.1, 0.25, 1); | |
| } | |
| .dim-interpret { | |
| font-size: 13px; | |
| line-height: 1.4; | |
| color: var(--text-secondary); | |
| margin: 0 0 8px; | |
| } | |
| .sub-metrics { | |
| display: grid; | |
| gap: 8px; | |
| margin-bottom: 8px; | |
| padding: 10px 12px; | |
| background: #fafafa; | |
| border-radius: 10px; | |
| border: 1px solid var(--border); | |
| } | |
| .sub-metric { | |
| display: grid; | |
| grid-template-columns: 1fr auto; | |
| gap: 4px 12px; | |
| align-items: center; | |
| } | |
| .sub-label { | |
| font-size: 12px; | |
| color: var(--text-secondary); | |
| } | |
| .sub-pct { | |
| font-size: 12px; | |
| color: var(--text-tertiary); | |
| font-variant-numeric: tabular-nums; | |
| } | |
| .sub-bar-track { | |
| grid-column: 1 / -1; | |
| height: 4px; | |
| background: #e8e8ed; | |
| border-radius: 2px; | |
| overflow: hidden; | |
| } | |
| .sub-bar-fill { | |
| height: 100%; | |
| border-radius: 2px; | |
| } | |
| .dim-rationale { | |
| font-size: 14px; | |
| line-height: 1.45; | |
| color: var(--text-secondary); | |
| margin: 0; | |
| } | |
| .dim-empty { | |
| background: var(--surface); | |
| border: 1px solid var(--border); | |
| border-radius: var(--radius); | |
| padding: 48px 24px; | |
| text-align: center; | |
| color: var(--text-tertiary); | |
| font-size: 15px; | |
| } | |
| /* diagnostic maps */ | |
| .viz-grid { | |
| display: grid; | |
| grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); | |
| gap: 16px; | |
| } | |
| .viz-card { | |
| margin: 0; | |
| background: var(--surface); | |
| border: 1px solid var(--border); | |
| border-radius: var(--radius-sm); | |
| overflow: hidden; | |
| box-shadow: var(--shadow); | |
| } | |
| .viz-card img { | |
| display: block; | |
| width: 100%; | |
| height: auto; | |
| background: #1d1d1f; | |
| } | |
| .viz-card figcaption { | |
| padding: 10px 12px 12px; | |
| } | |
| .viz-card figcaption strong { | |
| display: block; | |
| font-size: 13px; | |
| color: var(--text); | |
| margin-bottom: 2px; | |
| } | |
| .viz-card figcaption span { | |
| font-size: 12px; | |
| color: var(--text-tertiary); | |
| line-height: 1.35; | |
| } | |
| .viz-empty { | |
| text-align: center; | |
| color: var(--text-tertiary); | |
| font-size: 14px; | |
| padding: 24px; | |
| } | |
| /* depth layer separation */ | |
| .depth-panel { | |
| padding: 4px 0 8px; | |
| } | |
| .depth-note { | |
| font-size: 13px; | |
| line-height: 1.45; | |
| color: var(--text-secondary); | |
| margin: 0 0 12px; | |
| } | |
| .depth-note code { | |
| font-family: "SF Mono", "Menlo", monospace; | |
| font-size: 12px; | |
| background: #f0f0f2; | |
| padding: 2px 6px; | |
| border-radius: 6px; | |
| } | |
| .depth-stats { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 10px 18px; | |
| font-size: 13px; | |
| color: var(--text-secondary); | |
| margin-bottom: 16px; | |
| padding: 10px 14px; | |
| background: var(--surface); | |
| border: 1px solid var(--border); | |
| border-radius: var(--radius-sm); | |
| } | |
| .depth-stats strong { | |
| color: var(--text); | |
| font-variant-numeric: tabular-nums; | |
| } | |
| .depth-grid { | |
| margin-top: 4px; | |
| } | |
| /* unified visual analysis sections */ | |
| .visual-analysis { | |
| display: flex; | |
| flex-direction: column; | |
| gap: 28px; | |
| } | |
| .viz-section-title { | |
| font-size: 15px; | |
| font-weight: 600; | |
| color: var(--text); | |
| margin: 0 0 4px; | |
| letter-spacing: -0.01em; | |
| } | |
| .viz-section-desc { | |
| font-size: 13px; | |
| line-height: 1.45; | |
| color: var(--text-tertiary); | |
| margin: 0 0 14px; | |
| } | |
| .viz-section + .viz-section { | |
| padding-top: 24px; | |
| border-top: 1px solid var(--border); | |
| } | |
| .depth-error { | |
| color: #ff3b30; | |
| } | |
| /* accordion / json */ | |
| .gr-accordion { | |
| background: var(--surface) ; | |
| border: 1px solid var(--border) ; | |
| border-radius: var(--radius-sm) ; | |
| box-shadow: var(--shadow) ; | |
| margin-top: 20px ; | |
| } | |
| .gr-accordion > .label-wrap { | |
| background: transparent ; | |
| font-size: 14px ; | |
| font-weight: 600 ; | |
| color: var(--text-secondary) ; | |
| } | |
| pre.json-raw, .json-raw { | |
| background: #fafafa ; | |
| border: 1px solid var(--border) ; | |
| border-radius: 10px ; | |
| font-family: "SF Mono", "Menlo", monospace ; | |
| font-size: 12px ; | |
| color: var(--text) ; | |
| padding: 14px 16px ; | |
| margin: 0 ; | |
| white-space: pre-wrap ; | |
| word-break: break-word ; | |
| max-height: 320px; | |
| overflow: auto; | |
| } | |
| .json-panel { | |
| display: flex; | |
| flex-direction: column; | |
| gap: 10px; | |
| } | |
| .json-toolbar { | |
| display: flex; | |
| justify-content: flex-end; | |
| } | |
| .json-copy-btn { | |
| appearance: none; | |
| border: 1px solid var(--border); | |
| background: var(--surface); | |
| color: var(--text-secondary); | |
| font-size: 13px; | |
| font-weight: 600; | |
| padding: 8px 14px; | |
| border-radius: 999px; | |
| cursor: pointer; | |
| box-shadow: var(--shadow); | |
| transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease; | |
| } | |
| .json-copy-btn:hover { | |
| background: #f5f5f7; | |
| color: var(--text); | |
| border-color: rgba(0, 0, 0, 0.1); | |
| } | |
| .json-copy-btn.copied { | |
| color: #34c759; | |
| border-color: rgba(52, 199, 89, 0.35); | |
| background: rgba(52, 199, 89, 0.08); | |
| } | |
| .log-status { | |
| font-size: 13px; | |
| line-height: 1.45; | |
| margin: 0 0 12px; | |
| padding: 10px 14px; | |
| border-radius: 10px; | |
| border: 1px solid var(--border); | |
| background: #fafafa; | |
| color: var(--text-secondary); | |
| } | |
| .log-status.saved { | |
| background: rgba(52, 199, 89, 0.08); | |
| border-color: rgba(52, 199, 89, 0.25); | |
| color: #248a3d; | |
| } | |
| .log-status.warn { | |
| background: rgba(255, 59, 48, 0.06); | |
| border-color: rgba(255, 59, 48, 0.2); | |
| color: #c9342b; | |
| } | |
| textarea, .gr-text-input textarea { | |
| background: #fafafa ; | |
| border: 1px solid var(--border) ; | |
| border-radius: 10px ; | |
| font-family: "SF Mono", "Menlo", monospace ; | |
| font-size: 12px ; | |
| color: var(--text) ; | |
| } | |
| /* footer */ | |
| footer { | |
| opacity: 0.5; | |
| } | |