Spaces:
Running
Running
| :root { | |
| color-scheme: light dark; | |
| --color-primary: #1e3a5f; | |
| --color-on-primary: #ffffff; | |
| --color-secondary: #2563eb; | |
| --color-on-secondary: #ffffff; | |
| --color-accent: #a16207; | |
| --color-on-accent: #ffffff; | |
| --color-background: #f8fafc; | |
| --color-foreground: #0f172a; | |
| --color-card: #ffffff; | |
| --color-card-foreground: #0f172a; | |
| --color-muted: #e9eef5; | |
| --color-muted-foreground: #475569; | |
| --color-border: #cbd5e1; | |
| --color-ring: #2563eb; | |
| --color-error: #b42318; | |
| --color-on-error: #ffffff; | |
| --color-dark-surface: #1e3a5f; | |
| --color-on-dark-surface: #ffffff; | |
| --space-1: 0.25rem; | |
| --space-2: 0.5rem; | |
| --space-3: 0.75rem; | |
| --space-4: 1rem; | |
| --space-5: 1.5rem; | |
| --space-6: 2rem; | |
| --space-7: 3rem; | |
| --space-8: 4rem; | |
| --radius-sm: 0.25rem; | |
| --radius-md: 0.5rem; | |
| --shadow-card: 0 1rem 3rem rgb(15 23 42 / 0.08); | |
| --font-heading: Georgia, "Times New Roman", "Yu Mincho", "Songti SC", serif; | |
| --font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Arial, sans-serif; | |
| --content-width: 76rem; | |
| --motion-fast: 180ms ease; | |
| } | |
| * { | |
| box-sizing: border-box; | |
| } | |
| html { | |
| min-width: 20rem; | |
| background: var(--color-background); | |
| scroll-behavior: smooth; | |
| } | |
| body { | |
| min-height: 100vh; | |
| min-height: 100dvh; | |
| margin: 0; | |
| background: | |
| linear-gradient(90deg, transparent calc(50% - 0.5px), rgb(203 213 225 / 0.28) 50%, transparent calc(50% + 0.5px)), | |
| var(--color-background); | |
| color: var(--color-foreground); | |
| font-family: var(--font-body); | |
| font-size: 1rem; | |
| line-height: 1.65; | |
| text-rendering: optimizeLegibility; | |
| } | |
| button, | |
| select { | |
| font: inherit; | |
| } | |
| button, | |
| select, | |
| a { | |
| touch-action: manipulation; | |
| } | |
| button, | |
| select { | |
| cursor: pointer; | |
| } | |
| a { | |
| color: var(--color-secondary); | |
| text-underline-offset: 0.2em; | |
| } | |
| a:hover { | |
| text-decoration-thickness: 0.14em; | |
| } | |
| :focus-visible { | |
| outline: 3px solid var(--color-ring); | |
| outline-offset: 3px; | |
| } | |
| ::selection { | |
| background: var(--color-secondary); | |
| color: var(--color-on-secondary); | |
| } | |
| h1, | |
| h2, | |
| h3, | |
| h4, | |
| p { | |
| margin-block-start: 0; | |
| } | |
| h1, | |
| h2, | |
| h3, | |
| h4 { | |
| color: var(--color-primary); | |
| font-family: var(--font-heading); | |
| font-weight: 600; | |
| line-height: 1.08; | |
| text-wrap: balance; | |
| } | |
| .shell { | |
| width: min(100% - 2rem, var(--content-width)); | |
| margin-inline: auto; | |
| } | |
| .visually-hidden { | |
| position: absolute ; | |
| width: 1px ; | |
| height: 1px ; | |
| padding: 0 ; | |
| margin: -1px ; | |
| overflow: hidden ; | |
| clip: rect(0, 0, 0, 0) ; | |
| white-space: nowrap ; | |
| border: 0 ; | |
| } | |
| [hidden] { | |
| display: none ; | |
| } | |
| .noscript-notice { | |
| margin: 0; | |
| padding: var(--space-4); | |
| border-block-end: 1px solid var(--color-border); | |
| background: var(--color-muted); | |
| color: var(--color-foreground); | |
| text-align: center; | |
| } | |
| .skip-link { | |
| position: fixed; | |
| inset-block-start: var(--space-3); | |
| inset-inline-start: var(--space-3); | |
| z-index: 100; | |
| min-height: 44px; | |
| padding: 0.65rem 1rem; | |
| translate: 0 -200%; | |
| background: var(--color-card); | |
| border: 2px solid var(--color-primary); | |
| color: var(--color-primary); | |
| font-weight: 700; | |
| } | |
| .skip-link:focus { | |
| translate: 0; | |
| } | |
| .site-header { | |
| border-block-end: 1px solid var(--color-border); | |
| background: rgb(248 250 252 / 0.94); | |
| } | |
| .header-grid { | |
| display: grid; | |
| grid-template-columns: minmax(0, 1fr) auto; | |
| gap: var(--space-4); | |
| align-items: center; | |
| min-height: 5rem; | |
| padding-block: var(--space-3); | |
| } | |
| .brand { | |
| display: flex; | |
| min-width: 0; | |
| align-items: center; | |
| gap: var(--space-3); | |
| color: var(--color-primary); | |
| font-weight: 750; | |
| letter-spacing: -0.01em; | |
| } | |
| .brand-mark { | |
| display: grid; | |
| width: 2.75rem; | |
| height: 2.75rem; | |
| flex: 0 0 auto; | |
| place-items: center; | |
| background: var(--color-primary); | |
| color: var(--color-on-primary); | |
| font-size: 0.75rem; | |
| letter-spacing: 0.12em; | |
| } | |
| .brand-name { | |
| overflow-wrap: anywhere; | |
| } | |
| .interface-language { | |
| display: flex; | |
| align-items: center; | |
| gap: var(--space-3); | |
| } | |
| .interface-language label { | |
| color: var(--color-muted-foreground); | |
| font-size: 0.8125rem; | |
| font-weight: 700; | |
| letter-spacing: 0.06em; | |
| text-transform: uppercase; | |
| } | |
| select { | |
| min-height: 44px; | |
| max-width: 100%; | |
| border: 1px solid var(--color-border); | |
| border-radius: var(--radius-sm); | |
| background: var(--color-card); | |
| color: var(--color-card-foreground); | |
| } | |
| .interface-language select { | |
| padding: 0.5rem 2.25rem 0.5rem 0.75rem; | |
| } | |
| .hero { | |
| padding-block: clamp(3rem, 8vw, 7.5rem) clamp(3rem, 6vw, 6rem); | |
| } | |
| .eyebrow, | |
| .activity-context { | |
| color: var(--color-secondary); | |
| font-size: 0.75rem; | |
| font-weight: 800; | |
| letter-spacing: 0.14em; | |
| text-transform: uppercase; | |
| } | |
| .hero-grid { | |
| display: grid; | |
| grid-template-columns: repeat(12, minmax(0, 1fr)); | |
| gap: var(--space-4); | |
| align-items: end; | |
| } | |
| .hero-copy { | |
| grid-column: 1 / span 8; | |
| } | |
| h1 { | |
| max-width: 15ch; | |
| margin-block-end: var(--space-5); | |
| font-size: clamp(2.7rem, 7vw, 6.5rem); | |
| letter-spacing: -0.05em; | |
| } | |
| .hero-intro { | |
| max-width: 59ch; | |
| margin: 0; | |
| color: var(--color-muted-foreground); | |
| font-size: clamp(1.05rem, 2vw, 1.3rem); | |
| } | |
| .draft-notice { | |
| grid-column: 9 / -1; | |
| margin: 0; | |
| padding: var(--space-5); | |
| border-block-start: 5px solid var(--color-accent); | |
| background: var(--color-muted); | |
| } | |
| .draft-notice h2 { | |
| margin-block-end: var(--space-3); | |
| font-size: 1.45rem; | |
| } | |
| .draft-notice p:last-child { | |
| margin: 0; | |
| color: var(--color-foreground); | |
| } | |
| .notice-index, | |
| .section-number, | |
| .record-position { | |
| color: var(--color-muted-foreground); | |
| font-size: 0.75rem; | |
| font-variant-numeric: tabular-nums; | |
| font-weight: 750; | |
| letter-spacing: 0.08em; | |
| } | |
| .explorer, | |
| .results { | |
| padding-block: var(--space-7); | |
| border-block-start: 1px solid var(--color-border); | |
| } | |
| .section-heading { | |
| display: grid; | |
| grid-template-columns: repeat(12, minmax(0, 1fr)); | |
| gap: var(--space-4); | |
| margin-block-end: var(--space-6); | |
| } | |
| .section-number { | |
| grid-column: 1 / span 1; | |
| padding-block-start: 0.4rem; | |
| } | |
| .section-heading > div { | |
| grid-column: 3 / span 8; | |
| } | |
| .section-heading h2 { | |
| margin-block-end: var(--space-2); | |
| font-size: clamp(2rem, 4vw, 3.5rem); | |
| letter-spacing: -0.035em; | |
| } | |
| .section-heading p:last-child { | |
| max-width: 65ch; | |
| margin: 0; | |
| color: var(--color-muted-foreground); | |
| } | |
| .controls { | |
| display: grid; | |
| grid-template-columns: repeat(12, minmax(0, 1fr)); | |
| gap: var(--space-4); | |
| align-items: end; | |
| padding: var(--space-5); | |
| background: var(--color-dark-surface); | |
| color: var(--color-on-dark-surface); | |
| } | |
| .control-field { | |
| grid-column: span 3; | |
| min-width: 0; | |
| } | |
| .control-topic { | |
| grid-column: span 3; | |
| } | |
| .control-field label { | |
| display: block; | |
| margin-block-end: var(--space-2); | |
| font-size: 0.8125rem; | |
| font-weight: 750; | |
| } | |
| .control-field select { | |
| width: 100%; | |
| min-height: 48px; | |
| padding: 0.65rem 2.25rem 0.65rem 0.75rem; | |
| border-color: rgb(255 255 255 / 0.55); | |
| } | |
| .control-field select:disabled { | |
| cursor: wait; | |
| opacity: 0.68; | |
| } | |
| .primary-button, | |
| .secondary-button { | |
| min-height: 48px; | |
| border-radius: var(--radius-sm); | |
| font-weight: 800; | |
| transition: | |
| background-color var(--motion-fast), | |
| color var(--motion-fast), | |
| box-shadow var(--motion-fast), | |
| border-color var(--motion-fast); | |
| } | |
| .primary-button { | |
| display: flex; | |
| grid-column: span 3; | |
| align-items: center; | |
| justify-content: space-between; | |
| gap: var(--space-3); | |
| padding: 0.65rem 1rem; | |
| border: 2px solid var(--color-accent); | |
| background: var(--color-accent); | |
| color: var(--color-on-accent); | |
| text-align: start; | |
| } | |
| .primary-button:hover:not(:disabled) { | |
| border-color: var(--color-on-dark-surface); | |
| box-shadow: inset 0 0 0 1px var(--color-on-dark-surface); | |
| } | |
| .primary-button:disabled { | |
| cursor: wait; | |
| opacity: 0.6; | |
| } | |
| .button-rule { | |
| width: 2.5rem; | |
| height: 2px; | |
| flex: 0 0 auto; | |
| background: currentColor; | |
| } | |
| .results { | |
| padding-block-end: clamp(4rem, 9vw, 8rem); | |
| } | |
| #result-region { | |
| min-height: 24rem; | |
| } | |
| .state-panel { | |
| display: grid; | |
| min-height: 24rem; | |
| place-content: center; | |
| padding: var(--space-6); | |
| border: 1px solid var(--color-border); | |
| background: var(--color-card); | |
| text-align: center; | |
| } | |
| .state-panel h3 { | |
| margin-block: var(--space-5) var(--space-3); | |
| font-size: clamp(1.65rem, 3vw, 2.4rem); | |
| } | |
| .state-panel p { | |
| max-width: 48ch; | |
| margin: 0 auto; | |
| color: var(--color-muted-foreground); | |
| } | |
| .state-panel[data-state="error"] { | |
| border-block-start: 5px solid var(--color-error); | |
| } | |
| .state-lines { | |
| display: grid; | |
| width: min(18rem, 70vw); | |
| gap: var(--space-2); | |
| margin-inline: auto; | |
| } | |
| .state-lines span { | |
| display: block; | |
| height: 3px; | |
| background: var(--color-border); | |
| transform-origin: left; | |
| animation: loading-line 1.3s ease-in-out infinite alternate; | |
| } | |
| .state-lines span:nth-child(2) { | |
| width: 72%; | |
| animation-delay: 130ms; | |
| } | |
| .state-lines span:nth-child(3) { | |
| width: 43%; | |
| animation-delay: 260ms; | |
| } | |
| .state-panel:not([data-state="loading"]) .state-lines span { | |
| animation: none; | |
| } | |
| .secondary-button { | |
| margin-block-start: var(--space-5); | |
| padding: 0.65rem 1.25rem; | |
| border: 2px solid var(--color-primary); | |
| background: transparent; | |
| color: var(--color-primary); | |
| } | |
| .secondary-button:hover { | |
| background: var(--color-primary); | |
| color: var(--color-on-primary); | |
| } | |
| .activity-card { | |
| overflow: hidden; | |
| border: 1px solid var(--color-border); | |
| background: var(--color-card); | |
| box-shadow: var(--shadow-card); | |
| color: var(--color-card-foreground); | |
| } | |
| .activity-header { | |
| padding: clamp(1.5rem, 5vw, 4rem); | |
| border-block-end: 1px solid var(--color-border); | |
| } | |
| .activity-kicker-row { | |
| display: flex; | |
| justify-content: space-between; | |
| gap: var(--space-4); | |
| } | |
| .activity-card h3 { | |
| max-width: 22ch; | |
| margin-block: var(--space-4) var(--space-5); | |
| font-size: clamp(2.15rem, 5vw, 4.75rem); | |
| letter-spacing: -0.04em; | |
| overflow-wrap: anywhere; | |
| } | |
| .status-list { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: var(--space-2); | |
| } | |
| .status-badge { | |
| display: inline-flex; | |
| min-height: 2rem; | |
| align-items: center; | |
| padding: 0.25rem 0.65rem; | |
| border: 1px solid var(--color-accent); | |
| color: var(--color-accent); | |
| font-size: 0.75rem; | |
| font-weight: 800; | |
| letter-spacing: 0.04em; | |
| text-transform: uppercase; | |
| } | |
| .status-badge-review { | |
| background: var(--color-accent); | |
| color: var(--color-on-accent); | |
| } | |
| .activity-body { | |
| display: grid; | |
| grid-template-columns: repeat(12, minmax(0, 1fr)); | |
| gap: 0 var(--space-4); | |
| padding: clamp(1.5rem, 5vw, 4rem); | |
| } | |
| .activity-section { | |
| grid-column: 3 / span 8; | |
| padding-block: var(--space-6); | |
| border-block-start: 1px solid var(--color-border); | |
| } | |
| .activity-section:first-child { | |
| padding-block-start: 0; | |
| border-block-start: 0; | |
| } | |
| .activity-section h4 { | |
| margin-block-end: var(--space-4); | |
| font-size: clamp(1.4rem, 3vw, 2rem); | |
| } | |
| .activity-section p, | |
| .activity-section li { | |
| max-width: 70ch; | |
| overflow-wrap: anywhere; | |
| } | |
| .activity-section p:last-child, | |
| .activity-section ul:last-child, | |
| .activity-section ol:last-child { | |
| margin-block-end: 0; | |
| } | |
| .activity-section ul, | |
| .activity-section ol { | |
| padding-inline-start: 1.35rem; | |
| } | |
| .activity-section li + li { | |
| margin-block-start: var(--space-2); | |
| } | |
| .prompt-block, | |
| .question-block { | |
| padding-inline-start: var(--space-5); | |
| border-inline-start: 5px solid var(--color-secondary); | |
| font-size: clamp(1.05rem, 2vw, 1.2rem); | |
| } | |
| .question-block { | |
| border-color: var(--color-accent); | |
| font-family: var(--font-heading); | |
| font-size: clamp(1.25rem, 2.8vw, 1.75rem); | |
| line-height: 1.35; | |
| } | |
| .perspectives-grid { | |
| display: grid; | |
| grid-template-columns: repeat(2, minmax(0, 1fr)); | |
| gap: var(--space-4); | |
| } | |
| .perspective-card { | |
| padding: var(--space-5); | |
| border: 1px solid var(--color-border); | |
| background: var(--color-muted); | |
| } | |
| .perspective-label { | |
| margin-block-end: var(--space-3); | |
| color: var(--color-secondary); | |
| font-size: 0.75rem; | |
| font-weight: 800; | |
| letter-spacing: 0.12em; | |
| text-transform: uppercase; | |
| } | |
| .perspective-card h5 { | |
| margin-block: 0 var(--space-3); | |
| color: var(--color-primary); | |
| font-family: var(--font-heading); | |
| font-size: 1.35rem; | |
| line-height: 1.2; | |
| } | |
| .perspective-card h6 { | |
| margin-block: var(--space-5) var(--space-2); | |
| color: var(--color-foreground); | |
| font-size: 0.78rem; | |
| letter-spacing: 0.06em; | |
| text-transform: uppercase; | |
| } | |
| .tag-list { | |
| display: flex; | |
| flex-wrap: wrap; | |
| gap: var(--space-2); | |
| padding: 0 ; | |
| list-style: none; | |
| } | |
| .tag-list li { | |
| margin: 0 ; | |
| padding: 0.35rem 0.65rem; | |
| border: 1px solid var(--color-border); | |
| background: var(--color-muted); | |
| font-size: 0.875rem; | |
| } | |
| .callout { | |
| padding: var(--space-5); | |
| border-inline-start: 5px solid var(--color-accent); | |
| background: var(--color-muted); | |
| } | |
| .activity-footer { | |
| display: grid; | |
| grid-template-columns: repeat(12, minmax(0, 1fr)); | |
| gap: var(--space-4); | |
| align-items: center; | |
| padding: var(--space-5) clamp(1.5rem, 5vw, 4rem); | |
| border-block-start: 1px solid var(--color-border); | |
| background: var(--color-muted); | |
| } | |
| .activity-footer p { | |
| grid-column: 1 / span 7; | |
| margin: 0; | |
| color: var(--color-muted-foreground); | |
| font-size: 0.9rem; | |
| } | |
| .source-link { | |
| display: inline-flex; | |
| grid-column: 9 / -1; | |
| min-height: 44px; | |
| align-items: center; | |
| justify-content: space-between; | |
| gap: var(--space-3); | |
| color: var(--color-primary); | |
| font-weight: 800; | |
| } | |
| .site-footer { | |
| padding-block: var(--space-6); | |
| background: var(--color-dark-surface); | |
| color: var(--color-on-dark-surface); | |
| } | |
| .footer-grid { | |
| display: grid; | |
| grid-template-columns: repeat(12, minmax(0, 1fr)); | |
| gap: var(--space-4); | |
| align-items: center; | |
| } | |
| .footer-grid p { | |
| display: flex; | |
| grid-column: 1 / span 7; | |
| flex-wrap: wrap; | |
| gap: var(--space-2) var(--space-4); | |
| margin: 0; | |
| } | |
| .footer-grid p span:first-child { | |
| font-weight: 800; | |
| } | |
| .footer-grid nav { | |
| display: flex; | |
| grid-column: 9 / -1; | |
| flex-wrap: wrap; | |
| justify-content: flex-end; | |
| gap: var(--space-2) var(--space-4); | |
| } | |
| .footer-grid a { | |
| display: inline-flex; | |
| min-height: 44px; | |
| align-items: center; | |
| color: var(--color-on-dark-surface); | |
| } | |
| @keyframes loading-line { | |
| from { transform: scaleX(0.18); } | |
| to { transform: scaleX(1); } | |
| } | |
| @media (max-width: 64rem) { | |
| .hero-copy { | |
| grid-column: 1 / span 7; | |
| } | |
| .draft-notice { | |
| grid-column: 8 / -1; | |
| } | |
| .control-field, | |
| .control-topic, | |
| .primary-button { | |
| grid-column: span 6; | |
| } | |
| .activity-section { | |
| grid-column: 2 / span 10; | |
| } | |
| } | |
| @media (max-width: 48rem) { | |
| body { | |
| background: var(--color-background); | |
| } | |
| .header-grid, | |
| .interface-language { | |
| align-items: stretch; | |
| } | |
| .header-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| .interface-language { | |
| display: grid; | |
| grid-template-columns: 1fr; | |
| gap: var(--space-1); | |
| } | |
| .hero-grid, | |
| .section-heading, | |
| .controls, | |
| .activity-body, | |
| .activity-footer, | |
| .footer-grid { | |
| grid-template-columns: 1fr; | |
| } | |
| .hero-copy, | |
| .draft-notice, | |
| .section-number, | |
| .section-heading > div, | |
| .control-field, | |
| .control-topic, | |
| .primary-button, | |
| .activity-section, | |
| .activity-footer p, | |
| .source-link, | |
| .footer-grid p, | |
| .footer-grid nav { | |
| grid-column: 1; | |
| } | |
| .section-heading { | |
| gap: var(--space-2); | |
| } | |
| .controls { | |
| padding: var(--space-4); | |
| } | |
| .activity-kicker-row, | |
| .perspectives-grid { | |
| display: grid; | |
| grid-template-columns: 1fr; | |
| } | |
| .activity-footer { | |
| align-items: start; | |
| } | |
| .footer-grid nav { | |
| justify-content: flex-start; | |
| } | |
| } | |
| @media (max-width: 23.4375rem) { | |
| .shell { | |
| width: min(100% - 1.5rem, var(--content-width)); | |
| } | |
| h1 { | |
| font-size: clamp(2.35rem, 13vw, 3.25rem); | |
| } | |
| .brand-name { | |
| font-size: 0.95rem; | |
| } | |
| .activity-header, | |
| .activity-body, | |
| .activity-footer { | |
| padding-inline: var(--space-4); | |
| } | |
| } | |
| @media (prefers-color-scheme: dark) { | |
| :root { | |
| --color-primary: #bfdbfe; | |
| --color-on-primary: #0b1220; | |
| --color-secondary: #93c5fd; | |
| --color-on-secondary: #0b1220; | |
| --color-accent: #fbbf24; | |
| --color-on-accent: #1f2937; | |
| --color-background: #0b1220; | |
| --color-foreground: #f8fafc; | |
| --color-card: #111c2e; | |
| --color-card-foreground: #f8fafc; | |
| --color-muted: #192842; | |
| --color-muted-foreground: #cbd5e1; | |
| --color-border: #64748b; | |
| --color-ring: #fbbf24; | |
| --color-error: #fda4af; | |
| --color-on-error: #1f2937; | |
| --color-dark-surface: #14233a; | |
| --color-on-dark-surface: #f8fafc; | |
| --shadow-card: 0 1rem 3rem rgb(0 0 0 / 0.3); | |
| } | |
| .site-header { | |
| background: rgb(11 18 32 / 0.94); | |
| } | |
| .brand-mark { | |
| background: #1e3a5f; | |
| color: #ffffff; | |
| } | |
| .control-field select { | |
| border-color: var(--color-border); | |
| } | |
| } | |
| @media (prefers-reduced-motion: reduce) { | |
| html { | |
| scroll-behavior: auto; | |
| } | |
| *, | |
| *::before, | |
| *::after { | |
| scroll-behavior: auto ; | |
| transition-duration: 0.01ms ; | |
| animation-duration: 0.01ms ; | |
| animation-iteration-count: 1 ; | |
| } | |
| } | |