Spaces:
Sleeping
Sleeping
| /** | |
| * EWAAST Global Styles | |
| * | |
| * Adapted from Google's appoint-ready Style.css | |
| * Using Google Sans Text font and clinical color palette | |
| */ | |
| @import url('https://fonts.googleapis.com/css2?family=Google+Sans+Text:wght@400;500;700&display=swap'); | |
| * { | |
| box-sizing: border-box; | |
| } | |
| :root { | |
| --color-primary: #0B57D0; | |
| --color-primary-light: #194FBB; | |
| --color-primary-bg: #E8F0FE; | |
| --color-secondary: #34A853; | |
| --color-warning: #EA4335; | |
| --color-thinking: #F3E8FF; | |
| --color-thinking-border: #9333EA; | |
| --color-bg: #f4f4f4; | |
| --color-card: #FFFFFF; | |
| --color-text: #333; | |
| --color-text-secondary: #5F6368; | |
| --color-border: #E9E9E9; | |
| --radius-frame: 28px; | |
| --radius-button: 100px; | |
| } | |
| html { | |
| height: 100%; | |
| } | |
| body { | |
| font-family: "Google Sans Text", "Roboto", sans-serif; | |
| line-height: 1.6; | |
| background-color: var(--color-bg); | |
| color: var(--color-text); | |
| margin: 0; | |
| display: flex; | |
| flex-direction: column; | |
| user-select: none; | |
| height: 100%; | |
| } | |
| #root { | |
| height: 100%; | |
| margin: auto; | |
| width: 100%; | |
| } | |
| .app { | |
| height: 100%; | |
| display: flex; | |
| flex-direction: column; | |
| } | |
| /* ===== HEADER ===== */ | |
| .header { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| padding: 16px 24px; | |
| background: var(--color-card); | |
| border-bottom: 1px solid var(--color-border); | |
| } | |
| .header-left { | |
| display: flex; | |
| align-items: center; | |
| gap: 16px; | |
| } | |
| .back-button { | |
| font-family: 'Google Sans Text', sans-serif; | |
| font-size: 14px; | |
| font-weight: 500; | |
| padding: 8px 16px; | |
| border-radius: var(--radius-button); | |
| cursor: pointer; | |
| background-color: transparent; | |
| border: 1px solid var(--color-border); | |
| display: flex; | |
| align-items: center; | |
| gap: 4px; | |
| transition: background-color 0.2s; | |
| } | |
| .back-button:hover { | |
| background-color: var(--color-bg); | |
| } | |
| .logo-container { | |
| display: flex; | |
| align-items: baseline; | |
| gap: 8px; | |
| } | |
| .logo { | |
| font-size: 24px; | |
| font-weight: 700; | |
| color: var(--color-primary); | |
| } | |
| .powered-by { | |
| font-size: 12px; | |
| color: var(--color-text-secondary); | |
| } | |
| .medgemma-badge { | |
| background: linear-gradient(135deg, #EA4335, #FBBC04, #34A853, #4285F4); | |
| -webkit-background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| background-clip: text; | |
| font-weight: 500; | |
| } | |
| .details-button { | |
| font-family: 'Google Sans Text', sans-serif; | |
| font-size: 14px; | |
| font-weight: 500; | |
| padding: 8px 16px; | |
| border-radius: var(--radius-button); | |
| cursor: pointer; | |
| background-color: #C2E7FF; | |
| color: #004A77; | |
| border: none; | |
| transition: background-color 0.2s; | |
| } | |
| .details-button:hover { | |
| background-color: #9DD4FF; | |
| } | |
| /* ===== PAGE CONTENT ===== */ | |
| .page { | |
| flex: 1; | |
| display: flex; | |
| flex-direction: column; | |
| width: 100%; | |
| min-height: 0; | |
| } | |
| .page-content { | |
| flex: 1; | |
| display: flex; | |
| justify-content: center; | |
| align-items: center; | |
| padding: 24px; | |
| } | |
| /* ===== FRAME (Card) ===== */ | |
| .frame { | |
| border-radius: var(--radius-frame); | |
| border: 2px solid var(--color-border); | |
| background: var(--color-card); | |
| padding: 40px 60px; | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| max-width: 800px; | |
| width: 100%; | |
| } | |
| .frame-wide { | |
| max-width: 1400px; | |
| padding: 24px; | |
| } | |
| /* ===== BUTTONS ===== */ | |
| .primary-button { | |
| font-family: 'Google Sans Text', sans-serif; | |
| font-size: 16px; | |
| font-weight: 500; | |
| padding: 14px 32px; | |
| border-radius: var(--radius-button); | |
| cursor: pointer; | |
| background-color: var(--color-primary); | |
| color: white; | |
| border: none; | |
| transition: background-color 0.2s, box-shadow 0.2s; | |
| display: flex; | |
| align-items: center; | |
| gap: 8px; | |
| } | |
| .primary-button:hover:not(:disabled) { | |
| background-color: var(--color-primary-light); | |
| box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15); | |
| } | |
| .primary-button:disabled { | |
| background-color: #aaa; | |
| cursor: not-allowed; | |
| } | |
| /* ===== THINKING BOX ===== */ | |
| .thinking-box { | |
| background-color: var(--color-thinking); | |
| border: 1px solid var(--color-thinking-border); | |
| border-radius: 12px; | |
| padding: 16px; | |
| margin: 12px 0; | |
| animation: pulse 2s infinite; | |
| } | |
| .thinking-box .label { | |
| font-size: 12px; | |
| font-weight: 500; | |
| color: var(--color-thinking-border); | |
| text-transform: uppercase; | |
| letter-spacing: 0.5px; | |
| margin-bottom: 8px; | |
| } | |
| .thinking-box .text { | |
| font-size: 14px; | |
| color: #333; | |
| line-height: 1.5; | |
| } | |
| @keyframes pulse { | |
| 0%, | |
| 100% { | |
| opacity: 1; | |
| } | |
| 50% { | |
| opacity: 0.7; | |
| } | |
| } | |
| /* ===== THREE COLUMN LAYOUT ===== */ | |
| .three-column-layout { | |
| display: grid; | |
| grid-template-columns: 1fr 1fr 1fr; | |
| gap: 24px; | |
| width: 100%; | |
| height: 100%; | |
| min-height: 0; | |
| } | |
| .column { | |
| display: flex; | |
| flex-direction: column; | |
| background: var(--color-card); | |
| border-radius: var(--radius-frame); | |
| border: 2px solid var(--color-border); | |
| overflow: hidden; | |
| } | |
| .column-header { | |
| display: flex; | |
| align-items: center; | |
| gap: 12px; | |
| padding: 16px 20px; | |
| border-bottom: 1px solid var(--color-border); | |
| } | |
| .column-header h2 { | |
| font-size: 18px; | |
| font-weight: 500; | |
| margin: 0; | |
| } | |
| .column-content { | |
| flex: 1; | |
| padding: 20px; | |
| overflow-y: auto; | |
| } | |
| /* ===== STEP INDICATORS ===== */ | |
| .step { | |
| display: flex; | |
| align-items: flex-start; | |
| gap: 12px; | |
| padding: 12px 0; | |
| } | |
| .step-icon { | |
| width: 24px; | |
| height: 24px; | |
| border-radius: 50%; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| font-size: 12px; | |
| flex-shrink: 0; | |
| } | |
| .step-icon.pending { | |
| background: var(--color-bg); | |
| color: var(--color-text-secondary); | |
| } | |
| .step-icon.active { | |
| background: var(--color-primary); | |
| color: white; | |
| animation: pulse 1.5s infinite; | |
| } | |
| .step-icon.done { | |
| background: var(--color-secondary); | |
| color: white; | |
| } | |
| .step-text { | |
| font-size: 14px; | |
| line-height: 1.5; | |
| } | |
| /* ===== REPORT CARDS ===== */ | |
| .report-card { | |
| background: var(--color-bg); | |
| border-radius: 12px; | |
| padding: 16px; | |
| margin-bottom: 12px; | |
| } | |
| .report-card.urgent { | |
| border-left: 4px solid var(--color-warning); | |
| } | |
| .report-card.mst { | |
| border-left: 4px solid var(--color-primary); | |
| } | |
| .report-card.stage { | |
| border-left: 4px solid #FBBC04; | |
| } | |
| .report-card.care { | |
| border-left: 4px solid var(--color-secondary); | |
| } | |
| .report-card-header { | |
| font-size: 12px; | |
| font-weight: 500; | |
| color: var(--color-text-secondary); | |
| text-transform: uppercase; | |
| letter-spacing: 0.5px; | |
| margin-bottom: 8px; | |
| } | |
| .report-card-value { | |
| font-size: 16px; | |
| font-weight: 500; | |
| color: var(--color-text); | |
| } | |
| /* ===== UPLOAD AREA ===== */ | |
| .upload-area { | |
| border: 2px dashed var(--color-border); | |
| border-radius: 16px; | |
| padding: 40px; | |
| text-align: center; | |
| cursor: pointer; | |
| transition: border-color 0.2s, background-color 0.2s; | |
| min-height: 200px; | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| justify-content: center; | |
| } | |
| .upload-area:hover { | |
| border-color: var(--color-primary); | |
| background-color: var(--color-primary-bg); | |
| } | |
| .upload-area.has-image { | |
| border-style: solid; | |
| border-color: var(--color-secondary); | |
| } | |
| .upload-preview { | |
| max-width: 100%; | |
| max-height: 300px; | |
| border-radius: 8px; | |
| } | |
| .upload-icon { | |
| font-size: 48px; | |
| margin-bottom: 16px; | |
| } | |
| /* ===== FOOTER ===== */ | |
| .footer { | |
| padding: 16px 24px; | |
| text-align: center; | |
| background: var(--color-card); | |
| border-top: 1px solid var(--color-border); | |
| } | |
| .footer-text { | |
| font-size: 13px; | |
| color: var(--color-text-secondary); | |
| } | |
| .footer-link { | |
| color: var(--color-primary); | |
| text-decoration: none; | |
| } | |
| .footer-link:hover { | |
| text-decoration: underline; | |
| } | |
| /* ===== DISCLAIMER ===== */ | |
| .disclaimer { | |
| background: #FFF3CD; | |
| padding: 12px 16px; | |
| border-radius: 8px; | |
| font-size: 12px; | |
| color: #856404; | |
| margin-top: 24px; | |
| text-align: center; | |
| } | |
| /* ===== RESPONSIVE ===== */ | |
| @media (max-width: 1024px) { | |
| .three-column-layout { | |
| grid-template-columns: 1fr; | |
| } | |
| .column { | |
| min-height: 300px; | |
| } | |
| .frame { | |
| padding: 24px; | |
| } | |
| } |