code.css 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. :root {
  2. --viewer-bg: #f6f8fb;
  3. --viewer-card: #ffffff;
  4. --viewer-border: rgba(15, 23, 42, 0.1);
  5. --viewer-accent: #2563eb;
  6. --viewer-success: #16a34a;
  7. --viewer-text: #0f172a;
  8. }
  9. .viewer-shell {
  10. display: grid;
  11. grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
  12. min-height: 100vh;
  13. background: var(--viewer-bg);
  14. color: var(--viewer-text);
  15. }
  16. .sample-sidebar {
  17. display: flex;
  18. flex-direction: column;
  19. gap: 12px;
  20. padding: 16px;
  21. border-right: 1px solid var(--viewer-border);
  22. }
  23. .sample-card {
  24. display: grid;
  25. grid-template-columns: 42px minmax(0, 1fr) auto;
  26. gap: 12px;
  27. align-items: center;
  28. padding: 12px;
  29. border: 1px solid var(--viewer-border);
  30. border-radius: 8px;
  31. background: var(--viewer-card);
  32. transition: border-color 160ms ease, transform 160ms ease;
  33. }
  34. .sample-card:hover {
  35. border-color: color-mix(in srgb, var(--viewer-accent), white 55%);
  36. transform: translateY(-1px);
  37. }
  38. .sample-card[aria-current='true'] {
  39. border-color: var(--viewer-success);
  40. box-shadow: 0 10px 28px rgba(22, 163, 74, 0.12);
  41. }
  42. .viewer-panel {
  43. min-width: 0;
  44. overflow: hidden;
  45. border: 1px solid var(--viewer-border);
  46. background: #e5e7eb;
  47. }
  48. @media (max-width: 780px) {
  49. .viewer-shell {
  50. grid-template-columns: 1fr;
  51. }
  52. .sample-sidebar {
  53. border-right: 0;
  54. border-bottom: 1px solid var(--viewer-border);
  55. }
  56. }