Harshit Ghosh
feat: implement robust security middleware, authentication system, and frontend UI components
e4fd6e0 | /* ββ Buttons βββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .btn, | |
| button { | |
| display: inline-flex; | |
| align-items: center; | |
| gap: 6px; | |
| padding: 8px 16px; | |
| border-radius: 10px; | |
| border: 1px solid var(--line); | |
| background: var(--panel); | |
| color: var(--text); | |
| font-size: 0.88rem; | |
| font-weight: 500; | |
| font-family: inherit; | |
| cursor: pointer; | |
| text-decoration: none; | |
| transition: all 0.15s; | |
| } | |
| .btn:hover, | |
| button:hover { | |
| border-color: var(--accent); | |
| background: var(--surface); | |
| } | |
| .btn-sm { | |
| padding: 5px 12px; | |
| font-size: 0.82rem; | |
| } | |
| .btn-ghost { | |
| background: transparent; | |
| } | |
| .btn-outline { | |
| background: transparent; | |
| border-color: var(--line); | |
| color: var(--muted); | |
| } | |
| .btn-outline:hover { | |
| border-color: var(--accent); | |
| color: var(--accent); | |
| } | |
| /* ββ Table βββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .table-wrap { | |
| overflow-x: auto; | |
| } | |
| table { | |
| width: 100%; | |
| border-collapse: collapse; | |
| min-width: 940px; | |
| } | |
| th, | |
| td { | |
| padding: 10px 12px; | |
| border-bottom: 1px solid var(--line); | |
| text-align: left; | |
| } | |
| th { | |
| color: var(--muted); | |
| font-weight: 600; | |
| font-size: 0.82rem; | |
| text-transform: uppercase; | |
| letter-spacing: 0.03em; | |
| } | |
| tr.row-positive { | |
| background: rgba(251, 113, 133, 0.04); | |
| } | |
| a { | |
| color: var(--accent); | |
| transition: color 0.15s; | |
| } | |
| a:hover { | |
| color: #9ec5ff; | |
| } | |
| .link-icon { | |
| display: inline-flex; | |
| } | |
| /* ββ Badges ββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .badge { | |
| display: inline-block; | |
| padding: 3px 10px; | |
| border-radius: 999px; | |
| font-size: 0.78rem; | |
| font-weight: 600; | |
| letter-spacing: 0.03em; | |
| border: 1px solid var(--line); | |
| background: rgba(255, 255, 255, 0.04); | |
| } | |
| .badge-high { | |
| border-color: #3b82f6; | |
| color: #93bbfd; | |
| } | |
| .badge-medium { | |
| border-color: #f59e0b; | |
| color: #fcd34d; | |
| } | |
| .badge-low { | |
| border-color: #6b7280; | |
| color: #9ca3af; | |
| } | |
| .badge-urgent { | |
| border-color: #ef4444; | |
| color: #fca5a5; | |
| background: rgba(239, 68, 68, 0.08); | |
| } | |
| .badge-standard { | |
| border-color: #22c55e; | |
| color: #86efac; | |
| } | |
| /* ββ Dots ββββββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .dot { | |
| display: inline-block; | |
| width: 8px; | |
| height: 8px; | |
| border-radius: 50%; | |
| margin-right: 6px; | |
| vertical-align: middle; | |
| } | |
| .dot-green { | |
| background: var(--green); | |
| box-shadow: 0 0 8px var(--green); | |
| } | |
| .dot-red { | |
| background: var(--red); | |
| box-shadow: 0 0 8px var(--red); | |
| } | |
| /* ββ Utility βββββββββββββββββββββββββββββββββββββββββββββββββ */ | |
| .mono { | |
| font-family: "Consolas", "SF Mono", "Fira Code", monospace; | |
| } | |
| .muted { | |
| color: var(--muted); | |
| } | |
| .small { | |
| font-size: 0.85rem; | |
| } | |