Spaces:
Running
Running
Download src/styles/iserv.css from Luca448/APP-Backend: direct link, hf CLI and curl.
- Browser
- Download file 9.74 kB
-
https://huggingface.co/spaces/Luca448/APP-Backend/resolve/main/src/styles/iserv.css
- Command line
-
hf download hf://spaces/Luca448/APP-Backend/src/styles/iserv.css
-
curl -L -o iserv.css https://huggingface.co/spaces/Luca448/APP-Backend/resolve/main/src/styles/iserv.css
9.74 kB
| .iserv-container { | |
| padding: 24px; | |
| padding-bottom: 32px; | |
| color: var(--text-primary); | |
| display: flex; | |
| flex-direction: column; | |
| gap: 24px; | |
| } | |
| .iserv-header { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| } | |
| .iserv-header h1 { | |
| font-size: 28px; | |
| font-weight: 700; | |
| margin: 0; | |
| background: linear-gradient(135deg, #fff, rgba(255, 255, 255, 0.7)); | |
| -webkit-background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| } | |
| .iserv-logout { | |
| background: rgba(255, 255, 255, 0.1); | |
| border: 1px solid rgba(255, 255, 255, 0.2); | |
| color: #fff; | |
| padding: 8px 16px; | |
| border-radius: 20px; | |
| cursor: pointer; | |
| font-size: 14px; | |
| transition: all 0.2s; | |
| } | |
| .iserv-logout:hover { | |
| background: rgba(255, 255, 255, 0.2); | |
| } | |
| /* Login Mask */ | |
| .iserv-login-card { | |
| background: rgba(25, 25, 30, 0.6); | |
| border: 1px solid rgba(255, 255, 255, 0.05); | |
| border-radius: 24px; | |
| padding: 32px; | |
| max-width: 400px; | |
| margin: 60px auto; | |
| box-shadow: 0 20px 40px rgba(0,0,0,0.4); | |
| backdrop-filter: blur(20px); | |
| } | |
| .iserv-login-card h2 { | |
| margin-top: 0; | |
| margin-bottom: 24px; | |
| font-size: 22px; | |
| text-align: center; | |
| } | |
| .iserv-form-group { | |
| margin-bottom: 16px; | |
| } | |
| .iserv-form-group label { | |
| display: block; | |
| font-size: 14px; | |
| color: var(--text-secondary); | |
| margin-bottom: 8px; | |
| } | |
| .iserv-form-group input { | |
| width: 100%; | |
| background: rgba(0, 0, 0, 0.2); | |
| border: 1px solid rgba(255, 255, 255, 0.1); | |
| padding: 12px 16px; | |
| border-radius: 12px; | |
| color: #fff; | |
| font-size: 16px; | |
| outline: none; | |
| transition: border-color 0.2s; | |
| } | |
| .iserv-form-group input:focus { | |
| border-color: var(--accent-primary); | |
| } | |
| .iserv-login-btn { | |
| width: 100%; | |
| background: var(--accent-primary); | |
| color: #000; | |
| border: none; | |
| padding: 14px; | |
| border-radius: 12px; | |
| font-size: 16px; | |
| font-weight: 600; | |
| cursor: pointer; | |
| margin-top: 16px; | |
| transition: transform 0.2s, opacity 0.2s; | |
| } | |
| .iserv-login-btn:active { | |
| transform: scale(0.98); | |
| } | |
| .iserv-login-btn:disabled { | |
| opacity: 0.5; | |
| cursor: not-allowed; | |
| } | |
| /* Dashboard Tasks */ | |
| .iserv-tasks-grid { | |
| display: grid; | |
| grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); | |
| gap: 16px; | |
| } | |
| .iserv-task-card { | |
| background: rgba(25, 25, 30, 0.4); | |
| border: 1px solid rgba(255, 255, 255, 0.05); | |
| border-radius: 16px; | |
| padding: 20px; | |
| transition: transform 0.2s, background 0.2s; | |
| cursor: pointer; | |
| display: flex; | |
| flex-direction: column; | |
| } | |
| .iserv-task-card:hover { | |
| transform: translateY(-4px); | |
| background: rgba(25, 25, 30, 0.6); | |
| border-color: rgba(255, 255, 255, 0.1); | |
| } | |
| .iserv-task-title { | |
| font-size: 18px; | |
| font-weight: 600; | |
| margin-bottom: 8px; | |
| color: #fff; | |
| } | |
| .iserv-task-deadline { | |
| font-size: 13px; | |
| color: var(--accent-primary); | |
| margin-bottom: 12px; | |
| display: inline-block; | |
| background: rgba(0, 255, 170, 0.1); | |
| padding: 4px 8px; | |
| border-radius: 8px; | |
| align-self: flex-start; | |
| } | |
| .iserv-task-header { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: flex-start; | |
| margin-bottom: 12px; | |
| } | |
| .iserv-task-card h3 { | |
| margin: 0; | |
| font-size: 18px; | |
| color: var(--text-primary); | |
| line-height: 1.3; | |
| flex: 1; | |
| padding-right: 12px; | |
| } | |
| .iserv-done-toggle { | |
| background: transparent; | |
| border: none; | |
| padding: 4px; | |
| margin: -4px; | |
| cursor: pointer; | |
| color: var(--text-secondary); | |
| transition: all 0.2s ease; | |
| flex-shrink: 0; | |
| } | |
| .iserv-done-toggle:hover { | |
| transform: scale(1.1); | |
| } | |
| .iserv-task-done { | |
| opacity: 0.6; | |
| background: var(--surface-bg); | |
| } | |
| .iserv-task-done h3 { | |
| text-decoration: line-through; | |
| color: var(--text-secondary); | |
| } | |
| .iserv-task-meta { | |
| font-size: 14px; | |
| color: var(--text-secondary); | |
| line-height: 1.5; | |
| display: -webkit-box; | |
| -webkit-line-clamp: 3; | |
| -webkit-box-orient: vertical; | |
| overflow: hidden; | |
| flex-grow: 1; | |
| } | |
| .iserv-task-desc-details { | |
| margin-top: 12px; | |
| background: rgba(0, 0, 0, 0.2); | |
| border-radius: 8px; | |
| padding: 8px 12px; | |
| border: 1px solid rgba(255,255,255,0.05); | |
| } | |
| .iserv-task-desc-details summary { | |
| font-size: 13px; | |
| font-weight: 500; | |
| color: var(--text-secondary); | |
| cursor: pointer; | |
| outline: none; | |
| user-select: none; | |
| transition: color 0.2s; | |
| } | |
| .iserv-task-desc-details summary:hover { | |
| color: var(--text-primary); | |
| } | |
| .iserv-task-desc { | |
| margin-top: 12px; | |
| font-size: 14px; | |
| line-height: 1.5; | |
| color: var(--text-secondary); | |
| padding-top: 8px; | |
| border-top: 1px solid rgba(255,255,255,0.1); | |
| white-space: pre-wrap; /* Keep linebreaks from IServ */ | |
| word-wrap: break-word; | |
| word-break: break-word; | |
| } | |
| .iserv-task-desc a { | |
| color: #60a5fa; /* light blue */ | |
| text-decoration: none; | |
| transition: all 0.2s; | |
| } | |
| .iserv-task-desc a:hover { | |
| color: #93c5fd; | |
| text-decoration: underline; | |
| } | |
| .iserv-attachments { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: 8px; | |
| margin-top: 12px; | |
| } | |
| .iserv-att-btn { | |
| background: rgba(255, 255, 255, 0.05); | |
| border: 1px solid rgba(255, 255, 255, 0.1); | |
| border-radius: 12px; | |
| padding: 6px 10px; | |
| font-size: 12px; | |
| color: var(--text-primary); | |
| display: flex; | |
| align-items: center; | |
| gap: 6px; | |
| cursor: pointer; | |
| transition: all 0.2s; | |
| } | |
| .iserv-att-btn:hover { | |
| background: rgba(255, 255, 255, 0.1); | |
| border-color: rgba(255, 255, 255, 0.2); | |
| } | |
| .iserv-empty { | |
| flex: 1; | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| justify-content: center; | |
| text-align: center; | |
| padding: 20px; | |
| color: var(--text-secondary); | |
| } | |
| .iserv-empty svg { | |
| width: 64px; | |
| height: 64px; | |
| opacity: 0.5; | |
| margin-bottom: 16px; | |
| } | |
| .iserv-loading { | |
| text-align: center; | |
| padding: 20px; | |
| color: var(--text-secondary); | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| justify-content: center; | |
| height: 100vh; /* Make it take full height to center vertically */ | |
| margin-top: -80px; /* Offset to perfectly center visually accounting for nav bar */ | |
| } | |
| .gemini-iserv-logo-container { | |
| position: relative; | |
| width: 240px; | |
| height: 240px; | |
| margin-bottom: 40px; | |
| display: flex; | |
| justify-content: center; | |
| align-items: center; | |
| } | |
| .gemini-glow { | |
| position: absolute; | |
| width: 100%; | |
| height: 100%; | |
| border-radius: 50%; | |
| background: conic-gradient(from 0deg, #4285f4, #9b72cb, #d96570, #f4b400, #4285f4); | |
| filter: blur(40px); /* Increased blur for larger glow */ | |
| opacity: 0.8; | |
| animation: gemini-spin 3s linear infinite, gemini-pulse 2s ease-in-out infinite alternate; | |
| } | |
| .gemini-pulse-logo { | |
| position: relative; | |
| width: 160px; | |
| height: 160px; | |
| z-index: 2; | |
| color: #fff; | |
| filter: drop-shadow(0 0 15px rgba(255,255,255,0.6)); | |
| animation: gemini-float 3s ease-in-out infinite alternate; | |
| } | |
| .gemini-loading-text { | |
| font-size: 18px; | |
| font-weight: 500; | |
| background: linear-gradient(90deg, #4285f4, #9b72cb, #d96570, #f4b400); | |
| -webkit-background-clip: text; | |
| -webkit-text-fill-color: transparent; | |
| background-size: 200% 200%; | |
| animation: gemini-text-shimmer 3s ease infinite; | |
| } | |
| @keyframes gemini-spin { | |
| 0% { transform: rotate(0deg) scale(1); } | |
| 100% { transform: rotate(360deg) scale(1); } | |
| } | |
| @keyframes gemini-pulse { | |
| 0% { transform: scale(0.9); opacity: 0.6; } | |
| 100% { transform: scale(1.2); opacity: 0.9; } | |
| } | |
| @keyframes gemini-float { | |
| 0% { transform: translateY(0px) scale(0.95); } | |
| 100% { transform: translateY(-10px) scale(1.05); } | |
| } | |
| @keyframes gemini-text-shimmer { | |
| 0% { background-position: 0% 50%; } | |
| 50% { background-position: 100% 50%; } | |
| 100% { background-position: 0% 50%; } | |
| } | |
| /* Solver Overlay */ | |
| .iserv-solver-overlay { | |
| position: absolute; | |
| top: 0; | |
| left: 0; | |
| width: 100%; | |
| height: 100%; | |
| background: rgba(18, 18, 20, 0.95); | |
| backdrop-filter: blur(4px); | |
| -webkit-backdrop-filter: blur(4px); | |
| z-index: 100; | |
| display: flex; | |
| flex-direction: column; | |
| animation: slideUp 0.3s ease-out forwards; | |
| } | |
| @keyframes slideUp { | |
| from { transform: translateY(100%); opacity: 0; } | |
| to { transform: translateY(0); opacity: 1; } | |
| } | |
| .solver-header { | |
| display: flex; | |
| justify-content: space-between; | |
| align-items: center; | |
| padding: 20px; | |
| border-bottom: 1px solid rgba(255, 255, 255, 0.1); | |
| } | |
| .solver-header h2 { | |
| font-size: 18px; | |
| font-weight: 600; | |
| margin: 0; | |
| } | |
| .solver-content { | |
| flex: 1; | |
| padding: 20px; | |
| overflow-y: auto; | |
| font-size: 15px; | |
| line-height: 1.6; | |
| color: var(--text-primary); | |
| user-select: text; | |
| -webkit-user-select: text; | |
| } | |
| .solver-content pre { | |
| background: rgba(0, 0, 0, 0.3); | |
| padding: 15px; | |
| border-radius: 8px; | |
| overflow-x: auto; | |
| border: 1px solid rgba(255, 255, 255, 0.05); | |
| } | |
| .solver-loading { | |
| display: flex; | |
| flex-direction: column; | |
| align-items: center; | |
| justify-content: center; | |
| height: 100%; | |
| color: var(--text-secondary); | |
| } | |
| .solver-empty { | |
| text-align: center; | |
| color: var(--text-secondary); | |
| margin-top: 50px; | |
| } | |
| .solver-input-area { | |
| display: flex; | |
| gap: 10px; | |
| padding: 15px 20px; | |
| border-top: 1px solid rgba(255, 255, 255, 0.1); | |
| background: rgba(0, 0, 0, 0.2); | |
| } | |
| .solver-input-area input { | |
| flex: 1; | |
| background: rgba(255, 255, 255, 0.05); | |
| border: 1px solid rgba(255, 255, 255, 0.1); | |
| border-radius: 20px; | |
| padding: 12px 20px; | |
| color: var(--text-primary); | |
| font-size: 15px; | |
| transition: border-color 0.2s; | |
| } | |
| .solver-input-area input:focus { | |
| outline: none; | |
| border-color: var(--primary-color); | |
| } | |
| .iserv-solve-btn { | |
| margin-top: 15px; | |
| width: 100%; | |
| background: linear-gradient(135deg, rgba(138, 83, 230, 0.2) 0%, rgba(138, 83, 230, 0.1) 100%); | |
| border: 1px solid rgba(138, 83, 230, 0.3); | |
| color: #c183f0; | |
| padding: 10px; | |
| border-radius: 8px; | |
| font-weight: 600; | |
| font-size: 14px; | |
| display: flex; | |
| align-items: center; | |
| justify-content: center; | |
| gap: 8px; | |
| cursor: pointer; | |
| transition: all 0.2s; | |
| } | |
| .iserv-solve-btn:hover { | |
| background: rgba(138, 83, 230, 0.3); | |
| transform: translateY(-1px); | |
| } | |
| .iserv-task-content { | |
| cursor: pointer; | |
| } | |