.pm-box{--pm: #dc2626;display: flex;flex-direction: column;align-items: center;gap: 14px}.pm-box.pm-curta{--pm: var(--success)}.pm-box.pm-longa{--pm: #2563eb}.pm-modes{width: 100%}.tm-ring{position: relative;width: min(290px,100%);aspect-ratio: 1}.tm-ring svg{width: 100%;height: 100%;transform: rotate(-90deg)}.tm-bg,.tm-fg{fill: none;stroke-width: 8}.tm-bg{stroke: var(--surface-3)}.tm-fg{stroke: var(--pm);stroke-linecap: round;stroke-dasharray: 100;stroke-dashoffset: 0;transition: stroke-dashoffset 0.3s linear,stroke 0.3s}.tm-center{position: absolute;inset: 0;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 4px;text-align: center}.tm-time{font-size: clamp(2.4rem,10vw,3.6rem);font-weight: 800;font-variant-numeric: tabular-nums;letter-spacing: -0.02em;color: var(--text)}.pm-sub{color: var(--pm);font-weight: 600;font-size: 0.92rem}.pm-task{margin: 0;min-height: 1.5em;text-align: center;color: var(--text-2);font-weight: 500;overflow-wrap: anywhere}.pm-acts{justify-content: center}.pm-box #pm-go{background: var(--pm);border-color: var(--pm);min-width: 150px}.pm-box #pm-go:hover{filter: brightness(1.08)}@media (prefers-reduced-motion: reduce){.tm-fg{transition: none}}.pm-add{display: grid;grid-template-columns: 1fr 74px auto;gap: 8px}.pm-tasks{list-style: none;margin: 10px 0 0;padding: 0;display: flex;flex-direction: column;gap: 6px}.pm-t{display: flex;align-items: center;gap: 8px;padding: 4px 4px 4px 10px;border: 1px solid var(--border);border-radius: var(--radius-sm);background: var(--surface)}.pm-t.is-on{border-color: var(--brand);box-shadow: inset 3px 0 0 var(--brand)}.pm-chk{width: 18px;height: 18px;accent-color: var(--brand);flex: none}.pm-sel{flex: 1;min-width: 0;text-align: left;background: none;border: 0;padding: 8px 4px;font: inherit;color: var(--text);cursor: pointer;overflow-wrap: anywhere}.pm-t.is-done .pm-sel{text-decoration: line-through;color: var(--text-3)}.pm-cnt{font-size: 0.85rem;color: var(--text-3)}.pm-h3{font-size: 0.9rem;margin: 16px 0 8px;color: var(--text-2)}.pm-week{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(7,1fr);gap: 6px;height: 120px;align-items: end}.pm-week li{height: 100%;display: flex;flex-direction: column;justify-content: flex-end;align-items: center;gap: 3px}.pm-bar{width: 100%;max-width: 28px;min-height: 3px;background: var(--brand);border-radius: 4px 4px 0 0;opacity: 0.85}.pm-bn{font-size: 0.75rem;font-weight: 700;color: var(--text-2);order: -1}.pm-bl{font-size: 0.72rem;color: var(--text-3)}