Spaces:
Sleeping
Sleeping
| /* ── Buttons ── */ | |
| .btn { | |
| display:inline-flex; align-items:center; justify-content:center; gap:7px; | |
| font-weight:500; border:1px solid transparent; border-radius:var(--radius); | |
| cursor:pointer; transition:all .15s ease; white-space:nowrap; | |
| font-family:'Inter',sans-serif; letter-spacing:0.01em; | |
| } | |
| .btn:disabled { opacity:.5; cursor:not-allowed; } | |
| .btn-primary { background:var(--accent); color:#fff; border-color:var(--accent); } | |
| .btn-primary:hover:not(:disabled) { background:var(--accent-hover); border-color:var(--accent-hover); } | |
| .btn-secondary { background:var(--bg-elevated); color:var(--text-secondary); border-color:var(--border); } | |
| .btn-secondary:hover:not(:disabled) { background:var(--bg-hover); border-color:var(--border-strong); } | |
| .btn-danger { background:var(--rose-light); color:var(--rose); border-color:var(--rose-border); } | |
| .btn-danger:hover:not(:disabled) { background:#f7e0e0; } | |
| .btn-ghost { background:transparent; color:var(--text-muted); border-color:transparent; } | |
| .btn-ghost:hover:not(:disabled) { background:var(--bg-hover); color:var(--text-secondary); } | |
| .btn-sm { padding:5px 11px; font-size:12.5px; } | |
| .btn-md { padding:8px 16px; font-size:13.5px; } | |
| .btn-lg { padding:11px 22px; font-size:14.5px; } | |
| /* ── Badges ── */ | |
| .badge { | |
| display:inline-flex; align-items:center; padding:2px 9px; | |
| border-radius:100px; font-size:11.5px; font-weight:600; white-space:nowrap; | |
| border:1px solid transparent; font-family:'Inter',sans-serif; | |
| } | |
| .badge-todo { background:var(--s-todo-bg); color:var(--s-todo); border-color:#ddd6c8; } | |
| .badge-inprogress { background:var(--s-progress-bg); color:var(--s-progress); border-color:var(--blue-border); } | |
| .badge-inreview { background:var(--s-review-bg); color:var(--s-review); border-color:var(--violet-border); } | |
| .badge-done { background:var(--s-done-bg); color:var(--s-done); border-color:var(--accent-border); } | |
| .badge-cancelled { background:var(--s-cancelled-bg);color:var(--s-cancelled); border-color:var(--rose-border); } | |
| .badge-low { background:var(--accent-light); color:var(--p-low); border-color:var(--accent-border); } | |
| .badge-medium { background:var(--amber-light); color:var(--p-medium); border-color:var(--amber-border); } | |
| .badge-high { background:#fef3ea; color:var(--p-high); border-color:#e8b880; } | |
| .badge-critical { background:var(--rose-light); color:var(--p-critical); border-color:var(--rose-border); } | |
| /* ── Fields ── */ | |
| .field { display:flex; flex-direction:column; gap:5px; } | |
| .field-label { font-size:12.5px; font-weight:600; color:var(--text-secondary); letter-spacing:.02em; } | |
| .field-input { | |
| background:var(--bg-elevated); border:1.5px solid var(--border); | |
| border-radius:var(--radius); color:var(--text-primary); | |
| font-size:13.5px; padding:9px 13px; transition:border-color .15s; | |
| width:100%; | |
| } | |
| .field-input:focus { outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(45,90,61,0.1); } | |
| .field-input-error { border-color:var(--rose) ; } | |
| .field-error { font-size:11.5px; color:var(--rose); } | |
| select.field-input { appearance:none; cursor:pointer; } | |
| textarea.field-input { resize:vertical; min-height:90px; line-height:1.6; } | |
| /* ── Card ── */ | |
| .card { | |
| background:var(--bg-elevated); border:1px solid var(--border); | |
| border-radius:var(--radius-lg); padding:22px; | |
| box-shadow:var(--shadow-sm); | |
| } | |
| /* ── Empty State ── */ | |
| .empty-state { display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:56px 24px;gap:10px; } | |
| .empty-icon { width:52px;height:52px;border-radius:50%;background:var(--bg-base);border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--text-faint);margin-bottom:4px; } | |
| .empty-title { font-family:'Lora',serif;font-size:16px;font-weight:600;color:var(--text-secondary); } | |
| .empty-desc { font-size:13px;color:var(--text-muted);max-width:300px;line-height:1.5; } | |
| .empty-action { margin-top:10px; } | |
| /* ── Spinner ── */ | |
| @keyframes spin { to { transform:rotate(360deg); } } | |
| .spinner { | |
| width:15px; height:15px; | |
| border:2px solid rgba(255,255,255,.35); | |
| border-top-color:white; border-radius:50%; | |
| animation:spin .7s linear infinite; | |
| display:inline-block; flex-shrink:0; | |
| } | |
| .spinner-dark { | |
| width:18px; height:18px; | |
| border:2px solid var(--border); border-top-color:var(--accent); | |
| border-radius:50%; animation:spin .7s linear infinite; display:inline-block; | |
| } | |
| /* ── Page Header ── */ | |
| .page-header { display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:24px;flex-wrap:wrap; } | |
| .page-title { font-family:'Lora',serif;font-size:22px;font-weight:700;color:var(--text-primary);letter-spacing:-.2px; } | |
| .page-subtitle { font-size:13px;color:var(--text-muted);margin-top:3px; } | |
| .page-action { flex-shrink:0; } | |
| /* ── Divider ── */ | |
| .divider { height:1px; background:var(--border); margin:16px 0; } | |