.operon-status-badge {
    display: inline-flex;
    align-items: center;
    color: var(--operon-text-secondary);
    background: var(--operon-muted-subtle);
    border: 1px solid var(--operon-divider);
}

.status-badge-now, .operon-status-badge--now { color: var(--operon-now); background: var(--operon-now-subtle); border-color: var(--operon-now-border); }
.status-badge-blocked, .operon-status-badge--blocked { color: var(--operon-blocked); background: var(--operon-blocked-subtle); border-color: var(--operon-blocked-border); }
.status-badge-overdue, .operon-status-badge--overdue { color: var(--operon-overdue); background: var(--operon-overdue-subtle); border-color: var(--operon-overdue-border); }
.status-badge-done, .operon-status-badge--done { color: var(--operon-done); background: var(--operon-done-subtle); border-color: var(--operon-done-border); }
.status-badge-clean, .operon-status-badge--clean { color: var(--operon-text-secondary); background: var(--operon-muted-subtle); border-color: var(--operon-divider); }

.operon-feedback--success { border-color: var(--operon-success-border); background: var(--operon-success-container); color: var(--operon-success); }
.operon-feedback--success .operon-feedback__icon { background: var(--operon-success-container-strong); color: var(--operon-success); }
.operon-feedback--error { border-color: var(--operon-error-border); background: var(--operon-error-container); color: var(--operon-overdue); }
.operon-feedback--error .operon-feedback__icon { background: var(--operon-overdue-subtle); color: var(--operon-overdue); }

.operon-project-card:hover { background-color: var(--operon-layer-2); border-color: var(--operon-now); }
.operon-cycle-actions { position: relative; }.operon-cycle-actions > summary::-webkit-details-marker { display: none; }.operon-cycle-actions__menu { position: absolute; top: calc(100% + .4rem); right: 0; z-index: 20; min-width: 11rem; overflow: hidden; background: var(--operon-layer-2); border: 1px solid var(--operon-divider); border-radius: var(--operon-radius-control); box-shadow: var(--operon-elevation-floating); }.operon-cycle-actions__menu button:hover { background: var(--operon-overdue-subtle); }
.operon-subtasks-section { border-left: 3px solid var(--operon-next); }.operon-subtask-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .75rem; padding: .75rem 0; }.operon-subtask-row input[type="text"] { border: 0; border-bottom: 1px solid transparent; padding: .35rem 0; }.operon-subtask-row input[type="text"]:focus { border-bottom-color: var(--operon-now); }.operon-subtask-remove { display: inline-grid; width: 2rem; height: 2rem; place-items: center; color: var(--operon-text-muted); border-radius: var(--operon-radius-control); }.operon-subtask-remove:hover { color: var(--operon-overdue); background: var(--operon-overdue-subtle); }.operon-subtask-remove .material-symbols-outlined { font-size: 1rem; }

.operon-summary-card { display: grid; gap: .45rem; min-height: 6.25rem; padding: 1rem; background: #0d131a; border-radius: var(--operon-radius-section); }
.operon-summary-card > span { color: var(--operon-text-muted); font-size: .68rem; font-weight: 800; letter-spacing: .08em; }
.operon-summary-card > strong { color: var(--operon-text); font-size: 1.75rem; line-height: 1.1; }
.operon-cycle-section { padding: 1.25rem; background: var(--operon-layer-1); border-radius: var(--operon-radius-section); }
.operon-count-pill { display: inline-grid; min-width: 1.55rem; height: 1.55rem; padding: 0 .4rem; place-items: center; border-radius: 999px; background: var(--operon-layer-3); color: var(--operon-text-secondary); font-size: .72rem; font-weight: 800; }
.operon-stage-timeline { position: relative; display: grid; gap: 1rem; }
.operon-stage-timeline::before { content: ''; position: absolute; top: 1.95rem; bottom: 1.95rem; left: 1.05rem; width: 2px; background: var(--operon-divider); }
.operon-stage { position: relative; display: grid; grid-template-columns: 2.1rem minmax(0, 1fr); gap: 1rem; }
.operon-stage__node { position: relative; z-index: 1; display: grid; width: 2.1rem; height: 2.1rem; place-items: center; border: 2px solid var(--operon-text-muted); border-radius: 999px; background: var(--operon-layer-1); color: var(--operon-text-muted); }
.operon-stage__node .material-symbols-outlined { font-size: 1rem; font-variation-settings: 'FILL' 1, 'wght' 700, 'GRAD' 0, 'opsz' 20; }
.operon-stage__card { min-height: 5rem; padding: 1rem; background: var(--operon-layer-2); border-radius: var(--operon-radius-card); }
.operon-stage-action { display: inline-flex; align-items: center; gap: .35rem; padding: .45rem .6rem; color: var(--operon-text-secondary); background: var(--operon-layer-3); border-radius: var(--operon-radius-control); font-size: .78rem; font-weight: 700; }.operon-stage-action:hover { color: var(--operon-text); }.operon-stage-action .material-symbols-outlined { font-size: 1rem; }.operon-stage-tasks { display: grid; gap: .5rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid var(--operon-divider); }.operon-stage-task { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .75rem; color: var(--operon-text); background: var(--operon-layer-3); border-radius: var(--operon-radius-control); }.operon-stage-task:hover { color: var(--operon-now); }.operon-stage-task strong, .operon-stage-task small { display: block; }.operon-stage-task small { margin-top: .2rem; color: var(--operon-text-muted); font-size: .68rem; font-weight: 800; }
.operon-stage-drawer-backdrop { position: fixed; inset: 0; z-index: 70; background: var(--operon-scrim); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 180ms ease, visibility 180ms ease; }.operon-stage-drawer { position: fixed; top: 0; right: 0; z-index: 80; width: min(32rem,100vw); height: 100dvh; overflow-y: auto; color: var(--operon-text); background: var(--operon-layer-1); border-left: 1px solid var(--operon-divider); box-shadow: var(--operon-elevation-drawer); transform: translateX(100%); transition: transform 210ms ease; }.operon-stage-drawer__header { display: flex; justify-content: space-between; gap: 1rem; padding: 1.25rem; border-bottom: 1px solid var(--operon-divider); }.operon-stage-drawer__header > div > span, .operon-stage-drawer__metrics span { display: block; color: var(--operon-text-muted); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.operon-stage-drawer h2 { margin: .3rem 0 0; font-size: 1.4rem; font-weight: 800; }.operon-stage-drawer__body { padding: 1.5rem; }.operon-stage-drawer__metrics { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; margin-top: 1.5rem; }.operon-stage-drawer__metrics > div { padding: .75rem; background: var(--operon-layer-2); border-radius: var(--operon-radius-control); }.operon-stage-drawer__metrics strong { display: block; margin-top: .3rem; font-size: 1.15rem; }body.operon-stage-drawer-open { overflow: hidden; }body.operon-stage-drawer-open .operon-stage-drawer-backdrop { opacity: 1; visibility: visible; pointer-events: auto; }body.operon-stage-drawer-open .operon-stage-drawer { transform: translateX(0); }
.operon-stage.is-done .operon-stage__node { color: var(--operon-bg); background: var(--operon-done); border-color: var(--operon-done); }.operon-stage.is-current .operon-stage__node { color: var(--operon-bg); background: var(--operon-now); border-color: var(--operon-now); }.operon-stage.is-delayed .operon-stage__node { color: var(--operon-bg); background: var(--operon-overdue); border-color: var(--operon-overdue); }.operon-stage.is-next .operon-stage__node { color: var(--operon-next); border-color: var(--operon-next); }.operon-stage.is-delayed .operon-stage__card { border-right: 4px solid var(--operon-overdue); background: rgba(79,209,197,.07); }.operon-stage.is-current .operon-stage__card { border-right: 4px solid var(--operon-now); background: rgba(79,209,197,.07); }.operon-stage.is-planned .operon-stage__card { opacity: .78; }.operon-stage.is-done .operon-stage__badge { color: var(--operon-done); background: var(--operon-done-subtle); border-color: var(--operon-done-border); }.operon-stage.is-delayed .operon-stage__badge { color: var(--operon-overdue); background: var(--operon-overdue-subtle); border-color: var(--operon-overdue-border); }.operon-stage.is-current .operon-stage__badge { color: var(--operon-now); background: var(--operon-now-subtle); border-color: var(--operon-now-border); }.operon-stage.is-next .operon-stage__badge { color: var(--operon-next); }
@media (max-width: 639.98px) { .operon-cycle-section { padding: 1rem; }.operon-stage { grid-template-columns: 1.75rem minmax(0,1fr); gap: .75rem; }.operon-stage__node { width: 1.75rem; height: 1.75rem; }.operon-stage-timeline::before { left: .85rem; }.operon-stage-drawer { top: auto; bottom: 0; width: 100%; height: min(78dvh, 38rem); border-top: 1px solid var(--operon-divider); border-left: 0; border-radius: .5rem .5rem 0 0; transform: translateY(100%); }.operon-stage-drawer__body { padding: 1.25rem; }.operon-stage-drawer__metrics { grid-template-columns: repeat(3,minmax(0,1fr)); }body.operon-stage-drawer-open .operon-stage-drawer { transform: translateY(0); } }

.operon-task-card {
    position: relative;
    overflow: hidden;
    background: var(--operon-layer-2) !important;
    padding: 1rem 1rem 1rem 1.25rem !important;
    border: 0 !important;
    border-radius: var(--operon-radius-card) !important;
    box-shadow: none;
    transition: transform 170ms ease, background-color 170ms ease, border-color 170ms ease;
    animation: operon-card-enter 420ms ease both;
}
.operon-task-card::before { content: ''; position: absolute; inset: 0 0 0 auto; width: 3px; background: var(--operon-next); }
.operon-task-card::after { content: 'chevron_right'; position: absolute; top: 0.9rem; right: 0.75rem; color: var(--operon-text-muted); font-family: 'Material Symbols Outlined'; font-size: 1.2rem; font-variation-settings: 'FILL' 0, 'wght' 500, 'GRAD' 0, 'opsz' 24; opacity: 0.75; transition: color 160ms ease, transform 160ms ease; }
.operon-task-card--overdue::before { background: var(--operon-overdue); }
.operon-task-card--progress::before, .operon-task-card--today::before { background: var(--operon-now); }
.operon-task-card--blocked::before { background: var(--operon-blocked); }
.operon-task-card:hover { transform: translateY(-2px); background: var(--operon-hover-layer) !important; }
.operon-task-card:hover::after { color: var(--operon-text); transform: translateX(2px); }
.operon-task-card.is-pressed { transform: translateY(0) scale(0.995); }
.operon-task-card:focus-visible { outline-offset: 2px; }
.operon-task-card h3 { color: var(--operon-text) !important; font-size: 1rem !important; font-weight: 800 !important; letter-spacing: -0.015em; line-height: 1.35 !important; }
.operon-task-card .text-on-surface-variant, .operon-task-card .text-outline { color: var(--operon-text-secondary) !important; }
.operon-task-card .border-t, .operon-task-card .border-outline-variant\/30 { border-color: var(--operon-divider) !important; }
.operon-task-card .text-white { color: var(--operon-text) !important; }
.operon-task-card--overdue::after { content: none; }
.operon-task-card--start-overdue::before { background: var(--operon-start-delayed); }

.operon-overdue-card__top { display: flex; align-items: center; min-height: 1.75rem; }
.operon-overdue-card__badge, .operon-agenda-card__badge, .operon-agenda-card__readiness, .operon-blocked-card__badge, .operon-drawer-status { display: inline-flex; align-items: center; padding: 0.32rem 0.62rem; border: 1px solid; border-radius: 999px; font-size: 0.72rem; font-weight: 800; letter-spacing: 0.025em; line-height: 1; }
.operon-overdue-card__badge { color: var(--operon-overdue); background: var(--operon-overdue-subtle); border-color: var(--operon-overdue-border); }
.operon-task-card--start-overdue .operon-overdue-card__badge { color: var(--operon-start-delayed); background: var(--operon-start-delayed-subtle); border-color: var(--operon-start-delayed-border); }
.operon-agenda-card__badge, .operon-agenda-card__readiness, .operon-drawer-status { color: var(--operon-now); background: var(--operon-now-subtle); border-color: var(--operon-now-border); }
.operon-task-card--today:has(.operon-agenda-card__readiness) .operon-agenda-card__badge { color: var(--operon-start-delayed); background: var(--operon-start-delayed-subtle); border-color: var(--operon-start-delayed-border); }
.operon-blocked-card__badge { color: var(--operon-blocked); background: var(--operon-blocked-subtle); border-color: var(--operon-blocked-border); }
.operon-overdue-card__context { color: var(--operon-text-muted) !important; font-weight: 700; }
.operon-overdue-card__title { margin: 0.5rem 0 1rem; }
.operon-overdue-card__metadata, .operon-agenda-card__metadata { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
.operon-overdue-card__metadata { margin-bottom: 1rem; }
.operon-overdue-card__metadata span, .operon-agenda-card__next-step span, .operon-agenda-card__metadata span { display: block; color: var(--operon-text-muted); font-size: 0.68rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.operon-overdue-card__metadata > div > span { display: inline-flex; align-items: center; gap: 0.3rem; }
.operon-overdue-card__metadata .material-symbols-outlined { font-size: 0.85rem; font-variation-settings: 'FILL' 0, 'wght' 500, 'GRAD' 0, 'opsz' 20; }
.operon-overdue-card__metadata strong, .operon-agenda-card__metadata strong { display: block; margin-top: 0.35rem; color: var(--operon-text); font-size: 0.875rem; }
.operon-overdue-card__footer, .operon-agenda-card__footer, .operon-blocked-card__footer { display: flex; align-items: center; justify-content: space-between; gap: 0.75rem; padding-top: 1rem; color: var(--operon-text-secondary); border-top: 1px solid var(--operon-divider); font-size: 0.875rem; font-weight: 700; }
.operon-overdue-card__footer strong { color: var(--operon-overdue); font-size: 0.82rem; white-space: nowrap; }
.operon-task-card--start-overdue .operon-overdue-card__footer strong, .operon-agenda-card__footer > strong { color: var(--operon-text); }
.operon-agenda-card__next-step { padding: 0.8rem 0.9rem; background: var(--operon-layer-3); border-left: 2px solid var(--operon-now); border-radius: var(--operon-radius-control); }
.operon-agenda-card__next-step p { margin: 0.35rem 0 0; color: var(--operon-text); font-size: 0.875rem; font-weight: 700; line-height: 1.45; }
.operon-agenda-card__owner { display: inline-flex; align-items: center; gap: 0.35rem; min-width: 0; color: var(--operon-text-secondary); font-weight: 700; }
.operon-agenda-card__owner .material-symbols-outlined { font-size: 0.9rem; }
.operon-blocked-card__reason { margin: 0.75rem 0 1rem; padding: 0.8rem 0.9rem; color: var(--operon-blocked); background: var(--operon-blocked-subtle); border-left: 2px solid var(--operon-blocked); border-radius: var(--operon-radius-control); font-size: 0.875rem; line-height: 1.45; }
.operon-blocked-card__footer > strong { color: var(--operon-blocked); font-size: 0.82rem; }

.mobile-action-footer-offset { bottom: 4rem; bottom: calc(4rem + env(safe-area-inset-bottom)); }

.operon-screen-block { position: fixed; inset: 0; z-index: 9999; display: flex; align-items: center; justify-content: center; padding: 1.5rem; background: var(--operon-scrim); backdrop-filter: blur(6px); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 160ms ease, visibility 160ms ease; }
.operon-screen-block.is-visible { opacity: 1; visibility: visible; pointer-events: auto; }
.operon-screen-block__panel { width: min(92vw, 22.5rem); padding: 1.5rem; color: var(--operon-text); background: var(--operon-shell); border: 1px solid var(--operon-now-border); border-radius: var(--operon-radius-section); box-shadow: var(--operon-elevation-panel); text-align: center; font-family: var(--operon-font-sans); }
.operon-screen-block__spinner { width: 3rem; height: 3rem; margin: 0 auto 1rem; border: 4px solid var(--operon-divider); border-top-color: var(--operon-now); border-radius: 999px; animation: operon-screen-block-spin 900ms linear infinite; }
.operon-screen-block__title { margin: 0 0 0.5rem; font-size: 1.125rem; font-weight: 800; letter-spacing: 0.02em; }
.operon-screen-block__message { margin: 0; color: var(--operon-text-secondary); font-size: 0.875rem; line-height: 1.5; }
body.operon-screen-block-active { cursor: progress; }

@keyframes operon-card-enter { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); } }
@keyframes operon-screen-block-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

@media (max-width: 767.98px) { .operon-task-card:hover { transform: none; } }
